]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWG4/GammaConv/AliGammaConversionAODObject.h
adapt QA macro for different trigger options in train, reduce size of output
[u/mrichter/AliRoot.git] / PWG4 / GammaConv / AliGammaConversionAODObject.h
CommitLineData
d7d7e825 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 */
5
6////////////////////////////////////////////////
7//---------------------------------------------
04bf4381 8// Class containing the aod information from conversions
d7d7e825 9//---------------------------------------------
10////////////////////////////////////////////////
11
12// --- ROOT system ---
13#include "TObject.h"
14class AliStack;
15class AliESDEvent;
332f1f44 16#include "TMath.h"
d7d7e825 17class AliGammaConversionAODObject : public TObject {
18
19 public:
20
21 AliGammaConversionAODObject(); //constructor
22 AliGammaConversionAODObject(const AliGammaConversionAODObject & g); //copy constructor
23 AliGammaConversionAODObject & operator = (const AliGammaConversionAODObject & g); //assignment operator
24 virtual ~AliGammaConversionAODObject() {;} //virtual destructor
25
04bf4381 26
27 /* This function sets the Px */
d7d7e825 28 void SetPx(Float_t px){fPx = px;}
29
04bf4381 30 /* This function sets the Py */
d7d7e825 31 void SetPy(Float_t py){fPy = py;}
04bf4381 32
33 /* This function sets the Pz */
d7d7e825 34 void SetPz(Float_t pz){fPz = pz;}
35
04bf4381 36 ///Set E
37 void SetE(Float_t e) { fE = e; }
38
332f1f44 39 ///Set the Chi2 of reconstructed conversion gamma
40 void SetChi2(Float_t chi2) {fChi2 = chi2;}
41
04bf4381 42 /* This function sets the esd label of the first decay particle */
d7d7e825 43 void SetLabel1(Int_t label){fLabel1 = label;}
44
04bf4381 45 /* This function sets the esd label of the second decay particle */
d7d7e825 46 void SetLabel2(Int_t label){fLabel2 = label;}
47
04bf4381 48 ///Set Invariant mass
49 void SetIMass(Float_t im) { fIMass = im; }
50
51 ///Set the tag for decay meson
52 void SetTag( Bool_t tagged ) { fTagged = tagged; }
53
54 /* This function sets the MC stack */
55 void SetStack(AliStack* const stack){fMCStack=stack;}
56
57 /* This function sets the ESD event*/
58 void SetESDEvent(AliESDEvent* const esdEvent){fESDEvent = esdEvent;}
59
60 /// Get Px
61 Float_t Px() const{return fPx;}
62
63 /* This function returns the Py*/
64 Float_t Py() const{return fPy;}
65
66 /* This function returns the Pz*/
67 Float_t Pz() const{return fPz;}
68
69 //Get the Chi2 of particle
332f1f44 70 Float_t Chi2() const {return fChi2;}
71
04bf4381 72 //Get Pt of particle
332f1f44 73 Float_t Pt() const {return TMath::Sqrt(fPx* fPx + fPy*fPy);}
4dca60a8 74
04bf4381 75 ///Get Energy of particle
f1b3c58b 76 Float_t E() const {return fE;}
332f1f44 77
04bf4381 78 ///Get Phi of particle
4dca60a8 79 Float_t Phi() const { return fPx == 0.0 && fPy == 0.0 ? 0.0 : TMath::ATan2(fPy,fPx); }
d7d7e825 80
f1b3c58b 81 ///Get Invariant mass of particle
82 Float_t IMass() const { return fIMass; }
83
04bf4381 84 /* This function returns the esd label of the first electron */
85 Int_t GetLabel1() const{return fLabel1;}
86
87 /* This function returns the esd label of the second electron */
88 Int_t GetLabel2()const {return fLabel2;}
d7d7e825 89
04bf4381 90 /// Get gamma tag (if tagged as decay photon)
91 Bool_t IsTagged() const { return fTagged; }
d7d7e825 92
04bf4381 93 /* This function returns the Gamma MC label */
d7d7e825 94 Int_t GetGammaMCLabel() const;
04bf4381 95
96 /* This function returns the unique id of the electrons (if they have the same mother and unique id) */
d7d7e825 97 Int_t GetElectronUniqueID() const;
04bf4381 98
99 /* This function returns the MC label of the first electron*/
d7d7e825 100 Int_t GetElectronMCLabel1() const;
04bf4381 101
102 /* This function returns the MC label of the second electron*/
d7d7e825 103 Int_t GetElectronMCLabel2() const;
104
105 private:
106
04bf4381 107 Float_t fPx; // Px
108 Float_t fPy; // Py
109 Float_t fPz; // Pz
110 Float_t fE; // Pz
111 Int_t fLabel1; //mc label or TClonesArray index of first decay particle
112 Int_t fLabel2; //mc label or TClonesArray index of second decay particle
113 Float_t fChi2; // Chi sq of reconstructed mother
114 Float_t fIMass; //Invariant mass, 0 for photons
115 Bool_t fTagged; // Is it tagged as decay pion (only for gammas)
332f1f44 116 AliStack* fMCStack; //!transient pointer to the mc stack
117 AliESDEvent * fESDEvent; //!transient pointer to the esdevent
d7d7e825 118
04bf4381 119 ClassDef(AliGammaConversionAODObject,2)
d7d7e825 120};
121
122
123#endif
124
125
126