BmnRoot
Loading...
Searching...
No Matches
BmnSiliconHitMaker.h
Go to the documentation of this file.
1#ifndef BMNSILICONHITMAKER_H
2#define BMNSILICONHITMAKER_H
3
5#include "BmnSiliconDigit.h"
6#include "BmnSiliconHit.h"
7#include "BmnSiliconLayer.h"
8#include "BmnSiliconModule.h"
9#include "BmnSiliconStation.h"
11#include "BmnSiliconTransform.h"
12#include "BmnTask.h"
13#include "FairMCPoint.h"
14
15using namespace std;
16using namespace TMath;
17
18class BmnSiliconHitMaker : public BmnTask
19{
20 public:
22 BmnSiliconHitMaker(Int_t run_period, Int_t run_number, Bool_t isExp, Bool_t isSrc = kFALSE);
24
25 virtual InitStatus Init();
26 virtual void Exec(Option_t* opt);
27 virtual void Finish();
28
30
31 void SetHitMatching(Bool_t opt = kTRUE) { fHitMatching = opt; }
32
34
35 void SetXMLConfig(TString xml_file)
36 {
37 fCurrentConfig = BmnSiliconConfiguration::None;
38 XMLConfigFile = xml_file;
39 }
40
41 void SetSignalWindow(Double_t min, Double_t max)
42 {
43 fSignalLow = min;
44 fSignalUp = max;
45 }
46
47 virtual void OnlineWrite(const std::unique_ptr<TTree>& resultTree);
48
49 private:
50 void createSiliconDetector();
51
52 Int_t fRunPeriod;
53 Int_t fRunNumber;
54
55 TString fInputPointsBranchName;
56 TString fInputDigitsBranchName;
57 TString fInputDigitMatchesBranchName;
58
59 TString fOutputHitsBranchName;
60
62 TClonesArray* fBmnSiliconPointsArray;
63 TClonesArray* fBmnSiliconDigitsArray;
64 TClonesArray* fBmnSiliconDigitMatchesArray;
65
67 TClonesArray* fBmnSiliconHitsArray;
68
70 TClonesArray* fBmnSiliconUpperClustersArray;
72 TClonesArray* fBmnSiliconLowerClustersArray;
73
74 Bool_t fHitMatching;
75
77 TString XMLConfigFile;
78 BmnSiliconStationSet* StationSet;
79 BmnSiliconTransform* TransfSet;
80
81 Bool_t fIsExp;
82 Bool_t fIsSrc;
83 TString fBmnEvQualityBranchName;
84 TClonesArray* fBmnEvQuality;
85
86 Double_t*** fAlignCor;
87
88 Double_t fSignalLow;
89 Double_t fSignalUp;
90
91 ClassDef(BmnSiliconHitMaker, 1);
92};
93
94#endif /* BMNSILICONHITMAKER_H */
friend F32vec4 min(const F32vec4 &a, const F32vec4 &b)
Definition P4_F32vec4.h:30
friend F32vec4 max(const F32vec4 &a, const F32vec4 &b)
Definition P4_F32vec4.h:31
BmnSiliconHitMaker(Int_t run_period, Int_t run_number, Bool_t isExp, Bool_t isSrc=kFALSE)
void SetHitMatching(Bool_t opt=kTRUE)
virtual void OnlineWrite(const std::unique_ptr< TTree > &resultTree)
Write task resul to tree.
virtual InitStatus Init()
virtual void Exec(Option_t *opt)
void SetSignalWindow(Double_t min, Double_t max)
void SetXMLConfig(TString xml_file)
virtual ~BmnSiliconHitMaker()
void SetCurrentConfig(BmnSiliconConfiguration::SILICON_CONFIG config)
virtual void Finish()
BmnTask.
Definition BmnTask.h:13
STL namespace.