BmnRoot 26.10.0-18-g4e3414f9
Software framework of the BM@N experiment
Loading...
Searching...
No Matches
BmnTrackingQaExp.h
Go to the documentation of this file.
1/**
2 * \file BmnTrackingQaExp.h
3 * \brief FairTask for tracking performance calculation.
4 * \author Andrey Lebedev <andrey.lebedev@gsi.de> - original author for CBM experiment
5 * \author Sergey Merts <sergey.merts@gmail.com> - modifications for BMN experiment
6 * \author Ilnur Gabdrakhmanov <ilnur@jinr.ru> - disentangle Exp and MC processing
7 * \date 2007-2022
8 */
9
10#ifndef BMNTRACKINGQAEXP_H_
11#define BMNTRACKINGQAEXP_H_
12
13#include "BmnQaBase.h"
15#include "CbmVertex.h"
16#include "DstEventHeader.h"
17#include "FairTask.h"
18
19#include <TMethod.h>
20#include <TTree.h>
21#include <chrono>
22#include <memory>
23#include <time.h>
24
25class BmnHistManager;
26class BmnTrackMatch;
27class BmnGlobalElectronId;
28
29using std::multimap;
30using std::string;
31using std::vector;
32
33class BmnTrackingQaExp : public BmnQaBase
34{
35 public:
36 /**
37 * \brief Constructor.
38 */
40
41 /**
42 * \brief Constructor.
43 */
44 BmnTrackingQaExp(TString name, UInt_t periodId = 9, BmnSetup std = kBMNSETUP);
45
46 /**
47 * \brief Destructor.
48 */
50
51 /**
52 * \brief Derived from FairTask.
53 */
54 virtual InitStatus Init();
55
56 /**
57 * \brief Derived from FairTask.
58 */
59 virtual void Exec(Option_t* opt);
60
61 /**
62 * \brief Derived from FairTask.
63 */
64 virtual void Finish();
65
66 /** Setters **/
67
68 void SetOutputDir(const std::string& dir) { fOutputDir = dir; }
69
70 void SetInnerTrackerSetup(map<DetectorId, Bool_t> setup) { fInnerTrackerSetup = setup; };
71
72 void SetDetectorPresence(DetectorId det, Bool_t use = true) { fInnerTrackerSetup[det] = use; };
73
75
76 void ResetSiBT();
77
79
80 void CreateTofHits(DetectorId detId);
81 void FillTofHits(TClonesArray* tof_hits, DetectorId detId);
82
83 private:
84 /**
85 * \brief Read data branches from input data files.
86 */
90
91 map<DetectorId, Bool_t> fInnerTrackerSetup;
92 UInt_t fPeriodId;
93 UInt_t fRunId;
94 BmnSetup fSetup;
95
96 // Pointers to data arrays
97 // TClonesArray* fMCTracks; // CbmMCTrack array
98 TClonesArray* fGlobalTracks; // BmnGlobalTrack array
110
112
113 CbmVertex* fVertexL1; // L1 tracking
114 // TString fConfigGem;
115 // TString fConfigSil;
116 // TString fConfigCsc;
117 unique_ptr<BmnGemStripStationSet> fGemDetector;
118 unique_ptr<BmnSiliconStationSet> fSilDetector;
119 unique_ptr<BmnCSCStationSet> fCscDetector;
120 unique_ptr<BmnVSPStationSet> fVspDetector;
121
123
124 const Int_t fNItersToUpdate = 200;
125 const chrono::seconds fTimeToUpdate = chrono::seconds(5); //<-redraw each timeout seconds
127 chrono::time_point<chrono::system_clock> fTicksLastUpdate;
128
131
133};
134
135#endif /* BMNTRACKINGQAEXP_H_ */
FairTask for tracking performance calculation.
bool Bool_t
int Int_t
const char Option_t
#define ClassDef(name, id)
@ kBMNSETUP
Definition BmnEnums.h:166
Histogram manager.
string fOutputDir
Definition BmnQaBase.h:153
virtual void Exec(Option_t *opt)
Derived from FairTask.
unique_ptr< BmnSiliconStationSet > fSilDetector
TClonesArray * fGlobalTracks
TClonesArray * fSiBTHits
BmnTrackingQaExp()
Constructor.
const Int_t fNItersToUpdate
DstEventHeader * fDstEventHeader
TClonesArray * fStsTracks
void CreateHistograms()
void FillTofHits(TClonesArray *tof_hits, DetectorId detId)
TClonesArray * fStsHits
void SetOutputDir(const std::string &dir)
Setters.
unique_ptr< BmnCSCStationSet > fCscDetector
void SetDetectorPresence(DetectorId det, Bool_t use=true)
BmnTrackingQaExp & operator=(const BmnTrackingQaExp &)=delete
TClonesArray * fGemHits
map< DetectorId, Bool_t > fInnerTrackerSetup
BmnTrackingQaExp(const BmnTrackingQaExp &)=delete
void ReadDataBranches()
Read data branches from input data files.
TClonesArray * fCscHits
virtual ~BmnTrackingQaExp()
Destructor.
TClonesArray * fDchTracks
TClonesArray * fSiBTTracks
void SetInnerTracksBranchName(TString name)
TClonesArray * fTof400Hits
unique_ptr< BmnVSPStationSet > fVspDetector
unique_ptr< BmnGemStripStationSet > fGemDetector
virtual void Finish()
Derived from FairTask.
chrono::time_point< chrono::system_clock > fTicksLastUpdate
const chrono::seconds fTimeToUpdate
void RegisterCommands()
void SetInnerTrackerSetup(map< DetectorId, Bool_t > setup)
TClonesArray * fSilHits
virtual InitStatus Init()
Derived from FairTask.
TClonesArray * fVspHits
void CreateTofHits(DetectorId detId)
TClonesArray * fTof700Hits
BmnTrackingQaExp(TString name, UInt_t periodId=9, BmnSetup std=kBMNSETUP)
Constructor.
CbmVertex.h.
Definition CbmVertex.h:21
Definition json.hpp:4446