#ifndef ALIUTILITYMUONANCESTOR_H
#define ALIUTILITYMUONANCESTOR_H
#include "TObject.h"
class AliMCEvent;
class AliVParticle;
class AliUtilityMuonAncestor : public TObject {
public:
AliUtilityMuonAncestor();
~AliUtilityMuonAncestor();
AliUtilityMuonAncestor(const AliUtilityMuonAncestor& obj);
AliUtilityMuonAncestor& operator=(const AliUtilityMuonAncestor& obj);
enum {
kIsID,
kIsMuon,
kIsSecondary,
kHasLightParent,
kHasCharmParent,
kHasBeautyParent,
kHasQuarkoniumParent
};
Bool_t CheckAncestor ( AliVParticle* track, const AliMCEvent* mcEvent, Int_t ancestorPdg, Bool_t matchAbsPdg = kTRUE );
Int_t GetAncestor ( AliVParticle* track, const AliMCEvent* mcEvent );
Int_t GetAncestorPdg ( AliVParticle* track, const AliMCEvent* mcEvent );
Long64_t GetMask ( AliVParticle* track, const AliMCEvent* mcEvent );
Bool_t IsBeautyMu ( AliVParticle* track, const AliMCEvent* mcEvent );
Bool_t IsBJpsiMu ( AliVParticle* track, const AliMCEvent* mcEvent );
Bool_t IsCharmMu ( AliVParticle* track, const AliMCEvent* mcEvent );
Bool_t IsDecayMu ( AliVParticle* track, const AliMCEvent* mcEvent );
Bool_t IsHadron ( AliVParticle* track, const AliMCEvent* mcEvent );
Bool_t IsMuon ( AliVParticle* track, const AliMCEvent* mcEvent );
Bool_t IsQuarkoniumMu ( AliVParticle* track, const AliMCEvent* mcEvent );
Bool_t IsSecondaryMu ( AliVParticle* track, const AliMCEvent* mcEvent );
Bool_t IsUnidentified ( AliVParticle* track, const AliMCEvent* mcEvent );
Bool_t IsWBosonMu ( AliVParticle* track, const AliMCEvent* mcEvent );
Bool_t IsZBosonMu ( AliVParticle* track, const AliMCEvent* mcEvent );
private:
Bool_t BuildAncestor ( AliVParticle* track, const AliMCEvent* mcEvent );
Double_t fPx;
Double_t fPy;
Double_t fPz;
Long64_t fMask;
Int_t fAncestor;
ClassDef(AliUtilityMuonAncestor, 0);
};
#endif
AliUtilityMuonAncestor.h:1 AliUtilityMuonAncestor.h:2 AliUtilityMuonAncestor.h:3 AliUtilityMuonAncestor.h:4 AliUtilityMuonAncestor.h:5 AliUtilityMuonAncestor.h:6 AliUtilityMuonAncestor.h:7 AliUtilityMuonAncestor.h:8 AliUtilityMuonAncestor.h:9 AliUtilityMuonAncestor.h:10 AliUtilityMuonAncestor.h:11 AliUtilityMuonAncestor.h:12 AliUtilityMuonAncestor.h:13 AliUtilityMuonAncestor.h:14 AliUtilityMuonAncestor.h:15 AliUtilityMuonAncestor.h:16 AliUtilityMuonAncestor.h:17 AliUtilityMuonAncestor.h:18 AliUtilityMuonAncestor.h:19 AliUtilityMuonAncestor.h:20 AliUtilityMuonAncestor.h:21 AliUtilityMuonAncestor.h:22 AliUtilityMuonAncestor.h:23 AliUtilityMuonAncestor.h:24 AliUtilityMuonAncestor.h:25 AliUtilityMuonAncestor.h:26 AliUtilityMuonAncestor.h:27 AliUtilityMuonAncestor.h:28 AliUtilityMuonAncestor.h:29 AliUtilityMuonAncestor.h:30 AliUtilityMuonAncestor.h:31 AliUtilityMuonAncestor.h:32 AliUtilityMuonAncestor.h:33 AliUtilityMuonAncestor.h:34 AliUtilityMuonAncestor.h:35 AliUtilityMuonAncestor.h:36 AliUtilityMuonAncestor.h:37 AliUtilityMuonAncestor.h:38 AliUtilityMuonAncestor.h:39 AliUtilityMuonAncestor.h:40 AliUtilityMuonAncestor.h:41 AliUtilityMuonAncestor.h:42 AliUtilityMuonAncestor.h:43 AliUtilityMuonAncestor.h:44 AliUtilityMuonAncestor.h:45 AliUtilityMuonAncestor.h:46 AliUtilityMuonAncestor.h:47 AliUtilityMuonAncestor.h:48 AliUtilityMuonAncestor.h:49 AliUtilityMuonAncestor.h:50 AliUtilityMuonAncestor.h:51 AliUtilityMuonAncestor.h:52 AliUtilityMuonAncestor.h:53 AliUtilityMuonAncestor.h:54 AliUtilityMuonAncestor.h:55 AliUtilityMuonAncestor.h:56 AliUtilityMuonAncestor.h:57 AliUtilityMuonAncestor.h:58 AliUtilityMuonAncestor.h:59 AliUtilityMuonAncestor.h:60 AliUtilityMuonAncestor.h:61 AliUtilityMuonAncestor.h:62 AliUtilityMuonAncestor.h:63 AliUtilityMuonAncestor.h:64 AliUtilityMuonAncestor.h:65 AliUtilityMuonAncestor.h:66 AliUtilityMuonAncestor.h:67 AliUtilityMuonAncestor.h:68