]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWG4/GammaConv/AliAODConversionParticle.h
Patch for AMORE
[u/mrichter/AliRoot.git] / PWG4 / GammaConv / AliAODConversionParticle.h
CommitLineData
e5b3650b 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
14class AliStack;
15class AliESDEvent;
16#include "TMath.h"
17#include "AliAODPhoton.h"
18
19class 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
7be31c4b 32 virtual ~AliAODConversionParticle();
e5b3650b 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