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
11class TThread;
12class TGTab;
13class TGTextView;
14class TRootEmbeddedCanvas;
15class TGLSAViewer;
16class EdbScanProc;
17class EdbPattern;
18class EdbScanSet;
19class EdbPVRec;
20class EdbVertexRec;
21class EdbDisplay;
22
23
24class 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;}
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:107
void AddScanBackFrame(TGTab *worktab)
Definition: EGraphRec.cxx:375
void Set3DViewer()
Definition: EGraphRec.cxx:597
ProcId_t fProcId
Definition: EGraphRec.h:80
EdbScanProc * fScanProc
Definition: EGraphRec.h:74
EdbDisplay * fDisplay
Definition: EGraphRec.h:79
EdbScanSet * GetScanSet() const
Definition: EGraphRec.h:57
void InitDrawVariables()
Definition: EGraphRec.cxx:693
void ClearEvent()
Definition: EGraphRec.cxx:755
TGCheckButton * fCheckSBScan
Definition: EGraphRec.h:108
void ZoomIn()
Definition: EGraphRec.cxx:604
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
EdbPVRec * GetFoundTracks() const
Definition: EGraphRec.h:59
TGTextView * fTextInfo
Definition: EGraphRec.h:94
void AddInfoFrame(TGVerticalFrame *workframe)
Definition: EGraphRec.cxx:562
void SetProcBrick(ProcBrick_t &procBrick)
Definition: EGraphRec.h:65
TGNumberEntry * fEntrySBFirstPlate
Definition: EGraphRec.h:104
void StartScanBack()
Definition: EGraphRec.cxx:82
TGLayoutHints * fLayout1
Definition: EGraphRec.h:86
void ReadCmdConfig()
Definition: EGraphRec.cxx:704
void SetProcId(ProcId_t &procId)
Definition: EGraphRec.h:64
TGCheckButton * fCheckUseSegPar
Definition: EGraphRec.h:116
void DrawEvent()
Definition: EGraphRec.cxx:142
void ZoomOut()
Definition: EGraphRec.cxx:614
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:58
Bool_t IsSBToLink() const
Definition: EGraphRec.h:52
TRootEmbeddedCanvas * fDisplayHits
Definition: EGraphRec.h:122
ProcBrick_t fProcBrick
Definition: EGraphRec.h:81
TThread * fThSBProcess
Definition: EGraphRec.h:83
EdbScanProc * GetScanProc() const
Definition: EGraphRec.h:56
TGTextButton * fButtonSBStart
Definition: EGraphRec.h:107
TGNumberEntry * fEntryProcVer
Definition: EGraphRec.h:93
void WriteInfo()
Definition: EGraphRec.cxx:624
void SetTree(TTree *tree)
Definition: EGraphRec.cxx:167
TGCheckButton * fCheckSBAlgn
Definition: EGraphRec.h:110
void AddVertexRecFrame(TGTab *worktab)
Definition: EGraphRec.cxx:456
EdbScanSet * fScanSet
Definition: EGraphRec.h:78
ProcId_t GetProcId() const
Definition: EGraphRec.h:55
void AddProcListFrame(TGVerticalFrame *workframe)
Definition: EGraphRec.cxx:231
void ResetProcess()
Definition: EGraphRec.cxx:66
TGLayoutHints * fLayout3
Definition: EGraphRec.h:88
EdbPattern * GetPredTracks() const
Definition: EGraphRec.h:58
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
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
TGCheckButton * fCheckSBLink
Definition: EGraphRec.h:109
TGTextButton * fTextProcEvent
Definition: EGraphRec.h:100
void AddRecOptFrame(TGTab *worktab)
Definition: EGraphRec.cxx:265
void AddCanvasFrame(TGTab *worktab)
Definition: EGraphRec.cxx:540
TRootEmbeddedCanvas * fDisplayFedra
Definition: EGraphRec.h:124
void AddProcBrickFrame(TGVerticalFrame *workframe)
Definition: EGraphRec.cxx:192
TThread * GetThSBProcess() const
Definition: EGraphRec.h:60
void ReadSBPred()
Definition: EGraphRec.cxx:574
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
TGTextButton * GetButtonSBStart()
Definition: EGraphRec.h:61
void InitScanSet()
Definition: EGraphRec.cxx:633
TGCheckButton * fCheckProcVrtx
Definition: EGraphRec.h:99
EGraphRecProc * fRecProc
Definition: EGraphRec.h:69
virtual ~EGraphRec()
Definition: EGraphRec.cxx:47
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:654
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:160
FEDRA Event Display.
Definition: EdbDisplay.h:22
Definition: EdbPVRec.h:148
Definition: EdbPattern.h:273
scanned data processing
Definition: EdbScanProc.h:12
Definition: EdbScanSet.h:11
Definition: EdbVertex.h:194
Base scanning data object: entry into Run tree.
Definition: EdbView.h:134
Definition: EGraphRecProc.h:15
Definition: EGraphRecProc.h:25
Definition: EGraphRecProc.h:34