CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros 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 {
26  class ParameterSet;
27  class ActivityRegistry;
28  class Run;
29  class Event;
30  class EventSetup;
31  class StreamContext;
32  class GlobalContext;
33 }
34 
35 class TEveManager;
36 class TEveElement;
37 class TEveMagField;
38 class TEveTrackPropagator;
39 class TRint;
40 
41 class TGTextButton;
42 class TGLabel;
43 
45 {
46 public:
48  virtual ~EveService();
49 
50  // ---------- const member functions ---------------------
51 
52  // ---------- static member functions --------------------
53 
54  // ---------- member functions ---------------------------
55 
56  void postBeginJob();
57  void postEndJob();
58 
60 
61  void postEvent(edm::StreamContext const&);
62 
63  void display(const std::string& info="");
64 
65  TEveManager* getManager();
66  TEveMagField* getMagField();
67  void setupFieldForPropagator(TEveTrackPropagator* prop);
68 
69  // Shortcuts for adding top level event and geometry elements.
70  void AddElement(TEveElement* el);
71  void AddGlobalElement(TEveElement* el);
72 
73  // GUI slots -- must be public so that ROOT can call them via CINT.
74 
75  void slotExit();
76  void slotNextEvent();
77  void slotStep();
78  void slotContinue();
79 
80 protected:
82 
83 private:
84  EveService(const EveService&); // stop default
85  const EveService& operator=(const EveService&); // stop default
86 
87  // ---------- member data --------------------------------
88 
89  TEveManager *m_EveManager;
90  TRint *m_Rint;
91 
92  TEveMagField *m_MagField;
93 
96 
97  TGTextButton *m_ContinueButton;
98  TGTextButton *m_StepButton;
99  TGLabel *m_StepLabel;
100 
101  ClassDef(EveService, 0);
102 };
103 
104 #endif
void postEvent(edm::StreamContext const &)
Definition: EveService.cc:229
void postBeginJob()
Definition: EveService.cc:178
static const TGPicture * info(bool iBackgroundIsBlack)
TGLabel * m_StepLabel
Definition: EveService.h:99
void slotContinue()
Definition: EveService.cc:378
EveService(const edm::ParameterSet &, edm::ActivityRegistry &)
Definition: EveService.cc:125
void postEndJob()
Definition: EveService.cc:186
TGTextButton * m_ContinueButton
Definition: EveService.h:97
void slotExit()
Definition: EveService.cc:357
const EveService & operator=(const EveService &)
TEveMagField * getMagField()
Definition: EveService.cc:275
TGTextButton * m_StepButton
Definition: EveService.h:98
void slotStep()
Definition: EveService.cc:384
void display(const std::string &info="")
Definition: EveService.cc:250
bool m_ShowEvent
Definition: EveService.h:95
ClassDef(EveService, 0)
void postGlobalBeginRun(edm::GlobalContext const &)
Definition: EveService.cc:195
TEveManager * getManager()
Definition: EveService.cc:269
TEveManager * m_EveManager
Definition: EveService.h:89
void createEventNavigationGUI()
Definition: EveService.cc:321
void setupFieldForPropagator(TEveTrackPropagator *prop)
Definition: EveService.cc:279
bool m_AllowStep
Definition: EveService.h:94
void AddElement(TEveElement *el)
Definition: EveService.cc:288
virtual ~EveService()
Definition: EveService.cc:166
void slotNextEvent()
Definition: EveService.cc:371
TEveMagField * m_MagField
Definition: EveService.h:92
void AddGlobalElement(TEveElement *el)
Definition: EveService.cc:293
TRint * m_Rint
Definition: EveService.h:90