]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWG4/GammaConv/AliAODConversionParticle.h
Fix Coverity 10974-82
[u/mrichter/AliRoot.git] / PWG4 / GammaConv / AliAODConversionParticle.h
1 #ifndef ALIAODCONVERSIONPARTICLE_H
2 #define ALIAODCONVERSIONPARTICLE_H
3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4  * See cxx source for full Copyright notice     */
5
6 ////////////////////////////////////////////////
7 //--------------------------------------------- 
8 // Class containing the aod information from conversions
9 //---------------------------------------------
10 ////////////////////////////////////////////////
11
12 // --- ROOT system ---
13
14 class AliStack;
15 class AliESDEvent;
16 #include "TMath.h"
17 #include "AliAODPhoton.h"
18
19 class AliAODConversionParticle : public AliAODPhoton {
20
21  public: 
22
23   //Constructors
24   AliAODConversionParticle();    
25   AliAODConversionParticle(TLorentzVector& momentum); 
26   //Copy Constructor
27   AliAODConversionParticle(const AliAODConversionParticle & g);           
28   //assignment operator
29   AliAODConversionParticle & operator = (const AliAODConversionParticle & g);
30
31   //Destructor
32   virtual ~AliAODConversionParticle();
33
34   ///Set the Chi2 of reconstructed conversion gamma
35   void SetChi2(Float_t chi2) {fChi2 = chi2;}
36
37   ///Set track or MC labels
38   void SetLabel1(Int_t label){fLabel[0] = label;}
39   void SetLabel2(Int_t label){fLabel[1] = label;}
40   void SetTrackLabels(Int_t label1, Int_t label2){fLabel[0] = label1; fLabel[1] = label2;}
41   
42   ///Set Invariant mass
43   void SetIMass(Float_t im) { fIMass = im; }
44
45   ///Set the tag for decay meson
46   //void SetTag( Bool_t tagged ) { fTagged = tagged; }
47
48   ///Set pointer to MC stack
49   void SetStack(AliStack* const stack){fMCStack=stack;}
50   
51   ///Set pointer to ESD event
52   void SetESDEvent(AliESDEvent* const esdEvent){fESDEvent = esdEvent;}
53
54   //Get the Chi2 of particle
55   Float_t Chi2() const {return fChi2;}
56
57   ///Get Invariant mass of particle
58   Float_t IMass() const { return fIMass; }
59
60   ///Get track or MC labels
61   Int_t GetLabel1() const{return fLabel[0];}
62   Int_t GetLabel2() const {return fLabel[1];}
63   Int_t GetTrackLabel(Int_t i) const {return fLabel[i];}
64   void  GetTrackLabels(Int_t * labels) { labels[0] = fLabel[0]; labels[1] = fLabel[1];} 
65
66
67   
68   Int_t GetMCLabel(Int_t Label) const;
69
70
71   /* This function returns the Gamma MC label */
72   Int_t GetGammaMCLabel() const;
73   
74   /* This function returns the unique id  of the electrons (if they have the same mother and unique id) */
75   Int_t GetElectronUniqueID() const;
76   Int_t GetElectronUniqueID(Int_t mcLabel1, Int_t mcLabel2) const;
77   
78   /// Get MC labels of electrons
79   Int_t GetElectronMCLabel1() const;
80   Int_t GetElectronMCLabel2() const;
81
82  private:
83
84   Int_t fLabel[2];
85   Float_t fChi2; // Chi sq of reconstructed mother
86   Float_t fIMass; //Invariant mass, 0 for photons
87   //Bool_t fTagged; // Is it tagged as decay pion (only for gammas)
88   AliStack* fMCStack; //!transient pointer to the mc stack
89   AliESDEvent * fESDEvent; //!transient pointer to the esdevent
90
91   ClassDef(AliAODConversionParticle,1)
92 };
93
94
95 #endif
96
97
98