BmnRoot
Loading...
Searching...
No Matches
BmnCSCHitMaker.h
Go to the documentation of this file.
1#ifndef BMNCSCHITMAKER_H
2#define BMNCSCHITMAKER_H 1
3
5#include "BmnCSCDigit.h"
6#include "BmnCSCHit.h"
7#include "BmnCSCStationSet.h"
8#include "BmnCSCTransform.h"
9#include "BmnTask.h"
10#include "FairField.h"
11#include "FairMCPoint.h"
12#include "TClonesArray.h"
13#include "TRegexp.h"
14#include "TString.h"
15
16#include <fstream>
17#include <iostream>
18#include <sstream>
19
20using namespace std;
21
22class BmnCSCHitMaker : public BmnTask
23{
24 public:
26 BmnCSCHitMaker(Int_t, Int_t, Bool_t, TString alignFile = "default", Bool_t isSrc = kFALSE);
27 virtual ~BmnCSCHitMaker();
28
29 virtual InitStatus Init();
30 virtual void Exec(Option_t* opt);
31 virtual void Finish();
32
33 void ProcessDigits();
34
35 void SetHitMatching(Bool_t opt = kTRUE) { fHitMatching = opt; }
36
38 {
39 fCurrentConfig = config;
40 configSetExplicitly = true;
41 }
42
43 void SetXMLConfig(TString xml_file)
44 {
45 fCurrentConfig = BmnCSCConfiguration::None;
46 XMLConfigFile = xml_file;
47 configSetExplicitly = true;
48 }
49
50 virtual void OnlineWrite(const std::unique_ptr<TTree>& resultTree);
51
52 private:
53 void initCurrentConfig();
54
55 TString fInputPointsBranchName;
56 TString fInputDigitsBranchName;
57 TString fInputDigitMatchesBranchName;
58
59 TString fOutputHitsBranchName;
60
62 TClonesArray* fBmnCSCPointsArray;
63 TClonesArray* fBmnCSCDigitsArray;
64 TClonesArray* fBmnCSCDigitMatchesArray;
65
67 TClonesArray* fBmnCSCHitsArray;
69 TClonesArray* fBmnCSCUpperClustersArray;
71 TClonesArray* fBmnCSCLowerClustersArray;
72
73 Bool_t fHitMatching;
74 Bool_t fIsExp; // Specify type of input data (MC or real data)
75 Bool_t fIsSrc; // Specify type of setup (SRC or BM@N)
76
78 bool configSetExplicitly = false;
79
80 TString XMLConfigFile;
81
82 BmnCSCStationSet* StationSet;
83
84 BmnCSCTransform* TransfSet;
85
86 FairField* fField;
87
88 TString fBmnEvQualityBranchName;
89 TClonesArray* fBmnEvQuality;
90
91 void LoadDetectorConfiguration();
92
93 ClassDef(BmnCSCHitMaker, 1);
94};
95
96#endif
virtual InitStatus Init()
virtual void OnlineWrite(const std::unique_ptr< TTree > &resultTree)
Write task resul to tree.
void SetCurrentConfig(BmnCSCConfiguration::CSC_CONFIG config)
virtual ~BmnCSCHitMaker()
void SetXMLConfig(TString xml_file)
virtual void Finish()
virtual void Exec(Option_t *opt)
void SetHitMatching(Bool_t opt=kTRUE)
BmnTask.
Definition BmnTask.h:13
STL namespace.