ATTPCROOT  0.3.0-alpha
A ROOT-based framework for analyzing data from active target detectors
AtMergeTask.h
Go to the documentation of this file.
1 #ifndef AtMergeTask_H
2 #define AtMergeTask_H
3 
4 #include <FairTask.h>
5 
6 #include <Rtypes.h>
7 #include <TString.h>
8 
9 #include "S800Ana.h"
10 
11 #include <vector>
12 
13 class FairLogger;
14 class S800Calc;
15 class TBuffer;
16 class TClass;
17 class TClonesArray;
18 class TF1;
19 class TFile;
20 class TGraph;
21 class TMemberInspector;
22 
23 class AtMergeTask : public FairTask {
24 
25 public:
26  AtMergeTask();
27  ~AtMergeTask();
28 
29  void SetPersistence(Bool_t value = kTRUE);
30  void SetS800File(TString file);
31  void SetGlom(Double_t glom);
32  void SetOptiEvtDelta(Int_t EvtDelta);
33  void SetPID1cut(TString file);
34  void SetPID2cut(TString file);
35  void SetPID3cut(TString file);
36  void SetTsDelta(Int_t TsDelta);
37  void SetParameters(std::vector<Double_t> vec);
38  void SetTofObjCorr(std::vector<Double_t> vec);
39  void SetMTDCObjRange(std::vector<Double_t> vec);
40  void SetMTDCXfRange(std::vector<Double_t> vec);
41  void SetATTPCClock(Bool_t value = kTRUE);
42  void SetATTPCClockFreq(Double_t value);
43 
44  Int_t GetS800TsSize();
45  Int_t GetMergedTsSize();
46 
47  Bool_t isInGlom(Long64_t ts1, Long64_t ts2);
48  Bool_t isInPID(S800Calc *s800calc);
49 
50  virtual InitStatus Init();
51  // virtual void SetParContainers();
52  virtual void Exec(Option_t *opt);
53 
54 private:
55  FairLogger *fLogger;
56 
57  TClonesArray *fRawEventArray{};
58  S800Calc *fS800CalcBr;
59  TFile *fS800file{};
60 
61  Int_t fTsEvtS800Size{}, fEvtMerged{}, fEvtDelta{5}, fTsDelta{1272};
62  TString fS800File;
63  Long64_t fATTPCTs0{}, fATTPCTsPrev{};
64  std::vector<Long64_t> fS800Ts;
65  std::vector<Double_t> fS800Evt;
66  std::vector<Double_t> fParameters;
67  std::vector<Double_t> fTofObjCorr;
68  std::vector<Double_t> fMTDCObjRange;
69  std::vector<Double_t> fMTDCXfRange;
70 
71  TF1 *fS800TsFunc{};
72  Double_t fGlom{2};
73  Double_t fATTPCClockFreq{};
74 
75  std::vector<TString> fcutPID1File;
76  std::vector<TString> fcutPID2File;
77  std::vector<TString> fcutPID3File;
78 
79  Bool_t fIsPersistence{false};
80  Bool_t fUseATTPCClock{false};
81 
82  S800Ana fS800Ana;
83 
84  TGraph *fS800TsGraph{};
85 
86  ClassDef(AtMergeTask, 1);
87 };
88 
89 #endif
AtMergeTask::AtMergeTask
AtMergeTask()
Definition: AtMergeTask.cxx:33
AtMergeTask::SetPersistence
void SetPersistence(Bool_t value=kTRUE)
Definition: AtMergeTask.cxx:54
AtMergeTask::SetMTDCXfRange
void SetMTDCXfRange(std::vector< Double_t > vec)
Definition: AtMergeTask.cxx:98
AtMergeTask
Definition: AtMergeTask.h:23
S800Calc
Definition: S800Calc.h:455
AtMergeTask::SetPID1cut
void SetPID1cut(TString file)
Definition: AtMergeTask.cxx:70
AtMergeTask::Init
virtual InitStatus Init()
Definition: AtMergeTask.cxx:129
AtMergeTask::SetPID3cut
void SetPID3cut(TString file)
Definition: AtMergeTask.cxx:78
AtMergeTask::SetPID2cut
void SetPID2cut(TString file)
Definition: AtMergeTask.cxx:74
AtMergeTask::GetMergedTsSize
Int_t GetMergedTsSize()
Definition: AtMergeTask.cxx:115
S800Ana.h
AtMergeTask::SetS800File
void SetS800File(TString file)
Definition: AtMergeTask.cxx:58
AtMergeTask::SetOptiEvtDelta
void SetOptiEvtDelta(Int_t EvtDelta)
Definition: AtMergeTask.cxx:66
AtMergeTask::SetTsDelta
void SetTsDelta(Int_t TsDelta)
Definition: AtMergeTask.cxx:82
AtMergeTask::SetTofObjCorr
void SetTofObjCorr(std::vector< Double_t > vec)
Definition: AtMergeTask.cxx:90
AtMergeTask::isInGlom
Bool_t isInGlom(Long64_t ts1, Long64_t ts2)
Definition: AtMergeTask.cxx:120
AtMergeTask::SetGlom
void SetGlom(Double_t glom)
Definition: AtMergeTask.cxx:62
AtMergeTask::SetParameters
void SetParameters(std::vector< Double_t > vec)
Definition: AtMergeTask.cxx:86
AtMergeTask::SetATTPCClockFreq
void SetATTPCClockFreq(Double_t value)
Definition: AtMergeTask.cxx:106
AtMergeTask::Exec
virtual void Exec(Option_t *opt)
Definition: AtMergeTask.cxx:196
AtMergeTask::~AtMergeTask
~AtMergeTask()
Definition: AtMergeTask.cxx:45
AtMergeTask::GetS800TsSize
Int_t GetS800TsSize()
Definition: AtMergeTask.cxx:111
S800Ana
Definition: S800Ana.h:19
AtMergeTask::SetMTDCObjRange
void SetMTDCObjRange(std::vector< Double_t > vec)
Definition: AtMergeTask.cxx:94
AtMergeTask::SetATTPCClock
void SetATTPCClock(Bool_t value=kTRUE)
Definition: AtMergeTask.cxx:102
AtMergeTask::isInPID
Bool_t isInPID(S800Calc *s800calc)