]>
Commit | Line | Data |
---|---|---|
c683985a | 1 | #ifndef ALIUTILITYMUONANCESTOR_H |
2 | #define ALIUTILITYMUONANCESTOR_H | |
3 | ||
4 | /* $Id: AliUtilityMuonAncestor.h 47782 2011-02-24 18:37:31Z martinez $ */ | |
5 | ||
6 | // | |
7 | // MC utility to classify single muons | |
8 | // | |
9 | // Author: Diego Stocco | |
10 | // | |
11 | ||
12 | #include "TObject.h" | |
13 | ||
14 | class AliMCEvent; | |
15 | class AliVParticle; | |
16 | ||
17 | class AliUtilityMuonAncestor : public TObject { | |
18 | public: | |
19 | ||
20 | AliUtilityMuonAncestor(); | |
21 | ~AliUtilityMuonAncestor(); | |
22 | AliUtilityMuonAncestor(const AliUtilityMuonAncestor& obj); | |
23 | AliUtilityMuonAncestor& operator=(const AliUtilityMuonAncestor& obj); | |
24 | ||
25 | enum { | |
26 | kIsID, | |
27 | kIsMuon, | |
28 | kIsSecondary, | |
29 | kHasLightParent, | |
30 | kHasCharmParent, | |
31 | kHasBeautyParent, | |
32 | kHasQuarkoniumParent | |
33 | }; | |
34 | ||
35 | Bool_t CheckAncestor ( AliVParticle* track, const AliMCEvent* mcEvent, Int_t ancestorPdg, Bool_t matchAbsPdg = kTRUE ); | |
36 | ||
37 | Int_t GetAncestor ( AliVParticle* track, const AliMCEvent* mcEvent ); | |
38 | Int_t GetAncestorPdg ( AliVParticle* track, const AliMCEvent* mcEvent ); | |
39 | Long64_t GetMask ( AliVParticle* track, const AliMCEvent* mcEvent ); | |
40 | ||
41 | Bool_t IsBeautyMu ( AliVParticle* track, const AliMCEvent* mcEvent ); | |
42 | Bool_t IsBJpsiMu ( AliVParticle* track, const AliMCEvent* mcEvent ); | |
43 | Bool_t IsCharmMu ( AliVParticle* track, const AliMCEvent* mcEvent ); | |
44 | Bool_t IsDecayMu ( AliVParticle* track, const AliMCEvent* mcEvent ); | |
45 | Bool_t IsHadron ( AliVParticle* track, const AliMCEvent* mcEvent ); | |
46 | Bool_t IsMuon ( AliVParticle* track, const AliMCEvent* mcEvent ); | |
47 | Bool_t IsQuarkoniumMu ( AliVParticle* track, const AliMCEvent* mcEvent ); | |
48 | Bool_t IsSecondaryMu ( AliVParticle* track, const AliMCEvent* mcEvent ); | |
49 | Bool_t IsUnidentified ( AliVParticle* track, const AliMCEvent* mcEvent ); | |
50 | Bool_t IsWBosonMu ( AliVParticle* track, const AliMCEvent* mcEvent ); | |
51 | Bool_t IsZBosonMu ( AliVParticle* track, const AliMCEvent* mcEvent ); | |
52 | ||
53 | ||
54 | private: | |
55 | Bool_t BuildAncestor ( AliVParticle* track, const AliMCEvent* mcEvent ); | |
56 | ||
57 | ||
58 | ||
59 | Double_t fPx; ///< Particle px | |
60 | Double_t fPy; ///< Particle py | |
61 | Double_t fPz; ///< Particle pz | |
62 | Long64_t fMask; ///< Mask | |
63 | Int_t fAncestor; ///< Ancestor position in stack | |
64 | ||
65 | ClassDef(AliUtilityMuonAncestor, 0); | |
66 | }; | |
67 | ||
68 | #endif |