12#ifndef CBMLITTRACKINGQA_H_
13#define CBMLITTRACKINGQA_H_
52 virtual InitStatus
Init();
57 virtual void Exec(Option_t* opt);
131 void CreateH1Efficiency(
const string& name,
const string& parameter,
const string& xTitle, Int_t nofBins,
132 Double_t minBin, Double_t maxBin,
const string& opt);
134 void CreateH2Efficiency(
const string& name,
const string& parameter,
const string& xTitle,
const string& yTitle,
135 Int_t nofBinsX, Double_t minBinX, Double_t maxBinX, Int_t nofBinsY, Double_t minBinY,
136 Double_t maxBinY,
const string& opt);
139 Double_t minBin, Double_t maxBin);
141 void CreateH1(
const string& name,
const string& xTitle,
const string& yTitle, Int_t nofBins, Double_t minBin,
144 void CreateH2(
const string& name,
const string& xTitle,
const string& yTitle,
const string& zTitle, Int_t nofBinsX,
145 Double_t minBinX, Double_t maxBinX, Int_t nofBinsY, Double_t minBinY, Double_t maxBinY);
202 const string& histName,
const string& histTypeName,
const string& effName,
203 const string& catName,
const vector<Double_t>& par);
214 const string& histName,
const string& histTypeName,
const string& effName,
215 const string& catName,
const vector<Double_t>& par);
217 Bool_t
ElectronId(Int_t mcEventId, Int_t mcId,
const multimap<pair<Int_t, Int_t>, Int_t>& mcMap,
218 const string& effName);
297 Int_t nofHitsInRing);
299 const TClonesArray* richMatches, Int_t index);
300 map<string, LitTrackAcceptanceFunction>
302 map<string, LitRingAcceptanceFunction>
304 map<string, LitPiSuppAcceptanceFunction>
Helper class to access detector presence.
static vector< vector< QAMCTrack > > mcTracks
friend fscal max(fscal x, fscal y)
friend fscal min(fscal x, fscal y)
Helper class to access detector presence.
Creates CbmLitMCTrack objects.
Bool_t(*) LitTrackAcceptanceFunction(CbmMCDataArray *mcTracks, Int_t eventNo, Int_t index)
void SetTrdAnnCut(Double_t par)
CbmMCDataArray * fMvdPoints
vector< string > PionSuppressionVariants()
vector< string > CreateGlobalTrackingHistogramNames()
CbmLitTrackingQa()
Constructor.
CbmLitTrackingQa & operator=(const CbmLitTrackingQa &)
void SetTrackCategories(const vector< string > &trackCategories)
TClonesArray * fGlobalTracks
Bool_t ElectronId(Int_t mcEventId, Int_t mcId, const multimap< pair< Int_t, Int_t >, Int_t > &mcMap, const string &effName)
void SetPRange(Int_t bins, Int_t min, Int_t max)
void CreateTrackHitsHistogram(const string &detName)
void SetUseConsecutivePointsInSts(Bool_t useConsecutivePointsInSts)
void FillDefaultPiSuppCategories()
vector< string > fTrackCategories
void FillDefaultTrackCategories()
Fill array of track categories with default values.
Bool_t(*) LitRingAcceptanceFunction(CbmMCDataArray *mcTracks, Int_t eventNo, Int_t index, Int_t nofHitsInRing)
void FillDefaultRingPIDCategories()
void CreateH1PionSuppression(const string &name, const string ¶meter, const string &xTitle, Int_t nofBins, Double_t minBin, Double_t maxBin)
void SetMinNofHitsTrd(Int_t minNofHitsTrd)
CbmMCDataArray * fTofPoints
map< string, multimap< pair< Int_t, Int_t >, Int_t > > fMcToRecoMap
TClonesArray * fMuchMatches
void SetMinNofHitsMuch(Int_t minNofHitsMuch)
TClonesArray * fStsMatches
TClonesArray * fRichProjections
TClonesArray * fTofMatches
virtual void Finish()
Derived from FairTask.
void ProcessGlobalTracks()
Loop over the reconstructed global tracks. Check if track is correct and fill multimap <MC track inde...
void SetMinNofPointsTof(Int_t minNofPointsTof)
void CreateH1Efficiency(const string &name, const string ¶meter, const string &xTitle, Int_t nofBins, Double_t minBin, Double_t maxBin, const string &opt)
CbmLitTrackingQa(const CbmLitTrackingQa &)
Bool_t(*) LitPiSuppAcceptanceFunction(const TClonesArray *globalTracks, const TClonesArray *stsMatches, const TClonesArray *richMatches, Int_t index)
virtual ~CbmLitTrackingQa()
Destructor.
void SetMinNofPointsTrd(Int_t minNofPointsTrd)
void CreateH2Efficiency(const string &name, const string ¶meter, const string &xTitle, const string &yTitle, Int_t nofBinsX, Double_t minBinX, Double_t maxBinX, Int_t nofBinsY, Double_t minBinY, Double_t maxBinY, const string &opt)
void SetAngleRange(Double_t min, Double_t max, Int_t nofBins)
void FillGlobalReconstructionHistos(Int_t mcEventId, Int_t mcId, const multimap< pair< Int_t, Int_t >, Int_t > &mcMap, const string &histName, const string &histTypeName, const string &effName, const string &catName, const vector< Double_t > &par)
Calculate efficiency histograms.
void SetMinNofHitsRich(Int_t minNofHitsRich)
void ProcessMvd(Int_t stsId)
Check correctness attached MVD hits.
void SetQuota(Double_t quota)
string LocalEfficiencyNormalization(const string &detName)
void FillTrackQualityHistograms(const CbmTrackMatchNew *trackMatch, ECbmModuleId detId)
TClonesArray * fRichRings
void SetYRange(Int_t bins, Int_t min, Int_t max)
TClonesArray * fTrdMatches
void ProcessMcTracks(Int_t iEvent)
Loop over the MC tracks. Check track acceptance for different cases. Fill histograms of accepted and ...
virtual InitStatus Init()
Derived from FairTask.
map< string, LitRingAcceptanceFunction > fRingAcceptanceFunctions
map< string, LitPiSuppAcceptanceFunction > fPiSuppAcceptanceFunctions
vector< string > GlobalTrackVariants()
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)
TClonesArray * fStsTracks
void FillDefaultRingCategories()
TClonesArray * fMvdHitMatches
void SetRichAnnCut(Double_t par)
void SetMinNofPointsSts(Int_t minNofPointsSts)
void SetOutputDir(const std::string &dir)
void ReadDataBranches()
Read data branches from input data files.
void FillTrackAndRingAcceptanceFunctions()
Bool_t fUseConsecutivePointsInSts
void IncreaseCounters()
Increase number of objects counters.
void CreateH1(const string &name, const string &xTitle, const string &yTitle, Int_t nofBins, Double_t minBin, Double_t maxBin)
void SetMinNofPointsMuch(Int_t minNofPointsMuch)
void SetQuotaRich(Double_t quotaRich)
void FillGlobalReconstructionHistosRich(Int_t mcEventId, Int_t mcId, const multimap< pair< Int_t, Int_t >, Int_t > &mcMap, const string &histName, const string &histTypeName, const string &effName, const string &catName, const vector< Double_t > &par)
Fill histograms of accepted and reconstructed rings tracks.
map< string, LitTrackAcceptanceFunction > fTrackAcceptanceFunctions
void FillDefaultTrackPIDCategories()
vector< string > fTrackCategoriesPID
vector< string > fRingCategories
void SetRingCategories(const vector< string > &ringCategories)
CbmLitMCTrackCreator * fMCTrackCreator
void SetPtRange(Int_t bins, Int_t min, Int_t max)
virtual void Exec(Option_t *opt)
Derived from FairTask.
TClonesArray * fRichRingMatches
ClassDef(CbmLitTrackingQa, 1)
CbmMCDataArray * fMCTracks
void ProcessRichRings()
Loop over the reconstructed RICH rings. Check if ring is correct and fill multimap <MC track index,...
vector< string > fPiSuppCategories
vector< string > fRingCategoriesPID
Access to a MC data branch for time-based analysis.