1#ifndef PAIRANALYSISMC_H
2#define PAIRANALYSISMC_H
15#include <TMCProcess.h>
19#include <TClonesArray.h>
88 Bool_t
ComparePDG(Int_t particlePDG, Int_t requiredPDG, Bool_t pdgExclusion, Bool_t checkBothCharges)
const;
104 return IsMotherPdg(pair->GetFirstDaughter(), pair->GetSecondDaughter(), pdgMother);
PairAnalysisMC(const PairAnalysisMC &c)
singleton pointer
Int_t NumberOfDaughters(const CbmMCTrack *particle)
virtual ~PairAnalysisMC()
void GetDaughters(const TObject *mother, CbmMCTrack *&d1, CbmMCTrack *&d2)
Int_t GetLabelMotherWithPdg(const PairAnalysisPair *pair, Int_t pdgMother)
Bool_t IsSecondaryFromMaterial(Int_t label, UInt_t processID) const
CbmMCTrack * GetMCTrack(const PairAnalysisTrack *_track)
Bool_t IsPhysicalPrimary(Int_t label, UInt_t processID) const
void SetHasMC(Bool_t hasMC)
Bool_t HaveSameMother(const PairAnalysisPair *pair) const
static PairAnalysisMC * Instance()
Bool_t CheckParticleSource(Int_t label, PairAnalysisSignalMC::ESource source) const
Int_t GetPdgFromLabel(Int_t label) const
PairAnalysisMC & operator=(const PairAnalysisMC &c)
Bool_t IsMotherPdg(const PairAnalysisPair *pair, Int_t pdgMother)
Bool_t ComparePDG(Int_t particlePDG, Int_t requiredPDG, Bool_t pdgExclusion, Bool_t checkBothCharges) const
Int_t GetMothersLabel(Int_t daughterLabel) const
Bool_t CheckDalitzDecision(Int_t mLabel, const PairAnalysisSignalMC *const signalMC) const
Bool_t CheckGEANTProcess(Int_t label, TMCProcess process) const
Bool_t IsSecondaryFromWeakDecay(Int_t label, UInt_t processID) const
CbmMCTrack * GetMCTrackMother(const PairAnalysisTrack *_track)
static PairAnalysisMC * fgInstance
Bool_t CheckIsDalitz(Int_t label, const PairAnalysisSignalMC *const signalMC) const
CbmMCTrack * GetMCTrackFromMCEvent(Int_t label) const
Int_t GetMotherPDG(const PairAnalysisTrack *_track)
Bool_t IsMCTruth(const PairAnalysisPair *pair, const PairAnalysisSignalMC *signalMC) const