20 #ifndef PndTrackingQualityBarrelAnalysisNewLinks_H_ 21 #define PndTrackingQualityBarrelAnalysisNewLinks_H_ 23 #include "FairMultiLinkedData.h" 24 #include "FairRootManager.h" 31 #include <TClonesArray.h> 37 #include "PndTrackingQualityAnalysis.h" 184 Int_t
GetNIdealHits(FairMultiLinkedData &track, TString branchName);
188 std::map<Int_t, std::map<TString, std::pair<Double_t, Int_t>>>
GetEfficiencies() {
return fMapEfficiencies; }
190 std::map<Int_t, TVector3>
GetP() {
return fMapP; }
192 std::map<Int_t, Double_t>
GetPt() {
return fMapPt; }
210 int mctrackid = fTrackIdMCId[trackid];
211 return fMCIdIdealTrackId[mctrackid];
216 static Bool_t
IsBarrelMVD(FairMultiLinkedData &links,
int iHit);
217 static Int_t
NBarrelMVD(FairMultiLinkedData &links);
220 virtual void FillMapTrackQualifikation();
221 Bool_t IsBetterTrackExisting(Int_t &mcIndex,
int quality);
223 Int_t GetSumOfAllValidMCHits(FairMultiLinkedData *trackData);
224 virtual Int_t AnalyseTrackInfo(std::map<TString, FairMultiLinkedData> &trackInfo, Int_t trackId);
225 virtual void CalcEfficiencies(Int_t mostProbableTrack, std::map<TString, FairMultiLinkedData> &trackInfo);
226 FairMultiLinkedData GetMCInfoForBranch(TString branchName,
PndTrackCand *trackCand);
227 std::map<TString, FairMultiLinkedData> AnalyseTrackCand(
PndTrackCand *trackCand);
232 FairRootManager *ioman;
235 TString fTrackBranchName;
236 TString fIdealTrackName;
237 Bool_t fPndTrackOrTrackCand;
238 PossibleTrackFunctor *fPossibleTrack;
240 Bool_t fUseCorrectedSkewedHits;
242 std::vector<TString> fBranchNames;
243 std::map<Int_t, Int_t> fTrackIdMCId;
244 std::map<Int_t, Int_t> fMCIdTrackId;
245 std::map<Int_t, Int_t> fMCIdIdealTrackId;
247 std::map<Int_t, Int_t> fMCTrackFound;
249 std::map<Int_t, Int_t> fMapTrackMCStatus;
250 std::map<Int_t, Int_t> fMapTrackQualification;
251 std::map<Int_t, std::map<TString, std::pair<Double_t, Int_t>>> fMapEfficiencies;
252 std::map<Int_t, Double_t> fMapPResolution;
253 std::map<Int_t, TVector3> fMapP;
254 std::map<Int_t, Double_t> fMapPtResolution;
255 std::map<Int_t, Double_t> fMapPt;
256 std::map<Int_t, Double_t> fMapPResolutionRel;
257 std::map<Int_t, Double_t> fMapPtResolutionRel;
259 TClonesArray *fTrack;
260 TClonesArray *fMCTrack;
261 TClonesArray *fIdealTrack;
262 TClonesArray *fIdealTrackCand;
std::map< Int_t, Double_t > GetPResolutionRel()
void AnalyseEvent(TClonesArray *recoTrackInfo)
static Int_t NBarrelMVD(FairMultiLinkedData &links)
std::map< Int_t, Int_t > GetMCTrackFound()
void AddHitsBranchName(TString name)
Adds branch names of detector data which should be taken into account in the analysis.
std::map< Int_t, Int_t > GetTrackQualification()
Int_t GetIdealTrackIdFromRecoTrackId(int trackid)
void PrintTrackQualityMap(Bool_t detailedInfo=kFALSE)
static Bool_t IsBarrelMVD(FairMultiLinkedData &links, int iHit)
Holding statically callable quality numbers.
std::map< Int_t, Double_t > GetPtResolutionRel()
void SetVerbose(Int_t val)
std::map< Int_t, TVector3 > GetP()
virtual ~PndTrackingQualityBarrelAnalysisNewLinks()
std::map< Int_t, Double_t > GetPt()
std::map< Int_t, std::map< TString, std::pair< Double_t, Int_t > > > GetEfficiencies()
PndTrackingQualityBarrelAnalysisNewLinks(TString trackBranchName, TString idealTrackName, Bool_t pndTrackData=kTRUE)
std::map< Int_t, Double_t > GetPtResolution()
void PrintTrackDataSummary(FairMultiLinkedData &trackData, Bool_t detailedInfo=kFALSE)
PndTrackingQualityRecoInfo GetRecoInfoFromRecoTrack(Int_t trackId, Int_t mctrackId)
std::map< Int_t, Int_t > GetTrackIdMCId()
void SetHitsBranchNames(std::vector< TString > names)
Int_t GetNIdealHits(FairMultiLinkedData &track, TString branchName)
Int_t GetIdealTrackIdFromMCTrackId(int mctrackid)
std::map< Int_t, Int_t > GetTrackMCStatus()
void PrintTrackMCStatusMap()
void PrintTrackInfo(std::map< TString, FairMultiLinkedData > info)
std::map< Int_t, Double_t > GetPResolution()