1 #ifndef ALIGAMMACONVERSIONAODOBJECT_H
2 #define ALIGAMMACONVERSIONAODOBJECT_H
3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
6 ////////////////////////////////////////////////
7 //---------------------------------------------
8 // Class containing the aod information from conversions
9 //---------------------------------------------
10 ////////////////////////////////////////////////
12 // --- ROOT system ---
17 class AliGammaConversionAODObject : public TObject {
21 AliGammaConversionAODObject(); //constructor
22 AliGammaConversionAODObject(const AliGammaConversionAODObject & g); //copy constructor
23 AliGammaConversionAODObject & operator = (const AliGammaConversionAODObject & g); //assignment operator
24 virtual ~AliGammaConversionAODObject() {;} //virtual destructor
27 /* This function sets the Px */
28 void SetPx(Float_t px){fPx = px;}
30 /* This function sets the Py */
31 void SetPy(Float_t py){fPy = py;}
33 /* This function sets the Pz */
34 void SetPz(Float_t pz){fPz = pz;}
37 void SetE(Float_t e) { fE = e; }
39 ///Set the Chi2 of reconstructed conversion gamma
40 void SetChi2(Float_t chi2) {fChi2 = chi2;}
42 /* This function sets the esd label of the first decay particle */
43 void SetLabel1(Int_t label){fLabel1 = label;}
45 /* This function sets the esd label of the second decay particle */
46 void SetLabel2(Int_t label){fLabel2 = label;}
49 void SetIMass(Float_t im) { fIMass = im; }
51 ///Set the tag for decay meson
52 void SetTag( Bool_t tagged ) { fTagged = tagged; }
54 /* This function sets the MC stack */
55 void SetStack(AliStack* const stack){fMCStack=stack;}
57 /* This function sets the ESD event*/
58 void SetESDEvent(AliESDEvent* const esdEvent){fESDEvent = esdEvent;}
61 Float_t Px() const{return fPx;}
63 /* This function returns the Py*/
64 Float_t Py() const{return fPy;}
66 /* This function returns the Pz*/
67 Float_t Pz() const{return fPz;}
69 //Get the Chi2 of particle
70 Float_t Chi2() const {return fChi2;}
73 Float_t Pt() const {return TMath::Sqrt(fPx* fPx + fPy*fPy);}
75 ///Get Energy of particle
76 Float_t E() const {return TMath::Sqrt(fPx*fPx + fPy*fPy + fPz*fPz);}
78 ///Get Phi of particle
79 Float_t Phi() const { return fPx == 0.0 && fPy == 0.0 ? 0.0 : TMath::ATan2(fPy,fPx); }
81 /* This function returns the esd label of the first electron */
82 Int_t GetLabel1() const{return fLabel1;}
84 /* This function returns the esd label of the second electron */
85 Int_t GetLabel2()const {return fLabel2;}
87 /// Get gamma tag (if tagged as decay photon)
88 Bool_t IsTagged() const { return fTagged; }
90 /* This function returns the Gamma MC label */
91 Int_t GetGammaMCLabel() const;
93 /* This function returns the unique id of the electrons (if they have the same mother and unique id) */
94 Int_t GetElectronUniqueID() const;
96 /* This function returns the MC label of the first electron*/
97 Int_t GetElectronMCLabel1() const;
99 /* This function returns the MC label of the second electron*/
100 Int_t GetElectronMCLabel2() const;
108 Int_t fLabel1; //mc label or TClonesArray index of first decay particle
109 Int_t fLabel2; //mc label or TClonesArray index of second decay particle
110 Float_t fChi2; // Chi sq of reconstructed mother
111 Float_t fIMass; //Invariant mass, 0 for photons
112 Bool_t fTagged; // Is it tagged as decay pion (only for gammas)
113 AliStack* fMCStack; //!transient pointer to the mc stack
114 AliESDEvent * fESDEvent; //!transient pointer to the esdevent
116 ClassDef(AliGammaConversionAODObject,2)