BmnRoot 26.10.0-18-g4e3414f9
Software framework of the BM@N experiment
Loading...
Searching...
No Matches
BmnPidQa Class Reference

#include <BmnPidQa.h>

Inheritance diagram for BmnPidQa:
Collaboration diagram for BmnPidQa:

Public Member Functions

 BmnPidQa ()
 Constructor.
 BmnPidQa (TString name, TString storageName="canvStorage")
 Constructor.
virtual ~BmnPidQa ()
 Destructor.
virtual InitStatus Init ()
 Derived from FairTask.
virtual void Exec (Option_t *opt)
 Derived from FairTask.
virtual void Finish ()
 Derived from FairTask.
TParticlePDG * GetParticleExtend (Int_t pdgCode)
void SetOutputDir (const std::string &dir)
void SetPRange (Int_t bins, Int_t min, Int_t max)
void SetOnlyPrimes (const Bool_t prime)
Bool_t GetOnlyPrimes () const

Private Member Functions

Int_t EnumToPdg (PidParticles part)
void ReadDataBranches ()
 Read data branches from input data files.
void CreateH1 (const string &name, const string &xTitle, const string &yTitle, Int_t nofBins, Double_t minBin, Double_t maxBin)
void CreateH2 (const string &name, const string &xTitle, const string &yTitle, const string &zTitle, Int_t nofBinsX, Double_t minBinX, Double_t maxBinX, Int_t nofBinsY, Double_t minBinY, Double_t maxBinY)
void CreateTrackHitsHistogram (const string &detName)
void ReadEventHeader ()
void CreateHistograms ()
void ProcessGlobal ()
string GetParticleName (Double_t mass)
void MassTablePrint ()
void PidStatisticsPrint400 ()
void PidStatisticsPrint700 ()
 BmnPidQa (const BmnPidQa &)
BmnPidQa & operator= (const BmnPidQa &)

Private Attributes

TString fOutName
TString fStorageName
BmnHistManager * fHM
string fOutputDir
Bool_t fPrimes
Double_t fPRangeMin
Double_t fPRangeMax
Int_t fPRangeBins
Double_t fBetaRangeMin
Double_t fBetaRangeMax
Int_t fBetaRangeBins
Double_t fVelocRangeMin
Double_t fVelocRangeMax
Int_t fVelocRangeBins
Double_t fTimeRangeMin
Double_t fTimeRangeMax
Int_t fTimeRangeBins
Double_t fMassRangeMin
Double_t fMassRangeMax
Int_t fMassRangeBins
Double_t fNHitsRangeMin
Double_t fNHitsRangeMax
Int_t fNHitsRangeBins
TDatabasePDG * db = nullptr
vector< TParticlePDG * > fParticles
unordered_map< Double_t, string > fMassTable
unordered_map< string, vector< Int_t > > fPidStatistics400
unordered_map< string, vector< Int_t > > fPidStatistics700
TClonesArray * fMCTracks
TClonesArray * fGlobalTracks
TClonesArray * fGlobalTrackMatches
TClonesArray * fTof400Hits
TClonesArray * fTof700Hits

Detailed Description

Definition at line 29 of file BmnPidQa.h.

Constructor & Destructor Documentation

◆ BmnPidQa() [1/3]

BmnPidQa::BmnPidQa ( )
inline

Definition at line 35 of file BmnPidQa.h.

Referenced by BmnPidQa(), and operator=().

Here is the caller graph for this function:

◆ BmnPidQa() [2/3]

BmnPidQa::BmnPidQa ( TString name,
TString storageName = "canvStorage" )

◆ ~BmnPidQa()

BmnPidQa::~BmnPidQa ( )
virtual

Definition at line 96 of file BmnPidQa.cxx.

References fHM.

◆ BmnPidQa() [3/3]

BmnPidQa::BmnPidQa ( const BmnPidQa & )
private

References BmnPidQa().

Here is the call graph for this function:

Member Function Documentation

◆ CreateH1()

void BmnPidQa::CreateH1 ( const string & name,
const string & xTitle,
const string & yTitle,
Int_t nofBins,
Double_t minBin,
Double_t maxBin )
private

Definition at line 153 of file BmnPidQa.cxx.

References fHM.

Referenced by CreateHistograms(), and CreateTrackHitsHistogram().

Here is the caller graph for this function:

◆ CreateH2()

void BmnPidQa::CreateH2 ( const string & name,
const string & xTitle,
const string & yTitle,
const string & zTitle,
Int_t nofBinsX,
Double_t minBinX,
Double_t maxBinX,
Int_t nofBinsY,
Double_t minBinY,
Double_t maxBinY )
private

Definition at line 164 of file BmnPidQa.cxx.

References fHM.

Referenced by CreateHistograms().

Here is the caller graph for this function:

◆ CreateHistograms()

void BmnPidQa::CreateHistograms ( )
private

Definition at line 193 of file BmnPidQa.cxx.

References CreateH1(), CreateH2(), fBetaRangeBins, fBetaRangeMax, fBetaRangeMin, fMassRangeBins, fMassRangeMax, fMassRangeMin, fMassTable, fNHitsRangeBins, fNHitsRangeMax, fNHitsRangeMin, fPRangeBins, fPRangeMax, fPRangeMin, fTimeRangeBins, fTimeRangeMax, fTimeRangeMin, fVelocRangeBins, fVelocRangeMax, and fVelocRangeMin.

Referenced by Init().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ CreateTrackHitsHistogram()

void BmnPidQa::CreateTrackHitsHistogram ( const string & detName)
private

Definition at line 180 of file BmnPidQa.cxx.

References CreateH1(), i, max(), and min().

Here is the call graph for this function:

◆ EnumToPdg()

Int_t BmnPidQa::EnumToPdg ( PidParticles part)
private

Definition at line 535 of file BmnPidQa.cxx.

Referenced by BmnPidQa(), and ProcessGlobal().

Here is the caller graph for this function:

◆ Exec()

void BmnPidQa::Exec ( Option_t * opt)
virtual

Definition at line 110 of file BmnPidQa.cxx.

References ProcessGlobal().

Here is the call graph for this function:

◆ Finish()

void BmnPidQa::Finish ( )
virtual

Definition at line 115 of file BmnPidQa.cxx.

References BmnSimulationReport::Create(), fHM, fMassTable, fOutName, fOutputDir, fPrimes, fStorageName, MassTablePrint(), PidStatisticsPrint400(), PidStatisticsPrint700(), and BmnSimulationReport::SetOnlyPrimes().

Here is the call graph for this function:

◆ GetOnlyPrimes()

Bool_t BmnPidQa::GetOnlyPrimes ( ) const
inline

Definition at line 75 of file BmnPidQa.h.

References fPrimes.

Referenced by ProcessGlobal().

Here is the caller graph for this function:

◆ GetParticleExtend()

TParticlePDG * BmnPidQa::GetParticleExtend ( Int_t pdgCode)

Definition at line 560 of file BmnPidQa.cxx.

References db, and fParticles.

Referenced by ProcessGlobal().

Here is the caller graph for this function:

◆ GetParticleName()

string BmnPidQa::GetParticleName ( Double_t mass)
private

Definition at line 570 of file BmnPidQa.cxx.

References fMassTable.

Referenced by ProcessGlobal().

Here is the caller graph for this function:

◆ Init()

InitStatus BmnPidQa::Init ( )
virtual

Definition at line 102 of file BmnPidQa.cxx.

References CreateHistograms(), fHM, and ReadDataBranches().

Here is the call graph for this function:

◆ MassTablePrint()

void BmnPidQa::MassTablePrint ( )
private

Definition at line 580 of file BmnPidQa.cxx.

References fMassTable.

Referenced by Finish().

Here is the caller graph for this function:

◆ operator=()

BmnPidQa & BmnPidQa::operator= ( const BmnPidQa & )
private

References BmnPidQa().

Here is the call graph for this function:

◆ PidStatisticsPrint400()

void BmnPidQa::PidStatisticsPrint400 ( )
private

Definition at line 586 of file BmnPidQa.cxx.

References fPidStatistics400.

Referenced by Finish().

Here is the caller graph for this function:

◆ PidStatisticsPrint700()

void BmnPidQa::PidStatisticsPrint700 ( )
private

Definition at line 591 of file BmnPidQa.cxx.

References fPidStatistics700.

Referenced by Finish().

Here is the caller graph for this function:

◆ ProcessGlobal()

void BmnPidQa::ProcessGlobal ( )
private

Definition at line 347 of file BmnPidQa.cxx.

References EnumToPdg(), fGlobalTrackMatches, fGlobalTracks, fHM, fMassTable, fMCTracks, fPidStatistics400, fPidStatistics700, fTof400Hits, fTof700Hits, BmnLink::GetIndex(), BmnHit::GetLength(), BmnGlobalTrack::GetMass2(), BmnMatch::GetMatchedLink(), CbmMCTrack::GetMotherId(), BmnTrack::GetNHits(), BmnMatch::GetNofLinks(), GetOnlyPrimes(), BmnTrack::GetP(), GetParticleExtend(), GetParticleName(), CbmMCTrack::GetPdgCode(), BmnGlobalTrack::GetTof1HitIndex(), BmnGlobalTrack::GetTof2HitIndex(), and TParticlePDG::Mass().

Referenced by Exec().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ ReadDataBranches()

void BmnPidQa::ReadDataBranches ( )
private

Definition at line 134 of file BmnPidQa.cxx.

References fGlobalTrackMatches, fGlobalTracks, fMCTracks, fTof400Hits, and fTof700Hits.

Referenced by Init().

Here is the caller graph for this function:

◆ ReadEventHeader()

void BmnPidQa::ReadEventHeader ( )
private

◆ SetOnlyPrimes()

void BmnPidQa::SetOnlyPrimes ( const Bool_t prime)
inline

Definition at line 73 of file BmnPidQa.h.

References fPrimes.

Referenced by bmn_pid_generator().

Here is the caller graph for this function:

◆ SetOutputDir()

void BmnPidQa::SetOutputDir ( const std::string & dir)
inline

Definition at line 64 of file BmnPidQa.h.

References fOutputDir.

◆ SetPRange()

void BmnPidQa::SetPRange ( Int_t bins,
Int_t min,
Int_t max )
inline

Definition at line 66 of file BmnPidQa.h.

References fPRangeBins, fPRangeMax, fPRangeMin, max(), and min().

Here is the call graph for this function:

Member Data Documentation

◆ db

TDatabasePDG* BmnPidQa::db = nullptr
private

Definition at line 142 of file BmnPidQa.h.

Referenced by BmnPidQa(), and GetParticleExtend().

◆ fBetaRangeBins

Int_t BmnPidQa::fBetaRangeBins
private

Definition at line 124 of file BmnPidQa.h.

Referenced by BmnPidQa(), and CreateHistograms().

◆ fBetaRangeMax

Double_t BmnPidQa::fBetaRangeMax
private

Definition at line 123 of file BmnPidQa.h.

Referenced by BmnPidQa(), and CreateHistograms().

◆ fBetaRangeMin

Double_t BmnPidQa::fBetaRangeMin
private

Definition at line 122 of file BmnPidQa.h.

Referenced by BmnPidQa(), and CreateHistograms().

◆ fGlobalTrackMatches

TClonesArray* BmnPidQa::fGlobalTrackMatches
private

Definition at line 163 of file BmnPidQa.h.

Referenced by ProcessGlobal(), and ReadDataBranches().

◆ fGlobalTracks

TClonesArray* BmnPidQa::fGlobalTracks
private

Definition at line 162 of file BmnPidQa.h.

Referenced by BmnPidQa(), ProcessGlobal(), and ReadDataBranches().

◆ fHM

BmnHistManager* BmnPidQa::fHM
private

Definition at line 113 of file BmnPidQa.h.

Referenced by BmnPidQa(), ~BmnPidQa(), CreateH1(), CreateH2(), Finish(), Init(), and ProcessGlobal().

◆ fMassRangeBins

Int_t BmnPidQa::fMassRangeBins
private

Definition at line 136 of file BmnPidQa.h.

Referenced by BmnPidQa(), and CreateHistograms().

◆ fMassRangeMax

Double_t BmnPidQa::fMassRangeMax
private

Definition at line 135 of file BmnPidQa.h.

Referenced by BmnPidQa(), and CreateHistograms().

◆ fMassRangeMin

Double_t BmnPidQa::fMassRangeMin
private

Definition at line 134 of file BmnPidQa.h.

Referenced by BmnPidQa(), and CreateHistograms().

◆ fMassTable

unordered_map<Double_t, string> BmnPidQa::fMassTable
private

◆ fMCTracks

TClonesArray* BmnPidQa::fMCTracks
private

Definition at line 161 of file BmnPidQa.h.

Referenced by BmnPidQa(), ProcessGlobal(), and ReadDataBranches().

◆ fNHitsRangeBins

Int_t BmnPidQa::fNHitsRangeBins
private

Definition at line 140 of file BmnPidQa.h.

Referenced by BmnPidQa(), and CreateHistograms().

◆ fNHitsRangeMax

Double_t BmnPidQa::fNHitsRangeMax
private

Definition at line 139 of file BmnPidQa.h.

Referenced by BmnPidQa(), and CreateHistograms().

◆ fNHitsRangeMin

Double_t BmnPidQa::fNHitsRangeMin
private

Definition at line 138 of file BmnPidQa.h.

Referenced by BmnPidQa(), and CreateHistograms().

◆ fOutName

TString BmnPidQa::fOutName
private

Definition at line 110 of file BmnPidQa.h.

Referenced by BmnPidQa(), and Finish().

◆ fOutputDir

string BmnPidQa::fOutputDir
private

Definition at line 114 of file BmnPidQa.h.

Referenced by BmnPidQa(), Finish(), and SetOutputDir().

◆ fParticles

vector<TParticlePDG*> BmnPidQa::fParticles
private

Definition at line 144 of file BmnPidQa.h.

Referenced by BmnPidQa(), and GetParticleExtend().

◆ fPidStatistics400

unordered_map<string, vector<Int_t> > BmnPidQa::fPidStatistics400
private

Definition at line 156 of file BmnPidQa.h.

Referenced by BmnPidQa(), PidStatisticsPrint400(), and ProcessGlobal().

◆ fPidStatistics700

unordered_map<string, vector<Int_t> > BmnPidQa::fPidStatistics700
private

Definition at line 156 of file BmnPidQa.h.

Referenced by BmnPidQa(), PidStatisticsPrint700(), and ProcessGlobal().

◆ fPRangeBins

Int_t BmnPidQa::fPRangeBins
private

Definition at line 120 of file BmnPidQa.h.

Referenced by BmnPidQa(), CreateHistograms(), and SetPRange().

◆ fPRangeMax

Double_t BmnPidQa::fPRangeMax
private

Definition at line 119 of file BmnPidQa.h.

Referenced by BmnPidQa(), CreateHistograms(), and SetPRange().

◆ fPRangeMin

Double_t BmnPidQa::fPRangeMin
private

Definition at line 118 of file BmnPidQa.h.

Referenced by BmnPidQa(), CreateHistograms(), and SetPRange().

◆ fPrimes

Bool_t BmnPidQa::fPrimes
private

Definition at line 116 of file BmnPidQa.h.

Referenced by BmnPidQa(), Finish(), GetOnlyPrimes(), and SetOnlyPrimes().

◆ fStorageName

TString BmnPidQa::fStorageName
private

Definition at line 111 of file BmnPidQa.h.

Referenced by BmnPidQa(), and Finish().

◆ fTimeRangeBins

Int_t BmnPidQa::fTimeRangeBins
private

Definition at line 132 of file BmnPidQa.h.

Referenced by BmnPidQa(), and CreateHistograms().

◆ fTimeRangeMax

Double_t BmnPidQa::fTimeRangeMax
private

Definition at line 131 of file BmnPidQa.h.

Referenced by BmnPidQa(), and CreateHistograms().

◆ fTimeRangeMin

Double_t BmnPidQa::fTimeRangeMin
private

Definition at line 130 of file BmnPidQa.h.

Referenced by BmnPidQa(), and CreateHistograms().

◆ fTof400Hits

TClonesArray* BmnPidQa::fTof400Hits
private

Definition at line 164 of file BmnPidQa.h.

Referenced by ProcessGlobal(), and ReadDataBranches().

◆ fTof700Hits

TClonesArray* BmnPidQa::fTof700Hits
private

Definition at line 165 of file BmnPidQa.h.

Referenced by ProcessGlobal(), and ReadDataBranches().

◆ fVelocRangeBins

Int_t BmnPidQa::fVelocRangeBins
private

Definition at line 128 of file BmnPidQa.h.

Referenced by BmnPidQa(), and CreateHistograms().

◆ fVelocRangeMax

Double_t BmnPidQa::fVelocRangeMax
private

Definition at line 127 of file BmnPidQa.h.

Referenced by BmnPidQa(), and CreateHistograms().

◆ fVelocRangeMin

Double_t BmnPidQa::fVelocRangeMin
private

Definition at line 126 of file BmnPidQa.h.

Referenced by BmnPidQa(), and CreateHistograms().


The documentation for this class was generated from the following files: