Hall-D Software  alpha
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
mc_tree/Particle.h
Go to the documentation of this file.
1 /*
2  * Particle.h
3  *
4  * Created on: Aug 1, 2012
5  * Author: yqiang
6  */
7 
8 #ifndef PARTICLE_H_
9 #define PARTICLE_H_
10 
11 #include <TObject.h>
12 #include <TVector3.h>
13 #include <TLorentzVector.h>
14 
15 class Particle: public TObject {
16 
17 public:
18 
20  P = 0;
21  E = 0;
22  Th = 0;
23  Ph = 0;
24  is_fiducial = false;
25  hits_cdc = 0;
26  hits_fdc = 0;
27  hits_bcal = 0;
28  hits_fcal = 0;
29  hits_upv = 0;
30  hits_tof = 0;
31  hits_rich = 0;
32  hits_cere = 0;
33  }
34  ;
36  }
37  ;
38 
39  // Data members
40  TLorentzVector p; // particle 4-momentum
41  TVector3 x; // vertex position
42  Double_t P; // Momentum
43  Double_t E; // Energy
44  Double_t Th; // Polar angle
45  Double_t Ph; // Azimuthal angle
46  Bool_t is_fiducial; // True if particle is in fiducial region based on particle type
47  Int_t hits_cdc; // Number of hits in CDC
48  Int_t hits_fdc; // Number of hits in FDC
49  Int_t hits_bcal; // Number of hits in BCAL
50  Int_t hits_fcal; // Number of hits in FCAL
51  Int_t hits_upv; // Number of hits in UPV
52  Int_t hits_tof; // Number of hits in TOF
53  Int_t hits_rich; // Number of hits in RICH
54  Int_t hits_cere; // Number of hits in Cherenkov
55 
56  // Copy constructor
57  Particle& operator=(const Particle &prt) {
58  this->p = prt.p;
59  this->x = prt.x;
60  this->P = prt.P;
61  this->E = prt.E;
62  this->Th = prt.Th;
63  this->Ph = prt.Ph;
64  this->is_fiducial = prt.is_fiducial;
65  this->hits_cdc = prt.hits_cdc;
66  this->hits_fdc = prt.hits_fdc;
67  this->hits_bcal = prt.hits_bcal;
68  this->hits_fcal = prt.hits_fcal;
69  this->hits_upv = prt.hits_upv;
70  this->hits_tof = prt.hits_tof;
71  this->hits_rich = prt.hits_rich;
72  this->hits_cere = prt.hits_cere;
73  return *this;
74  }
75 
76 private:
78  ;
79 
80 };
81 
82 #endif /* PARTICLE_H_ */
Int_t hits_cere
Int_t hits_tof
Double_t P
ClassDef(Particle, 1)
Int_t hits_upv
Int_t hits_fcal
Int_t hits_rich
TVector3 x
Particle & operator=(const Particle &prt)
Double_t E
Bool_t is_fiducial
TLorentzVector p
Int_t hits_bcal
Double_t Th
Int_t hits_cdc
Int_t hits_fdc
Double_t Ph