8 #ifndef PndTrackingQualityBarrelAnalysisNewLinks_H_ 9 #define PndTrackingQualityBarrelAnalysisNewLinks_H_ 11 #include "FairMultiLinkedData.h" 12 #include "FairRootManager.h" 19 #include <TClonesArray.h> 25 #include "PndTrackingQualityAnalysis.h" 172 Int_t
GetNIdealHits(FairMultiLinkedData &track, TString branchName);
176 std::map<Int_t, std::map<TString, std::pair<Double_t, Int_t>>>
GetEfficiencies() {
return fMapEfficiencies; }
178 std::map<Int_t, TVector3>
GetP() {
return fMapP; }
180 std::map<Int_t, Double_t>
GetPt() {
return fMapPt; }
198 int mctrackid = fTrackIdMCId[trackid];
199 return fMCIdIdealTrackId[mctrackid];
204 static Bool_t
IsBarrelMVD(FairMultiLinkedData &links,
int iHit);
205 static Int_t
NBarrelMVD(FairMultiLinkedData &links);
208 virtual void FillMapTrackQualifikation();
209 Bool_t IsBetterTrackExisting(Int_t &mcIndex,
int quality);
211 Int_t GetSumOfAllValidMCHits(FairMultiLinkedData *trackData);
212 virtual Int_t AnalyseTrackInfo(std::map<TString, FairMultiLinkedData> &trackInfo, Int_t trackId);
213 virtual void CalcEfficiencies(Int_t mostProbableTrack, std::map<TString, FairMultiLinkedData> &trackInfo);
214 FairMultiLinkedData GetMCInfoForBranch(TString branchName,
PndTrackCand *trackCand);
215 std::map<TString, FairMultiLinkedData> AnalyseTrackCand(
PndTrackCand *trackCand);
220 FairRootManager *ioman;
223 TString fTrackBranchName;
224 TString fIdealTrackName;
225 Bool_t fPndTrackOrTrackCand;
226 PossibleTrackFunctor *fPossibleTrack;
228 Bool_t fUseCorrectedSkewedHits;
230 std::vector<TString> fBranchNames;
231 std::map<Int_t, Int_t> fTrackIdMCId;
232 std::map<Int_t, Int_t> fMCIdTrackId;
233 std::map<Int_t, Int_t> fMCIdIdealTrackId;
235 std::map<Int_t, Int_t> fMCTrackFound;
237 std::map<Int_t, Int_t> fMapTrackMCStatus;
238 std::map<Int_t, Int_t> fMapTrackQualification;
239 std::map<Int_t, std::map<TString, std::pair<Double_t, Int_t>>> fMapEfficiencies;
240 std::map<Int_t, Double_t> fMapPResolution;
241 std::map<Int_t, TVector3> fMapP;
242 std::map<Int_t, Double_t> fMapPtResolution;
243 std::map<Int_t, Double_t> fMapPt;
244 std::map<Int_t, Double_t> fMapPResolutionRel;
245 std::map<Int_t, Double_t> fMapPtResolutionRel;
247 TClonesArray *fTrack;
248 TClonesArray *fMCTrack;
249 TClonesArray *fIdealTrack;
250 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()