ATTPCROOT  0.3.0-alpha
A ROOT-based framework for analyzing data from active target detectors
AtEventManager.h
Go to the documentation of this file.
1 #ifndef AtEVENTMANAGER_H
2 #define AtEVENTMANAGER_H
3 
4 #include <FairRunAna.h>
5 
6 #include <Rtypes.h>
7 #include <TEveEventManager.h>
8 
9 #include "S800Ana.h"
10 
11 #include <vector>
12 
13 class FairRootManager;
14 class FairTask;
15 class TBuffer;
16 class TCanvas;
17 class TH2F;
18 class TClass;
19 class TGNumberEntry;
20 class TGTextButton;
21 class TMemberInspector;
22 class TGListTreeItem;
23 class AtEvent;
24 class S800Calc;
25 class TClonesArray;
26 
27 class AtEventManager : public TEveEventManager {
28 private:
29  FairRootManager *fRootManager;
30  FairRunAna *fRunAna;
31  TClonesArray *cArray;
32  TClonesArray *cS800Array;
33  AtEvent *cevent;
34  S800Calc *cS800Calc;
35 
36  Int_t fEntry;
37  TGListTreeItem *fEvent;
38  TGNumberEntry *fCurrentEvent;
39  TGNumberEntry *f3DThresDisplay;
40  TCanvas *fCvsPadPlane;
41  TCanvas *fPadWave;
42  TCanvas *fPadAll;
43  TCanvas *fCvsQEvent;
44  TCanvas *fCvsHough;
45  TCanvas *fCvsPhi{};
46  TCanvas *fCvsMesh{};
47  TCanvas *fCvs3DHist{};
48  TCanvas *fCvsRad;
49  TCanvas *fCvsTheta{};
50  TCanvas *fCvsThetaxPhi{};
51  TCanvas *fCvsQuadrant1{};
52  TCanvas *fCvsQuadrant2{};
53  TCanvas *fCvsQuadrant3{};
54  TCanvas *fCvsQuadrant4{};
55  TCanvas *fCvsMC_XY{};
56  TCanvas *fCvsMC_Z{};
57  TCanvas *fCvsAux{};
58  TCanvas *fCvsPIDFull;
59  TCanvas *fCvsPID;
60  TCanvas *fCvsPID2;
61  TH2F *fPIDFull;
62  TCanvas *fCvsPID2Full;
63  TH2F *fPID2Full;
64 
65  TGTextButton *drawallpad;
66  TGTextButton *eraseQevent;
67  TGTextButton *drawReconstruction;
68  TGTextButton *saveASCIIevent;
69  TGTextButton *toggleCorr;
70 
71  Bool_t kDrawAllOn;
72  Bool_t kEraseQ;
73  Bool_t kDrawReconstruction;
74  Bool_t kDraw3DGeo;
75  Bool_t kDraw3DHist;
76  Bool_t kToggleData;
77  Float_t k3DThreshold;
78 
79  Int_t fEntries;
80 
81  static AtEventManager *fInstance;
82 
83 public:
84  static AtEventManager *Instance();
86  virtual ~AtEventManager();
87 
88  virtual void GotoEvent(Int_t event);
89  virtual void NextEvent();
90  virtual void PrevEvent();
91  virtual void make_gui();
92  virtual void SelectEvent();
93  virtual void Select3DThres();
94 
95  static void DrawWave();
96  void ChangeDrawAllPads();
98  void EraseQEvent();
99  void Draw3DGeo();
100  void Draw3DHist();
101  void ToggleCorrData();
102 
103  void DrawPIDFull();
104  void FillPIDFull();
105  void DrawPID2Full();
106 
107  void AddTask(FairTask *task) { fRunAna->AddTask(task); }
108  // virtual void InitRiemann(Int_t option=1, Int_t level=3, Int_t nNodes=10000);
109  virtual void Init(Int_t option = 1, Int_t level = 3, Int_t nNodes = 10000);
110 
111  virtual Int_t GetCurrentEvent() { return fEntry; }
112 
113  TCanvas *GetCvsPadPlane() { return fCvsPadPlane; }
114  TCanvas *GetCvsPadWave() { return fPadWave; }
115  TCanvas *GetCvsPadAll() { return fPadAll; }
116  TCanvas *GetCvsQEvent() { return fCvsQEvent; }
117  TCanvas *GetCvsHoughSpace() { return fCvsHough; }
118  TCanvas *GetCvsPhi() { return fCvsPhi; }
119  TCanvas *GetCvsMesh() { return fCvsMesh; }
120  TCanvas *GetCvs3DHist() { return fCvs3DHist; }
121  TCanvas *GetCvsRad() { return fCvsRad; }
122  TCanvas *GetCvsTheta() { return fCvsTheta; }
123  TCanvas *GetCvsThetaxPhi() { return fCvsThetaxPhi; }
124  TCanvas *GetCvsQuadrant1() { return fCvsQuadrant1; }
125  TCanvas *GetCvsQuadrant2() { return fCvsQuadrant2; }
126  TCanvas *GetCvsQuadrant3() { return fCvsQuadrant3; }
127  TCanvas *GetCvsQuadrant4() { return fCvsQuadrant4; }
128  TCanvas *GetCvsMC_XY() { return fCvsMC_XY; }
129  TCanvas *GetCvsMC_Z() { return fCvsMC_Z; }
130  TCanvas *GetCvsAux() { return fCvsAux; }
131  TCanvas *GetCvsPID() { return fCvsPID; }
132  TCanvas *GetCvsPID2() { return fCvsPID2; }
133 
135 
136  void SetTofObjCorr(std::vector<Double_t> vec) { fTofObjCorr = vec; }
137  void SetMTDCObjRange(std::vector<Double_t> vec) { fMTDCObjRange = vec; }
138  void SetMTDCXfRange(std::vector<Double_t> vec) { fMTDCXfRange = vec; }
139 
141  std::vector<Double_t> fTofObjCorr;
142  std::vector<Double_t> fMTDCObjRange;
143  std::vector<Double_t> fMTDCXfRange;
144 
145  Bool_t GetDrawAllPad() { return kDrawAllOn; }
146  Bool_t GetDrawReconstruction() { return kDrawReconstruction; }
147  Bool_t GetEraseQEvent()
148  {
149  Bool_t EraseBuff = kEraseQ;
150  kEraseQ = kFALSE;
151  return EraseBuff;
152  }
153  Float_t Get3DThreshold() { return k3DThreshold; }
154  Bool_t GetToggleCorrData() { return kToggleData; }
155 
156  void RunEvent();
157 
158  void SaveASCIIEvent();
159 
162 
164 };
165 
166 #endif
AtEventManager::SaveASCIIEvent
void SaveASCIIEvent()
Definition: AtEventManager.cxx:765
AtEventManager::SetMTDCXfRange
void SetMTDCXfRange(std::vector< Double_t > vec)
Definition: AtEventManager.h:138
AtEventManager::GetEraseQEvent
Bool_t GetEraseQEvent()
Definition: AtEventManager.h:147
AtEventManager::GetCvsMC_Z
TCanvas * GetCvsMC_Z()
Definition: AtEventManager.h:129
AtEventManager::PrevEvent
virtual void PrevEvent()
MENU
Definition: AtEventManager.cxx:460
AtEventManager::GetCvsQuadrant4
TCanvas * GetCvsQuadrant4()
Definition: AtEventManager.h:127
AtEventManager::GetDrawReconstruction
Bool_t GetDrawReconstruction()
Definition: AtEventManager.h:146
AtEventManager::EnableDrawReconstruction
void EnableDrawReconstruction()
Definition: AtEventManager.cxx:729
AtEventManager::Draw3DGeo
void Draw3DGeo()
Definition: AtEventManager.cxx:749
AtEventManager::SetTofObjCorr
void SetTofObjCorr(std::vector< Double_t > vec)
Definition: AtEventManager.h:136
AtEventManager::fTofObjCorr
std::vector< Double_t > fTofObjCorr
Definition: AtEventManager.h:141
S800Calc
Definition: S800Calc.h:455
AtEventManager::operator=
AtEventManager & operator=(const AtEventManager &)
AtEventManager::GetCvsRad
TCanvas * GetCvsRad()
Definition: AtEventManager.h:121
AtEventManager::GetCvsPhi
TCanvas * GetCvsPhi()
Definition: AtEventManager.h:118
AtEventManager::RunEvent
void RunEvent()
Definition: AtEventManager.cxx:586
AtEventManager::GetCvsQuadrant3
TCanvas * GetCvsQuadrant3()
Definition: AtEventManager.h:126
AtEventManager::GetCvsPadAll
TCanvas * GetCvsPadAll()
Definition: AtEventManager.h:115
AtEventManager::AtEventManager
AtEventManager(const AtEventManager &)
AtEventManager::GetCvsQuadrant1
TCanvas * GetCvsQuadrant1()
Definition: AtEventManager.h:124
AtEvent
Definition: AtEvent.h:22
AtEventManager::GetCvsPadPlane
TCanvas * GetCvsPadPlane()
Definition: AtEventManager.h:113
AtEventManager::DrawPID2Full
void DrawPID2Full()
Definition: AtEventManager.cxx:494
AtEventManager::Get3DThreshold
Float_t Get3DThreshold()
Definition: AtEventManager.h:153
AtEventManager::EraseQEvent
void EraseQEvent()
Definition: AtEventManager.cxx:743
AtEventManager::ChangeDrawAllPads
void ChangeDrawAllPads()
Definition: AtEventManager.cxx:716
AtEventManager::FillPIDFull
void FillPIDFull()
Definition: AtEventManager.cxx:504
AtEventManager::Draw3DHist
void Draw3DHist()
Definition: AtEventManager.cxx:754
S800Ana.h
AtEventManager::SetMTDCObjRange
void SetMTDCObjRange(std::vector< Double_t > vec)
Definition: AtEventManager.h:137
AtEventManager::GetCurrentEvent
virtual Int_t GetCurrentEvent()
Definition: AtEventManager.h:111
AtEventManager
Definition: AtEventManager.h:27
AtEventManager::DrawPIDFull
void DrawPIDFull()
Definition: AtEventManager.cxx:484
AtEventManager::AtEventManager
AtEventManager()
Definition: AtEventManager.cxx:68
AtEventManager::GetCvsPadWave
TCanvas * GetCvsPadWave()
Definition: AtEventManager.h:114
AtEventManager::Instance
static AtEventManager * Instance()
Definition: AtEventManager.cxx:63
AtEventManager::GetCvsAux
TCanvas * GetCvsAux()
Definition: AtEventManager.h:130
AtEventManager::Init
virtual void Init(Int_t option=1, Int_t level=3, Int_t nNodes=10000)
Definition: AtEventManager.cxx:92
AtEventManager::ToggleCorrData
void ToggleCorrData()
Definition: AtEventManager.cxx:775
AtEventManager::GetCvsThetaxPhi
TCanvas * GetCvsThetaxPhi()
Definition: AtEventManager.h:123
AtEventManager::GetCvsQuadrant2
TCanvas * GetCvsQuadrant2()
Definition: AtEventManager.h:125
AtEventManager::make_gui
virtual void make_gui()
Definition: AtEventManager.cxx:591
AtEventManager::GotoEvent
virtual void GotoEvent(Int_t event)
MENU
Definition: AtEventManager.cxx:428
AtEventManager::GetCvsMesh
TCanvas * GetCvsMesh()
Definition: AtEventManager.h:119
AtEventManager::GetCvsTheta
TCanvas * GetCvsTheta()
Definition: AtEventManager.h:122
AtEventManager::GetCvsQEvent
TCanvas * GetCvsQEvent()
Definition: AtEventManager.h:116
AtEventManager::SelectEvent
virtual void SelectEvent()
Definition: AtEventManager.cxx:422
AtEventManager::GetDrawAllPad
Bool_t GetDrawAllPad()
Definition: AtEventManager.h:145
AtEventManager::GetCvsHoughSpace
TCanvas * GetCvsHoughSpace()
Definition: AtEventManager.h:117
AtEventManager::GetCvs3DHist
TCanvas * GetCvs3DHist()
Definition: AtEventManager.h:120
AtEventManager::fMTDCXfRange
std::vector< Double_t > fMTDCXfRange
Definition: AtEventManager.h:143
AtEventManager::GetCvsPID2
TCanvas * GetCvsPID2()
Definition: AtEventManager.h:132
AtEventManager::fMTDCObjRange
std::vector< Double_t > fMTDCObjRange
Definition: AtEventManager.h:142
AtEventManager::ClassDef
ClassDef(AtEventManager, 1)
AtEventManager::GetToggleCorrData
Bool_t GetToggleCorrData()
Definition: AtEventManager.h:154
AtEventManager::DrawWave
static void DrawWave()
Definition: AtEventManager.cxx:539
AtEventManager::NextEvent
virtual void NextEvent()
MENU
Definition: AtEventManager.cxx:436
AtEventManager::~AtEventManager
virtual ~AtEventManager()
S800Ana
Definition: S800Ana.h:19
AtEventManager::AddTask
void AddTask(FairTask *task)
Definition: AtEventManager.h:107
AtEventManager::fS800Ana
S800Ana fS800Ana
Definition: AtEventManager.h:140
AtEventManager::GetCvsPID
TCanvas * GetCvsPID()
Definition: AtEventManager.h:131
AtEventManager::GetS800Ana
S800Ana GetS800Ana()
Definition: AtEventManager.h:134
AtEventManager::GetCvsMC_XY
TCanvas * GetCvsMC_XY()
Definition: AtEventManager.h:128
AtEventManager::Select3DThres
virtual void Select3DThres()
Definition: AtEventManager.cxx:759