BBQ
TBBQEventManager.h
Go to the documentation of this file.
1 #ifndef __TBBQEVENTMANAGER_H__
2 #define __TBBQEVENTMANAGER_H__
3 
4 //------------------------------------------------------------------------------
5 // Ref: http://root.cern.ch/root/html/tutorials/eve/alice_vsd.C.html
6 //------------------------------------------------------------------------------
7 
8 // C++
9 
10 #include <string>
11 
12 // ROOT
13 
14 class TGTextEntry;
15 
16 #include "TEveEventManager.h"
17 
18 #include "RQ_OBJECT.h"
19 
20 // LCIO
21 
22 namespace EVENT {
23  class LCEvent;
24 }
25 
26 namespace IO {
27  class LCReader;
28 }
29 
30 //
31 
32 class VisTPC;
33 
44 class TBBQEventManager : public TEveEventManager {
45  RQ_OBJECT("TBBQEventManager")
46 public:
48  IO::LCReader* fLCReader;
49  std::string fCurrentFile;
50  EVENT::LCEvent* fCurrentEvent;
51 
52  TGTextEntry* fRunNumberEntry;
53  TGTextEntry* fEventNumberEntry;
54 
57 
58 public:
59  TBBQEventManager(VisTPC*& visTPC);
60 
61  //---------------------------------------------------------------------------
63 
64 
65  EVENT::LCEvent* getCurrentEvent() {return fCurrentEvent;}
66 
68 
71  void readFile(const std::string& filePath, bool clearEventCollections = true);
72 
73  //---------------------------------------------------------------------------
75 
76 
77  void DropEvent();
78  void GotoEvent(int eventNumber);
79  void GotoEvent(const char*);
80  void NextEvent();
81  void PrevEvent();
82  void ReloadEvent();
83 
85 
86  //---------------------------------------------------------------------------
88 
89 
90  void handleEventEntry();
91  void handleRunEntry();
92 
94 
95  //---------------------------------------------------------------------------
97 
98 
99  void EventChanged();
100  void EventChanged(int); //*SIGNAL*
101  void EventChanged(const char*); //*SIGNAL*
102 
103  void RunChanged();
104  void RunChanged(int); //*SIGNAL*
105  void RunChanged(const char*); //*SIGNAL*
106 
108 
109 protected:
110 
111 private:
113 };
114 
115 #endif
void readFile(const std::string &filePath, bool clearEventCollections=true)
Read LCIO data file.
ClassDef(TBBQEventManager, 1)
TGTextEntry * fRunNumberEntry
EVENT::LCEvent * fCurrentEvent
Main visualization class. It is used to draw GEAR detector geometries and LCIO data. It is a self-contained class that depends only on ROOT, TEve, GEAR and LCIO. This means you can use this class outside and independent of BBQ.
Definition: vistpc.h:65
A derived class of TEveEventManager that governs the navigation through events.
std::string fCurrentFile
IO::LCReader * fLCReader
TBBQEventManager(VisTPC *&visTPC)
TGTextEntry * fEventNumberEntry
void GotoEvent(int eventNumber)
EVENT::LCEvent * getCurrentEvent()