CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
EveService.h
Go to the documentation of this file.
1 #ifndef Fireworks_Geometry_EveService_h
2 #define Fireworks_Geometry_EveService_h
3 // -*- C++ -*-
4 //
5 // Package: Fireworks/Eve
6 // Class : EveService
7 //
16 //
17 // Original Author: Matevz Tadel
18 // Created: Fri Jun 25 18:56:52 CEST 2010
19 //
20 
21 #include <string>
22 #include <Rtypes.h>
23 
24 namespace edm {
25  class ParameterSet;
26  class ActivityRegistry;
27  class Run;
28  class Event;
29  class EventSetup;
30  class StreamContext;
31  class GlobalContext;
32 } // namespace edm
33 
34 class TEveManager;
35 class TEveElement;
36 class TEveMagField;
37 class TEveTrackPropagator;
38 class TRint;
39 
40 class TGTextButton;
41 class TGLabel;
42 
43 class EveService {
44 public:
46  virtual ~EveService();
47 
48  // ---------- const member functions ---------------------
49 
50  // ---------- static member functions --------------------
51 
52  // ---------- member functions ---------------------------
53 
54  void postBeginJob();
55  void postEndJob();
56 
58 
59  void postEvent(edm::StreamContext const&);
60 
61  void display(const std::string& info = "");
62 
63  TEveManager* getManager();
64  TEveMagField* getMagField();
65  void setupFieldForPropagator(TEveTrackPropagator* prop);
66 
67  // Shortcuts for adding top level event and geometry elements.
68  void AddElement(TEveElement* el);
69  void AddGlobalElement(TEveElement* el);
70 
71  // GUI slots -- must be public so that ROOT can call them via CINT.
72 
73  void slotExit();
74  void slotNextEvent();
75  void slotStep();
76  void slotContinue();
77 
78 protected:
80 
81 private:
82  EveService(const EveService&); // stop default
83  const EveService& operator=(const EveService&); // stop default
84 
85  // ---------- member data --------------------------------
86 
87  TEveManager* m_EveManager;
88  TRint* m_Rint;
89 
90  TEveMagField* m_MagField;
91 
94 
95  TGTextButton* m_ContinueButton;
96  TGTextButton* m_StepButton;
97  TGLabel* m_StepLabel;
98 
99  ClassDef(EveService, 0);
100 };
101 
102 #endif
void postEvent(edm::StreamContext const &)
Definition: EveService.cc:213
void postBeginJob()
Definition: EveService.cc:165
static const TGPicture * info(bool iBackgroundIsBlack)
TGLabel * m_StepLabel
Definition: EveService.h:97
void slotContinue()
Definition: EveService.cc:337
EveService(const edm::ParameterSet &, edm::ActivityRegistry &)
Definition: EveService.cc:111
void postEndJob()
Definition: EveService.cc:172
TGTextButton * m_ContinueButton
Definition: EveService.h:95
void slotExit()
Definition: EveService.cc:318
const EveService & operator=(const EveService &)
TEveMagField * getMagField()
Definition: EveService.cc:254
TGTextButton * m_StepButton
Definition: EveService.h:96
void slotStep()
Definition: EveService.cc:342
void display(const std::string &info="")
Definition: EveService.cc:232
bool m_ShowEvent
Definition: EveService.h:93
ClassDef(EveService, 0)
void postGlobalBeginRun(edm::GlobalContext const &)
Definition: EveService.cc:180
TEveManager * getManager()
Definition: EveService.cc:249
TEveManager * m_EveManager
Definition: EveService.h:87
void createEventNavigationGUI()
Definition: EveService.cc:285
void setupFieldForPropagator(TEveTrackPropagator *prop)
Definition: EveService.cc:255
bool m_AllowStep
Definition: EveService.h:92
void AddElement(TEveElement *el)
Definition: EveService.cc:261
virtual ~EveService()
Definition: EveService.cc:155
void slotNextEvent()
Definition: EveService.cc:331
TEveMagField * m_MagField
Definition: EveService.h:90
void AddGlobalElement(TEveElement *el)
Definition: EveService.cc:263
TRint * m_Rint
Definition: EveService.h:88