CbmRoot
|
#include <PairAnalysisMC.h>
Public Member Functions | |
PairAnalysisMC () | |
virtual | ~PairAnalysisMC () |
void | SetHasMC (Bool_t hasMC) |
Bool_t | HasMC () const |
Int_t | GetNMCTracks () |
Int_t | GetMotherPDG (const PairAnalysisTrack *_track) |
Int_t | GetMotherPDG (const CbmMCTrack *_track) |
Bool_t | ConnectMCEvent () |
Bool_t | IsMotherPdg (const PairAnalysisPair *pair, Int_t pdgMother) |
Bool_t | IsMotherPdg (const PairAnalysisTrack *particle1, const PairAnalysisTrack *particle2, Int_t pdgMother) |
Bool_t | IsMCTruth (const PairAnalysisPair *pair, const PairAnalysisSignalMC *signalMC) const |
Bool_t | IsMCTruth (const PairAnalysisTrack *trk, PairAnalysisSignalMC *signalMC, Int_t branch) const |
Bool_t | IsMCTruth (Int_t label, PairAnalysisSignalMC *signalMC, Int_t branch) const |
Int_t | GetMothersLabel (Int_t daughterLabel) const |
Int_t | GetPdgFromLabel (Int_t label) const |
Bool_t | CheckGEANTProcess (Int_t label, TMCProcess process) const |
Bool_t | HaveSameMother (const PairAnalysisPair *pair) const |
Int_t | GetLabelMotherWithPdg (const PairAnalysisPair *pair, Int_t pdgMother) |
Int_t | GetLabelMotherWithPdg (const PairAnalysisTrack *particle1, const PairAnalysisTrack *particle2, Int_t pdgMother) |
CbmMCTrack * | GetMCTrackFromMCEvent (Int_t label) const |
CbmMCTrack * | GetMCTrack (const PairAnalysisTrack *_track) |
CbmMCTrack * | GetMCTrackMother (const PairAnalysisTrack *_track) |
CbmMCTrack * | GetMCTrackMother (const CbmMCTrack *_track) |
Int_t | NumberOfDaughters (const CbmMCTrack *particle) |
void | GetDaughters (const TObject *mother, CbmMCTrack *&d1, CbmMCTrack *&d2) |
Bool_t | CheckParticleSource (Int_t label, PairAnalysisSignalMC::ESource source) const |
Static Public Member Functions | |
static PairAnalysisMC * | Instance () |
Private Member Functions | |
PairAnalysisMC (const PairAnalysisMC &c) | |
singleton pointer More... | |
PairAnalysisMC & | operator= (const PairAnalysisMC &c) |
Bool_t | ComparePDG (Int_t particlePDG, Int_t requiredPDG, Bool_t pdgExclusion, Bool_t checkBothCharges) const |
Bool_t | CheckIsDalitz (Int_t label, const PairAnalysisSignalMC *const signalMC) const |
Bool_t | CheckDalitzDecision (Int_t mLabel, const PairAnalysisSignalMC *const signalMC) const |
Bool_t | IsPhysicalPrimary (Int_t label, UInt_t processID) const |
Bool_t | IsSecondaryFromWeakDecay (Int_t label, UInt_t processID) const |
Bool_t | IsSecondaryFromMaterial (Int_t label, UInt_t processID) const |
Private Attributes | |
TObject * | fMCEvent |
Bool_t | fHasMC |
TClonesArray * | fMCArray |
Static Private Attributes | |
static PairAnalysisMC * | fgInstance |
Definition at line 25 of file PairAnalysisMC.h.
PairAnalysisMC::PairAnalysisMC | ( | ) |
Definition at line 47 of file PairAnalysisMC.cxx.
|
virtual |
Definition at line 56 of file PairAnalysisMC.cxx.
|
private |
singleton pointer
|
private |
Definition at line 615 of file PairAnalysisMC.cxx.
References CheckIsDalitz(), PairAnalysisSignalMC::GetDalitz(), PairAnalysisSignalMC::kIsDalitz, PairAnalysisSignalMC::kIsNotDalitz, and PairAnalysisSignalMC::kWhoCares.
Referenced by IsMCTruth().
Bool_t PairAnalysisMC::CheckGEANTProcess | ( | Int_t | label, |
TMCProcess | process | ||
) | const |
Definition at line 519 of file PairAnalysisMC.cxx.
References fMCArray, and GetMCTrackFromMCEvent().
Referenced by IsMCTruth().
|
private |
Definition at line 594 of file PairAnalysisMC.cxx.
References PairAnalysisSignalMC::GetDalitzPdg(), GetMCTrackFromMCEvent(), CbmMCTrack::GetMotherId(), and CbmMCTrack::GetPdgCode().
Referenced by CheckDalitzDecision().
Bool_t PairAnalysisMC::CheckParticleSource | ( | Int_t | label, |
PairAnalysisSignalMC::ESource | source | ||
) | const |
Definition at line 534 of file PairAnalysisMC.cxx.
References GetMCTrackFromMCEvent(), GetMothersLabel(), IsPhysicalPrimary(), IsSecondaryFromMaterial(), IsSecondaryFromWeakDecay(), PairAnalysisSignalMC::kDirect, PairAnalysisSignalMC::kDontCare, PairAnalysisSignalMC::kFinalState, PairAnalysisSignalMC::kPrimary, PairAnalysisSignalMC::kSecondary, PairAnalysisSignalMC::kSecondaryFromMaterial, and PairAnalysisSignalMC::kSecondaryFromWeakDecay.
Referenced by IsMCTruth().
|
private |
Definition at line 264 of file PairAnalysisMC.cxx.
Referenced by IsMCTruth().
Bool_t PairAnalysisMC::ConnectMCEvent | ( | ) |
Definition at line 101 of file PairAnalysisMC.cxx.
References fHasMC, fMCArray, and fMCEvent.
Referenced by AnalysisTaskMultiPairAnalysis::Init().
void PairAnalysisMC::GetDaughters | ( | const TObject * | mother, |
CbmMCTrack *& | d1, | ||
CbmMCTrack *& | d2 | ||
) |
Definition at line 214 of file PairAnalysisMC.cxx.
References fMCArray.
|
inline |
Definition at line 133 of file PairAnalysisMC.h.
References PairAnalysisPair::GetFirstDaughter(), and PairAnalysisPair::GetSecondDaughter().
Referenced by PairAnalysis::FillPairArrays(), IsMotherPdg(), and PairAnalysis::PairPreFilter().
Int_t PairAnalysisMC::GetLabelMotherWithPdg | ( | const PairAnalysisTrack * | particle1, |
const PairAnalysisTrack * | particle2, | ||
Int_t | pdgMother | ||
) |
Definition at line 186 of file PairAnalysisMC.cxx.
References fMCArray, PairAnalysisTrack::GetMCTrack(), GetMCTrackFromMCEvent(), CbmMCTrack::GetMotherId(), CbmMCTrack::GetPdgCode(), and PairAnalysisTrack::PdgCode().
CbmMCTrack * PairAnalysisMC::GetMCTrack | ( | const PairAnalysisTrack * | _track | ) |
Definition at line 124 of file PairAnalysisMC.cxx.
References PairAnalysisTrack::GetMCTrack().
Referenced by GetMCTrackMother().
CbmMCTrack * PairAnalysisMC::GetMCTrackFromMCEvent | ( | Int_t | label | ) | const |
Definition at line 75 of file PairAnalysisMC.cxx.
References fMCArray.
Referenced by CheckGEANTProcess(), CheckIsDalitz(), CheckParticleSource(), PairAnalysis::FillMCHistograms(), PairAnalysisVarManager::FillVarMCParticle(), PairAnalysisVarManager::FillVarMCTrack(), GetLabelMotherWithPdg(), GetMothersLabel(), GetPdgFromLabel(), HaveSameMother(), IsMCTruth(), IsPhysicalPrimary(), IsSecondaryFromMaterial(), and PairAnalysis::ProcessMC().
CbmMCTrack * PairAnalysisMC::GetMCTrackMother | ( | const CbmMCTrack * | _track | ) |
Definition at line 142 of file PairAnalysisMC.cxx.
References fMCArray, and CbmMCTrack::GetMotherId().
CbmMCTrack * PairAnalysisMC::GetMCTrackMother | ( | const PairAnalysisTrack * | _track | ) |
Definition at line 132 of file PairAnalysisMC.cxx.
References GetMCTrack().
Referenced by PairAnalysisVarManager::FillVarMCTrack(), GetMotherPDG(), and NumberOfDaughters().
Int_t PairAnalysisMC::GetMotherPDG | ( | const CbmMCTrack * | _track | ) |
Definition at line 164 of file PairAnalysisMC.cxx.
References GetMCTrackMother(), and CbmMCTrack::GetPdgCode().
Int_t PairAnalysisMC::GetMotherPDG | ( | const PairAnalysisTrack * | _track | ) |
Definition at line 154 of file PairAnalysisMC.cxx.
References GetMCTrackMother(), and CbmMCTrack::GetPdgCode().
Int_t PairAnalysisMC::GetMothersLabel | ( | Int_t | daughterLabel | ) | const |
Definition at line 237 of file PairAnalysisMC.cxx.
References fMCArray, and GetMCTrackFromMCEvent().
Referenced by PairAnalysisVarManager::CalculateHitTypes(), CheckParticleSource(), PairAnalysis::FillHistogramsHits(), PairAnalysis::FillMCHistograms(), PairAnalysis::FillTrackArrays(), IsMCTruth(), IsPhysicalPrimary(), IsSecondaryFromMaterial(), and IsSecondaryFromWeakDecay().
Int_t PairAnalysisMC::GetNMCTracks | ( | ) |
Definition at line 63 of file PairAnalysisMC.cxx.
References fMCArray.
Referenced by PairAnalysis::ProcessMC().
Int_t PairAnalysisMC::GetPdgFromLabel | ( | Int_t | label | ) | const |
Definition at line 251 of file PairAnalysisMC.cxx.
References fMCArray, and GetMCTrackFromMCEvent().
Referenced by IsMCTruth(), IsPhysicalPrimary(), and IsSecondaryFromWeakDecay().
|
inline |
Definition at line 32 of file PairAnalysisMC.h.
References fHasMC.
Referenced by PairAnalysisVarManager::FillVarMCParticle(), and PairAnalysisVarManager::FillVarMCTrack().
Bool_t PairAnalysisMC::HaveSameMother | ( | const PairAnalysisPair * | pair | ) | const |
Definition at line 1018 of file PairAnalysisMC.cxx.
References PairAnalysisPair::GetFirstDaughter(), PairAnalysisTrack::GetLabel(), GetMCTrackFromMCEvent(), CbmMCTrack::GetMotherId(), and PairAnalysisPair::GetSecondDaughter().
Referenced by IsMCTruth().
|
static |
Referenced by PairAnalysisVarManager::CalculateHitTypes(), PairAnalysis::FillCutStepHistograms(), PairAnalysis::FillCutStepHistogramsMC(), PairAnalysis::FillHistograms(), PairAnalysis::FillHistogramsHits(), PairAnalysis::FillMCHistograms(), PairAnalysis::FillPairArrays(), PairAnalysis::FillTrackArrays(), PairAnalysisVarManager::FillVarMCParticle(), PairAnalysisVarManager::FillVarMCTrack(), AnalysisTaskMultiPairAnalysis::Init(), PairAnalysis::PairPreFilter(), PairAnalysis::Process(), and PairAnalysis::ProcessMC().
Bool_t PairAnalysisMC::IsMCTruth | ( | const PairAnalysisPair * | pair, |
const PairAnalysisSignalMC * | signalMC | ||
) | const |
Definition at line 753 of file PairAnalysisMC.cxx.
References CheckDalitzDecision(), CheckGEANTProcess(), CheckParticleSource(), ComparePDG(), PairAnalysisSignalMC::GetCheckBothChargesGrandMothers(), PairAnalysisSignalMC::GetCheckBothChargesGreatGrandMothers(), PairAnalysisSignalMC::GetCheckBothChargesLegs(), PairAnalysisSignalMC::GetCheckBothChargesMothers(), PairAnalysisSignalMC::GetCheckGEANTProcess(), PairAnalysisPair::GetFirstDaughter(), PairAnalysisSignalMC::GetGEANTProcess(), PairAnalysisSignalMC::GetGrandMotherPDG(), PairAnalysisSignalMC::GetGrandMotherPDGexclude(), PairAnalysisSignalMC::GetGrandMotherSource(), PairAnalysisSignalMC::GetGreatGrandMotherPDG(), PairAnalysisSignalMC::GetGreatGrandMotherPDGexclude(), PairAnalysisTrack::GetLabel(), PairAnalysisSignalMC::GetLegPDG(), PairAnalysisSignalMC::GetLegPDGexclude(), PairAnalysisSignalMC::GetLegSource(), GetMCTrackFromMCEvent(), PairAnalysisSignalMC::GetMotherPDG(), PairAnalysisSignalMC::GetMotherPDGexclude(), GetMothersLabel(), PairAnalysisSignalMC::GetMotherSource(), PairAnalysisSignalMC::GetMothersRelation(), CbmMCTrack::GetPdgCode(), GetPdgFromLabel(), PairAnalysisPair::GetSecondDaughter(), HaveSameMother(), PairAnalysisSignalMC::kDifferent, PairAnalysisSignalMC::kDontCare, and PairAnalysisSignalMC::kSame.
Referenced by PairAnalysis::FillCutStepHistograms(), PairAnalysis::FillCutStepHistogramsMC(), PairAnalysis::FillHistograms(), PairAnalysis::FillTrackArrays(), IsMCTruth(), and PairAnalysis::ProcessMC().
Bool_t PairAnalysisMC::IsMCTruth | ( | const PairAnalysisTrack * | trk, |
PairAnalysisSignalMC * | signalMC, | ||
Int_t | branch | ||
) | const |
Definition at line 743 of file PairAnalysisMC.cxx.
References PairAnalysisTrack::GetLabel(), and IsMCTruth().
Bool_t PairAnalysisMC::IsMCTruth | ( | Int_t | label, |
PairAnalysisSignalMC * | signalMC, | ||
Int_t | branch | ||
) | const |
check for single particle signals
Definition at line 636 of file PairAnalysisMC.cxx.
References CheckDalitzDecision(), CheckGEANTProcess(), CheckParticleSource(), ComparePDG(), PairAnalysisSignalMC::GetCheckBothChargesGrandMothers(), PairAnalysisSignalMC::GetCheckBothChargesGreatGrandMothers(), PairAnalysisSignalMC::GetCheckBothChargesLegs(), PairAnalysisSignalMC::GetCheckBothChargesMothers(), PairAnalysisSignalMC::GetCheckGEANTProcess(), PairAnalysisSignalMC::GetGEANTProcess(), PairAnalysisSignalMC::GetGrandMotherPDG(), PairAnalysisSignalMC::GetGrandMotherPDGexclude(), PairAnalysisSignalMC::GetGrandMotherSource(), PairAnalysisSignalMC::GetGreatGrandMotherPDG(), PairAnalysisSignalMC::GetGreatGrandMotherPDGexclude(), PairAnalysisSignalMC::GetLegPDG(), PairAnalysisSignalMC::GetLegPDGexclude(), PairAnalysisSignalMC::GetLegSource(), GetMCTrackFromMCEvent(), PairAnalysisSignalMC::GetMotherPDG(), PairAnalysisSignalMC::GetMotherPDGexclude(), GetMothersLabel(), PairAnalysisSignalMC::GetMotherSource(), CbmMCTrack::GetPdgCode(), PairAnalysisSignalMC::IsSingleParticle(), and PairAnalysisSignalMC::kDontCare.
|
inline |
Definition at line 121 of file PairAnalysisMC.h.
References PairAnalysisPair::GetFirstDaughter(), and PairAnalysisPair::GetSecondDaughter().
|
inline |
Definition at line 127 of file PairAnalysisMC.h.
References GetLabelMotherWithPdg().
|
private |
Definition at line 1040 of file PairAnalysisMC.cxx.
References CbmMCTrack::GetGeantProcessId(), GetMCTrackFromMCEvent(), CbmMCTrack::GetMotherId(), GetMothersLabel(), CbmMCTrack::GetPdgCode(), GetPdgFromLabel(), kGamma, and kPi0.
Referenced by CheckParticleSource(), IsSecondaryFromMaterial(), and IsSecondaryFromWeakDecay().
|
private |
Definition at line 1124 of file PairAnalysisMC.cxx.
References GetMCTrackFromMCEvent(), GetMothersLabel(), IsPhysicalPrimary(), and IsSecondaryFromWeakDecay().
Referenced by CheckParticleSource().
|
private |
Definition at line 1107 of file PairAnalysisMC.cxx.
References GetMothersLabel(), GetPdgFromLabel(), and IsPhysicalPrimary().
Referenced by CheckParticleSource(), and IsSecondaryFromMaterial().
Int_t PairAnalysisMC::NumberOfDaughters | ( | const CbmMCTrack * | particle | ) |
Definition at line 175 of file PairAnalysisMC.cxx.
References GetMCTrackMother().
|
private |
|
inline |
Definition at line 31 of file PairAnalysisMC.h.
References fHasMC.
|
staticprivate |
Definition at line 97 of file PairAnalysisMC.h.
|
private |
Definition at line 94 of file PairAnalysisMC.h.
Referenced by ConnectMCEvent(), HasMC(), and SetHasMC().
|
private |
Definition at line 95 of file PairAnalysisMC.h.
Referenced by CheckGEANTProcess(), ConnectMCEvent(), GetDaughters(), GetLabelMotherWithPdg(), GetMCTrackFromMCEvent(), GetMCTrackMother(), GetMothersLabel(), GetNMCTracks(), and GetPdgFromLabel().
|
private |
Definition at line 93 of file PairAnalysisMC.h.
Referenced by ConnectMCEvent().