BmnRoot
Loading...
Searching...
No Matches
BmnMatchRecoToMC.h
Go to the documentation of this file.
1#ifndef BMNMATCHRECOTOMC_H_
2#define BMNMATCHRECOTOMC_H_
3
4#include "FairTask.h"
5#include "BmnMatch.h"
6#include "BmnTrackMatch.h"
7#include "BmnGemTrack.h"
8#include "CbmStsTrack.h"
9#include "CbmStsHit.h"
10#include "BmnGemStripHit.h"
11#include "FairMCPoint.h"
12#include "FairLogger.h"
13#include "TClonesArray.h"
14#include "BmnEnums.h"
15#include "BmnLink.h"
16
17class TClonesArray;
18
19class BmnMatchRecoToMC : public FairTask {
20public:
23
24 virtual InitStatus Init();
25 virtual void Exec(Option_t* opt);
26 virtual void Finish();
27
28 void SetInnerTracksBranchName(TString name) {
29 fInnerTrackBranchName = name;
30 }
31
32private:
33
34 void ReadAndCreateDataBranches();
35
36 BmnStatus LinkToMC(const TClonesArray* hitMatchArr, const TClonesArray* points, Int_t id, BmnTrackMatch* trackMatch);
37 BmnStatus LinkToMC(Int_t id, BmnTrackMatch* trackMatch);
38
39 void MatchGlobalTracks();
40 void MatchGlobalTracks(
41 const TClonesArray* gemHitMatches,
42 const TClonesArray* silHitMatches,
43 const TClonesArray* ssdHitMatches,
44 const TClonesArray* gemPoints,
45 const TClonesArray* silPoints,
46 const TClonesArray* ssdPoints,
47 const TClonesArray* gemTracks,
48 const TClonesArray* silTracks,
49 const TClonesArray* ssdTracks,
50 const TClonesArray* globTracks,
51 TClonesArray* trackMatches);
52
53 // STS
54 TClonesArray* fStsHits; // BmnStsHit array
55 TClonesArray* fStsTracks; // BmnStsTrack array
56
57 // GEM
58 TClonesArray* fGemPoints; // BmnStsPoint array
59 TClonesArray* fGemTracks; // BmnGemTrack array
60
61 // SILICON
62 TClonesArray* fSilPoints;
63 TClonesArray* fSilTracks;
64
65 // GLOBAL
66 TClonesArray* fGlobalTracks;
67 TClonesArray* fGlobalTrackMatches;
68
69 TString fInnerTrackBranchName;
70
71 BmnMatchRecoToMC(const BmnMatchRecoToMC&) = delete;
72 BmnMatchRecoToMC& operator=(const BmnMatchRecoToMC&) = delete;
73
74 void CalculateTrackQuality(BmnGemTrack* locTr, BmnTrackMatch* trMatch, const TClonesArray* hitMatches, const TClonesArray* points, Int_t& trueCntr, Int_t& falseCntr);
75 void CalculateTrackQuality(CbmStsTrack* locTr, BmnTrackMatch* trMatch);
76
77 ClassDef(BmnMatchRecoToMC, 1);
78};
79
80#endif /* BMNMATCHRECOTOMC_H_ */
BmnStatus
Definition BmnEnums.h:24
void SetInnerTracksBranchName(TString name)
virtual void Exec(Option_t *opt)
virtual void Finish()
virtual InitStatus Init()
virtual ~BmnMatchRecoToMC()