FEDRA emulsion software from the OPERA Collaboration
EGraphRec.h
Go to the documentation of this file.
1 #ifndef EGRAPHREC_H
2 #define EGRAPHREC_H 1
3 
4 #include <TROOT.h>
5 #include <TGFrame.h>
6 #include <TGNumberEntry.h>
7 #include <TTree.h>
8 #include "EdbView.h"
9 #include "EGraphRecProc.h"
10 
11 class TThread;
12 class TGTab;
13 class TGTextView;
14 class TRootEmbeddedCanvas;
15 class TGLSAViewer;
16 class EdbScanProc;
17 class EdbPattern;
18 class EdbScanSet;
19 class EdbPVRec;
20 class EdbVertexRec;
21 class EdbDisplay;
22 
23 
24 class EGraphRec {
25  public:
26 
28  virtual ~EGraphRec();
29 
30  void ProcessEvent();
31  void AddProcBrickFrame(TGVerticalFrame *workframe);
32  void AddProcListFrame(TGVerticalFrame *workframe);
33  void AddRecOptFrame(TGTab *worktab);
34  void AddScanBackFrame(TGTab *worktab);
35  void AddVertexRecFrame(TGTab *worktab);
36  void AddCanvasFrame(TGTab *worktab);
37  void AddInfoFrame(TGVerticalFrame *workframe);
38  void ReconstructTracks();
39  void DrawEvent();
40  void ResetProcess();
41  void SetTree(TTree *tree);
42  void Set3DViewer();
43  void ZoomIn();
44  void ZoomOut();
45  void ClearEvent();
46 
47  void ReadSBPred();
48  void StartScanBack();
49  void StartVertexRec();
50 
51 
52  Bool_t IsSBToLink() const {return fCheckSBLink->IsDown();}
53  Bool_t IsSBToAlgn() const {return fCheckSBAlgn->IsDown();}
55  ProcId_t GetProcId() const {return fProcId;}
56  EdbScanProc *GetScanProc() const {return fScanProc;}
57  EdbScanSet *GetScanSet() const {return fScanSet;}
60  TThread *GetThSBProcess() const {return fThSBProcess;}
61  TGTextButton *GetButtonSBStart() {return fButtonSBStart;}
62 
63  void SetDataDir(TString &dataDir) {fDataDir = dataDir;}
64  void SetProcId(ProcId_t &procId) {fProcId = procId;}
65  void SetProcBrick(ProcBrick_t &procBrick) {fProcBrick = procBrick;}
66 
67  private:
68 
71  TTree *fEvtTree;
72  TString fDataDir;
83  TThread *fThSBProcess;
85 
86  TGLayoutHints *fLayout1;
87  TGLayoutHints *fLayout2;
88  TGLayoutHints *fLayout3;
89  TGLayoutHints *fLayoutLeftExpY;
90  TGLayoutHints *fLayoutRightExpY;
91  TGNumberEntry *fRecOptEntry[6];
92  TGNumberEntry *fEntryProcBrickId;
93  TGNumberEntry *fEntryProcVer;
94  TGTextView *fTextInfo;
95  TGCheckButton *fCheckProcScan;
96  TGCheckButton *fCheckProcLink;
97  TGCheckButton *fCheckProcAlgn;
98  TGCheckButton *fCheckProcTrks;
99  TGCheckButton *fCheckProcVrtx;
100  TGTextButton *fTextProcEvent;
101 
102  // scan back parameters
103 
104  TGNumberEntry *fEntrySBFirstPlate;
105  TGNumberEntry *fEntrySBLastPlate;
106  TGNumberEntry *fEntrySBStep;
107  TGTextButton *fButtonSBStart;
108  TGCheckButton *fCheckSBScan;
109  TGCheckButton *fCheckSBLink;
110  TGCheckButton *fCheckSBAlgn;
111  TGCheckButton *fCheckSBTrks;
112 
113  // vertex reconstruction parameters
114 
115  TGCheckButton *fCheckUseMom;
116  TGCheckButton *fCheckUseSegPar;
117  TGNumberEntry *fEntryQualityMode;
118  TGNumberEntry *fEntryDZmax;
119  TGNumberEntry *fEntryProbMinV;
120  TGNumberEntry *fEntryImpMax;
121 
122  TRootEmbeddedCanvas *fDisplayHits;
123  // TRootEmbeddedCanvas *fDisplayHitsGL;
124  TRootEmbeddedCanvas *fDisplayFedra;
125  TGLSAViewer *fGLViewer;
126 
127  void InitScanSet();
128  void InitVariables();
129  void ReadCmdConfig();
130  void InitDrawVariables();
131  void WriteInfo();
132 
133  ClassDef(EGraphRec,0)
134 
135 };
136 
137 #endif
Definition: EGraphRecProc.h:54
Definition: EGraphRec.h:24
TGCheckButton * fCheckProcAlgn
Definition: EGraphRec.h:97
void StartVertexRec()
Definition: EGraphRec.cxx:106
void AddScanBackFrame(TGTab *worktab)
Definition: EGraphRec.cxx:374
void Set3DViewer()
Definition: EGraphRec.cxx:596
ProcId_t fProcId
Definition: EGraphRec.h:80
EdbScanProc * fScanProc
Definition: EGraphRec.h:74
EdbDisplay * fDisplay
Definition: EGraphRec.h:79
EdbPattern * GetPredTracks() const
Definition: EGraphRec.h:58
void InitDrawVariables()
Definition: EGraphRec.cxx:692
void ClearEvent()
Definition: EGraphRec.cxx:754
TGCheckButton * fCheckSBScan
Definition: EGraphRec.h:108
void ZoomIn()
Definition: EGraphRec.cxx:603
TGNumberEntry * fRecOptEntry[6]
Definition: EGraphRec.h:91
ProcBrick_t GetBrickToProc() const
Definition: EGraphRec.h:54
TGLayoutHints * fLayoutRightExpY
Definition: EGraphRec.h:90
TGLSAViewer * fGLViewer
Definition: EGraphRec.h:125
TGTextView * fTextInfo
Definition: EGraphRec.h:94
void AddInfoFrame(TGVerticalFrame *workframe)
Definition: EGraphRec.cxx:561
void SetProcBrick(ProcBrick_t &procBrick)
Definition: EGraphRec.h:65
TGNumberEntry * fEntrySBFirstPlate
Definition: EGraphRec.h:104
void StartScanBack()
Definition: EGraphRec.cxx:81
TGLayoutHints * fLayout1
Definition: EGraphRec.h:86
void ReadCmdConfig()
Definition: EGraphRec.cxx:703
void SetProcId(ProcId_t &procId)
Definition: EGraphRec.h:64
TGCheckButton * fCheckUseSegPar
Definition: EGraphRec.h:116
void DrawEvent()
Definition: EGraphRec.cxx:141
void ZoomOut()
Definition: EGraphRec.cxx:613
TGNumberEntry * fEntryProcBrickId
Definition: EGraphRec.h:92
TGCheckButton * fCheckProcLink
Definition: EGraphRec.h:96
TGNumberEntry * fEntryDZmax
Definition: EGraphRec.h:118
TGNumberEntry * fEntryImpMax
Definition: EGraphRec.h:120
void ProcessEvent()
Definition: EGraphRec.cxx:57
Bool_t IsSBToLink() const
Definition: EGraphRec.h:52
EdbScanSet * GetScanSet() const
Definition: EGraphRec.h:57
TRootEmbeddedCanvas * fDisplayHits
Definition: EGraphRec.h:122
ProcBrick_t fProcBrick
Definition: EGraphRec.h:81
TThread * fThSBProcess
Definition: EGraphRec.h:83
TGTextButton * fButtonSBStart
Definition: EGraphRec.h:107
TGNumberEntry * fEntryProcVer
Definition: EGraphRec.h:93
void WriteInfo()
Definition: EGraphRec.cxx:623
void SetTree(TTree *tree)
Definition: EGraphRec.cxx:166
TGCheckButton * fCheckSBAlgn
Definition: EGraphRec.h:110
void AddVertexRecFrame(TGTab *worktab)
Definition: EGraphRec.cxx:455
EdbScanSet * fScanSet
Definition: EGraphRec.h:78
ProcId_t GetProcId() const
Definition: EGraphRec.h:55
void AddProcListFrame(TGVerticalFrame *workframe)
Definition: EGraphRec.cxx:230
void ResetProcess()
Definition: EGraphRec.cxx:65
TGLayoutHints * fLayout3
Definition: EGraphRec.h:88
EdbScanProc * GetScanProc() const
Definition: EGraphRec.h:56
TGCheckButton * fCheckSBTrks
Definition: EGraphRec.h:111
EdbView * fEvent
Definition: EGraphRec.h:73
Bool_t IsSBToAlgn() const
Definition: EGraphRec.h:53
TTree * fEvtTree
Definition: EGraphRec.h:71
EdbPVRec * GetFoundTracks() const
Definition: EGraphRec.h:59
TGTextButton * GetButtonSBStart()
Definition: EGraphRec.h:61
EdbPattern * fPredTracks
Definition: EGraphRec.h:75
ProcBrick_t fBrickToProc
Definition: EGraphRec.h:70
TGLayoutHints * fLayout2
Definition: EGraphRec.h:87
TGNumberEntry * fEntryQualityMode
Definition: EGraphRec.h:117
TGCheckButton * fCheckProcTrks
Definition: EGraphRec.h:98
TThread * GetThSBProcess() const
Definition: EGraphRec.h:60
TGCheckButton * fCheckSBLink
Definition: EGraphRec.h:109
TGTextButton * fTextProcEvent
Definition: EGraphRec.h:100
void AddRecOptFrame(TGTab *worktab)
Definition: EGraphRec.cxx:264
void AddCanvasFrame(TGTab *worktab)
Definition: EGraphRec.cxx:539
TRootEmbeddedCanvas * fDisplayFedra
Definition: EGraphRec.h:124
void AddProcBrickFrame(TGVerticalFrame *workframe)
Definition: EGraphRec.cxx:191
void ReadSBPred()
Definition: EGraphRec.cxx:573
TThread * fThSBCheckProcess
Definition: EGraphRec.h:84
TGLayoutHints * fLayoutLeftExpY
Definition: EGraphRec.h:89
VertexRecOpt_t fVertexRecOpt
Definition: EGraphRec.h:82
TGCheckButton * fCheckProcScan
Definition: EGraphRec.h:95
TString fDataDir
Definition: EGraphRec.h:72
void InitScanSet()
Definition: EGraphRec.cxx:632
TGCheckButton * fCheckProcVrtx
Definition: EGraphRec.h:99
EGraphRecProc * fRecProc
Definition: EGraphRec.h:69
virtual ~EGraphRec()
Definition: EGraphRec.cxx:46
EdbPVRec * fPVRec
Definition: EGraphRec.h:77
TGCheckButton * fCheckUseMom
Definition: EGraphRec.h:115
void SetDataDir(TString &dataDir)
Definition: EGraphRec.h:63
void InitVariables()
Definition: EGraphRec.cxx:653
TGNumberEntry * fEntrySBStep
Definition: EGraphRec.h:106
TGNumberEntry * fEntrySBLastPlate
Definition: EGraphRec.h:105
EdbPVRec * fFoundTracks
Definition: EGraphRec.h:76
TGNumberEntry * fEntryProbMinV
Definition: EGraphRec.h:119
void ReconstructTracks()
Definition: EGraphRec.cxx:159
Definition: EdbDisplay.h:21
Definition: EdbPVRec.h:148
Definition: EdbPattern.h:280
Definition: EdbScanProc.h:12
Definition: EdbScanSet.h:11
Definition: EdbVertex.h:194
Definition: EdbView.h:134
Definition: EGraphRecProc.h:15
Definition: EGraphRecProc.h:25
Definition: EGraphRecProc.h:34