BmnRoot
Loading...
Searching...
No Matches
BmnProfQa.h
Go to the documentation of this file.
1#ifndef BMNPROFQA_H_
2#define BMNPROFQA_H_
3
4#include <time.h>
5#include <chrono>
6#include <memory>
7#include <bitset>
8
9#include <TTree.h>
10#include <TMethod.h>
11
12#include "FairTask.h"
13
14#include "CbmVertex.h"
15#include "DstEventHeader.h"
16#include "BmnSiProfDigit.h"
17#include "BmnSiProfStationSet.h"
18
19#include "BmnQaBase.h"
20#include "BmnProfQaReport.h"
21
22class BmnHistManager;
23class BmnTrackMatch;
24class BmnGlobalElectronId;
25
26using std::string;
27using std::vector;
28
29class BmnProfQa : public BmnQaBase {
30public:
31
36 };
37
41 BmnProfQa(TString name, TString gemConf);
42
46 virtual ~BmnProfQa();
47
51 virtual InitStatus Init();
52
56 virtual void Exec(
57 Option_t* opt);
58
62 virtual void Finish();
63
66 void SetOutputDir(const std::string& dir) {
67 fOutputDir = dir;
68 }
69
70 void SetInnerTrackerSetup(map<DetectorId, Bool_t> setup) {
71 fInnerTrackerSetup = setup;
72 };
73
74 void SetDetectorPresence(DetectorId det, Bool_t use) {
75 fInnerTrackerSetup[det] = use;
76 };
77
78 void SetInnerTracksBranchName(TString name) {
79 fInnerTrackBranchName = name;
80 }
81
82 void ResetProf();
83
84 void RegisterCommands();
85
86private:
90 void ReadDataBranches();
91 void CreateHistograms();
92 void ProcessGlobal();
93
94 map<DetectorId, Bool_t> fInnerTrackerSetup;
95
96 // Pointers to data arrays
97 TClonesArray* fProfHits;
98 TClonesArray* fProfDigits;
99
100 DstEventHeader* fDstEventHeader;
101
102 TString fConfigProf;
103 unique_ptr<BmnSiProfStationSet> fProfDetector;
104 unique_ptr<BmnGemStripStationSet> fGemDetector;
105 unique_ptr<BmnSiliconStationSet> fSilDetector;
106 unique_ptr<BmnCSCStationSet> fCscDetector;
107
108 TString fInnerTrackBranchName;
109
110
111 const Int_t fNItersToUpdate = 200;
112 const chrono::seconds fTimeToUpdate = chrono::seconds(5); //<-redraw each timeout seconds
113 Int_t fNItersSinceUpdate;
114 chrono::time_point<chrono::system_clock> fTicksLastUpdate;
115
116 BmnProfQa(const BmnProfQa&) = delete;
117 BmnProfQa& operator=(const BmnProfQa&) = delete;
118
119 ClassDef(BmnProfQa, 1);
120};
121
122#endif /* BMNPROFQA_H_ */
FairTask for tracking performance calculation.
DetectorId
Histogram manager.
void SetInnerTracksBranchName(TString name)
Definition BmnProfQa.h:78
void SetInnerTrackerSetup(map< DetectorId, Bool_t > setup)
Definition BmnProfQa.h:70
void ResetProf()
void SetDetectorPresence(DetectorId det, Bool_t use)
Definition BmnProfQa.h:74
virtual void Exec(Option_t *opt)
Derived from FairTask.
Definition BmnProfQa.cxx:68
void SetOutputDir(const std::string &dir)
Definition BmnProfQa.h:66
void RegisterCommands()
virtual ~BmnProfQa()
Destructor.
Definition BmnProfQa.cxx:38
virtual void Finish()
Derived from FairTask.
Definition BmnProfQa.cxx:90
virtual InitStatus Init()
Derived from FairTask.
Definition BmnProfQa.cxx:41
BmnProfQa()
Constructor.
Definition BmnProfQa.h:35
string fOutputDir
Definition BmnQaBase.h:153
Definition setup.py:1