Belle II Software  release-08-01-10
TRGGRLMatch.h
1 /**************************************************************************
2  * basf2 (Belle II Analysis Software Framework) *
3  * Author: The Belle II Collaboration *
4  * *
5  * See git log for contributors and copyright holders. *
6  * This file is licensed under LGPL-3.0, see LICENSE.md. *
7  **************************************************************************/
8 
9 #include "framework/datastore/StoreArray.h"
10 #include "trg/cdc/TRGCDCTrack.h"
11 #include "trg/ecl/dataobjects/TRGECLCluster.h"
12 
13 namespace Belle2 {
24  class TRGGRLMatch {
25 
30  public:
31 
33  TRGGRLMatch(TRGCDCTrack* track, TRGECLCluster* cluster, int flag);
34 
36  virtual ~TRGGRLMatch();
37 
38  public:// Selectors
39 
41  void dump(void);
42 
44  double getCenter_x(void) const {return _center_x;};
46  double getCenter_y(void) const {return _center_y;};
48  double getCenter_z(void) const {return _center_z;};
50  double getCenter_r(void) const {return _r;};
52  double getCenter_phi(void) const {return _phi;};
54  double getCenter_pt(void) const {return _pt;};
56  double getCenter_z0(void) const {return _z0;};
58  double getCenter_pz(void) const {return _pz;};
60  double getCenter_slope(void) const {return _slope;};
61 
63  double getCluster_x(void) const {return _cluster_x;};
65  double getCluster_y(void) const {return _cluster_y;};
67  double getCluster_z(void) const {return _cluster_z;};
69  double getCluster_e(void) const {return _cluster_e;};
71  double getCluster_R(void) const {return _R;};
73  double getCluster_D(void) const {return _D;};
75  double getP_rescaled(void) const {return _re_scaled_p;};
77  double getP(void) const {return _p;};
78 
80  double getDr(void) const {return _dr;};
82  double getDz(void) const {return _dz;};
84  double getPoe(void) const {return _poe;};
85 
87  int getMatch3D(void) const {return _match3D;};
88 
89 
90  private:
91 
94 
97 
99  int _match3D;
100 
102  double _center_x;
104  double _center_y;
106  double _center_z;
108  double _r;
110  double _phi;
112  double _pt;
114  double _p;
116  double _pz;
118  double _z0;
120  double _slope;
121 
123  double _cluster_x;
125  double _cluster_y;
127  double _cluster_z;
129  double _cluster_e;
131  double _R;
133  double _D;
135  double _re_scaled_p;
136 
138  double _dr;
140  double _dz;
142  double _ex_x;
144  double _ex_y;
146  double _ex_z;
148  double _poe;
149 
151  void calculate(void);
152  };
153 
154 
155 
157 } // namespace Belle2
158 
A class to represent a reconstructed charged track in TRGCDC.
Definition: TRGCDCTrack.h:38
Example Detector.
Definition: TRGECLCluster.h:24
A class to represent a matching candidate in TRGGRL A matching candidate consists of a TRGCDCTrack an...
Definition: TRGGRLMatch.h:24
double _phi
phi of the track center
Definition: TRGGRLMatch.h:110
int _match3D
flag tells 3D information is valid or not
Definition: TRGGRLMatch.h:99
double _cluster_y
y position of cluster
Definition: TRGGRLMatch.h:125
double getCenter_z0(void) const
a function returns z0 of track helix
Definition: TRGGRLMatch.h:56
double _center_y
center (y) of track helix
Definition: TRGGRLMatch.h:104
double _cluster_z
z position of cluster
Definition: TRGGRLMatch.h:127
double getCluster_R(void) const
a function returns transverse distance of the cluster to IP
Definition: TRGGRLMatch.h:71
TRGECLCluster * _cluster
a pointer to the TRGECLCluster of the matching candidate
Definition: TRGGRLMatch.h:96
int getMatch3D(void) const
a function retuens flag tells 3D information is valid or not
Definition: TRGGRLMatch.h:87
double _slope
z slope (polar angle) of track
Definition: TRGGRLMatch.h:120
double _cluster_e
deposit energy of cluster
Definition: TRGGRLMatch.h:129
double getCluster_D(void) const
a function returns distance of the cluster to IP
Definition: TRGGRLMatch.h:73
double getP(void) const
a function returns 3-momentum of a track
Definition: TRGGRLMatch.h:77
double getCenter_pt(void) const
a function returns pt of the track
Definition: TRGGRLMatch.h:54
double _cluster_x
x position of cluster
Definition: TRGGRLMatch.h:123
double _re_scaled_p
track momentum scaled with 3D information from cluster
Definition: TRGGRLMatch.h:135
double _r
radius of track
Definition: TRGGRLMatch.h:108
double _D
distance of clusterto IP
Definition: TRGGRLMatch.h:133
double _ex_y
y position of the cluster calculated by matching
Definition: TRGGRLMatch.h:144
double getCluster_x(void) const
a function returns x position of the cluster
Definition: TRGGRLMatch.h:63
double _center_x
center (x) of track helix
Definition: TRGGRLMatch.h:102
double _dr
dr between track and cluster
Definition: TRGGRLMatch.h:138
double _center_z
center (z) of track helix
Definition: TRGGRLMatch.h:106
double _ex_z
z position of the cluster calculated by matching
Definition: TRGGRLMatch.h:146
double getCenter_phi(void) const
a function returns phi of the track center
Definition: TRGGRLMatch.h:52
double getP_rescaled(void) const
a function returns 3-momentum of a track scaled by cluster 3D position
Definition: TRGGRLMatch.h:75
double _poe
calculated p over e
Definition: TRGGRLMatch.h:148
double getCenter_slope(void) const
a function returns z slope (polar angle) of track helix
Definition: TRGGRLMatch.h:60
double getCenter_z(void) const
a function returns center (z) of track helix
Definition: TRGGRLMatch.h:48
double _R
transverse distance of cluster to IP
Definition: TRGGRLMatch.h:131
double getCluster_e(void) const
a function returns deposit energy of the cluster
Definition: TRGGRLMatch.h:69
TRGCDCTrack * _track
a pointer to the TRGCDCTrack of the matching candidate
Definition: TRGGRLMatch.h:87
double _z0
z0 of track
Definition: TRGGRLMatch.h:118
double _pz
pz of track
Definition: TRGGRLMatch.h:116
double getCluster_z(void) const
a function returns z position of the cluster
Definition: TRGGRLMatch.h:67
double getDz(void) const
a function returns calculated dz of the matching candidate
Definition: TRGGRLMatch.h:82
double getCenter_y(void) const
a function returns center (y) of track helix
Definition: TRGGRLMatch.h:46
double _dz
dz between track and cluster
Definition: TRGGRLMatch.h:140
double getCenter_x(void) const
a function returns center (x) of track helix
Definition: TRGGRLMatch.h:44
double _ex_x
x position of the cluster calculated by matching
Definition: TRGGRLMatch.h:142
double getCluster_y(void) const
a function returns y position of the cluster
Definition: TRGGRLMatch.h:65
double _pt
pt of track
Definition: TRGGRLMatch.h:112
double getDr(void) const
a function returns calculated dr of the matching candidate
Definition: TRGGRLMatch.h:80
double getCenter_r(void) const
a function returns radius of the track to IP
Definition: TRGGRLMatch.h:50
double getPoe(void) const
a function returns calculated p over E of the matching candidate
Definition: TRGGRLMatch.h:84
double _p
p of track
Definition: TRGGRLMatch.h:114
double getCenter_pz(void) const
a function returns pz of track helix
Definition: TRGGRLMatch.h:58
void calculate(void)
a function to execute calculation of matching
Definition: TRGGRLMatch.cc:38
virtual ~TRGGRLMatch()
Destructor.
Definition: TRGGRLMatch.cc:33
void dump(void)
Unpacker of the TRGGRLMatch.
Definition: TRGGRLMatch.cc:87
TRGGRLMatch(TRGCDCTrack *track, TRGECLCluster *cluster, int flag)
public member functions of TRGGRLMatch class Private variables can be called by the corresponding get...
Definition: TRGGRLMatch.cc:25
Abstract base class for different kinds of events.