CMS 3D CMS Logo

FWFFLooper.h
Go to the documentation of this file.
1 #ifndef Fireworks_Core_FWFFLooper_h
2 #define Fireworks_Core_FWFFLooper_h
3 
11 #include <string>
12 #include <Rtypes.h>
13 #include <memory>
14 
15 namespace edm {
16  class ParameterSet;
17  class ActivityRegistry;
18  class Run;
19  class Event;
20  class EventSetup;
22  class ModuleChanger;
23  class ParameterSet;
24  class LuminosityBlockPrincipal;
25 } // namespace edm
26 
27 class FWFFNavigator;
29 class FWPathsPopup;
30 
31 namespace fireworks {
32  class Context;
33 }
34 
35 class TEveManager;
36 class TEveElement;
37 class TEveMagField;
38 class TEveTrackPropagator;
39 class TRint;
40 class TGWindow;
41 class FWRecoGeometry;
43 class RunInfo;
44 class RunInfoRcd;
45 class TGeoManager;
46 class DisplayGeomRecord;
47 
49 public:
51  ~FWFFLooper() override;
52 
53  // ---------- const member functions ---------------------
54 
55  // ---------- static member functions --------------------
56 
57  // ---------- member functions ---------------------------
58 
59  void attachTo(edm::ActivityRegistry &) override;
60  void postBeginJob();
61  void postEndJob();
62 
63  void beginRun(const edm::Run &, const edm::EventSetup &) override;
64 
65  void display(const std::string &info = "");
66 
67  TEveMagField *getMagField();
68  void setupFieldForPropagator(TEveTrackPropagator *prop);
69 
70  void checkPosition() override;
71  void stopPlaying() override;
72  void autoLoadNewEvent() override;
73 
74  void showPathsGUI(const TGWindow *p);
75 
76  void quit() override;
77 
78  void startingNewLoop(unsigned int) override;
79  edm::EDLooperBase::Status endOfLoop(const edm::EventSetup &, unsigned int) override;
81  const edm::EventSetup &,
82  edm::ProcessingController &) override;
83  void requestChanges(const std::string &, const edm::ParameterSet &);
84 
85  void remakeGeometry(const DisplayGeomRecord &dgRec);
86 
87 private:
88  FWFFLooper(const FWFFLooper &); // stop default
89  const FWFFLooper &operator=(const FWFFLooper &); // stop default
90 
91  void loadDefaultGeometryFile(void);
92 
94  std::unique_ptr<FWFFNavigator> m_navigator;
95  std::unique_ptr<FWFFMetadataManager> m_metadataManager;
96  std::unique_ptr<fireworks::Context> m_context;
97 
98  TEveManager *m_EveManager;
99  TRint *m_Rint;
100 
101  TEveMagField *m_MagField;
102 
107 
108  typedef std::map<std::string, edm::ParameterSet> ModuleChanges;
114 
119 };
120 
121 #endif
const FWFFLooper & operator=(const FWFFLooper &)
edm::ESWatcher< DisplayGeomRecord > m_geomWatcher
Definition: FWFFLooper.h:115
void postBeginJob()
TEveMagField * getMagField()
Definition: FWFFLooper.cc:404
edm::EDLooperBase::Status endOfLoop(const edm::EventSetup &, unsigned int) override
Definition: FWFFLooper.cc:423
bool m_ShowEvent
Definition: FWFFLooper.h:104
static const TGPicture * info(bool iBackgroundIsBlack)
bool m_isLastEvent
Definition: FWFFLooper.h:113
void setupFieldForPropagator(TEveTrackPropagator *prop)
Definition: FWFFLooper.cc:406
const edm::ESGetToken< RunInfo, RunInfoRcd > m_runInfoToken
Definition: FWFFLooper.h:117
ModuleChanges m_scheduledChanges
Definition: FWFFLooper.h:109
void autoLoadNewEvent() override
Definition: FWFFLooper.cc:240
TEveManager * m_EveManager
Definition: FWFFLooper.h:98
void startingNewLoop(unsigned int) override
Definition: FWFFLooper.cc:192
FWPathsPopup * m_pathsGUI
Definition: FWFFLooper.h:106
TEveMagField * m_MagField
Definition: FWFFLooper.h:101
void attachTo(edm::ActivityRegistry &) override
Override this method if you need to monitor the state of the processing.
Definition: FWFFLooper.cc:178
void postEndJob()
Definition: FWFFLooper.cc:213
void remakeGeometry(const DisplayGeomRecord &dgRec)
Definition: FWFFLooper.cc:455
FWFFLooper(const edm::ParameterSet &)
Definition: FWFFLooper.cc:116
void loadDefaultGeometryFile(void)
Definition: FWFFLooper.cc:172
void quit() override
Definition: FWFFLooper.cc:408
void requestChanges(const std::string &, const edm::ParameterSet &)
Definition: FWFFLooper.cc:449
edm::EDLooperBase::Status duringLoop(const edm::Event &, const edm::EventSetup &, edm::ProcessingController &) override
Definition: FWFFLooper.cc:333
void display(const std::string &info="")
Definition: FWFFLooper.cc:390
bool m_autoReload
Definition: FWFFLooper.h:111
void beginRun(const edm::Run &, const edm::EventSetup &) override
Called after all event modules have processed the begin of a Run.
Definition: FWFFLooper.cc:267
std::unique_ptr< FWFFMetadataManager > m_metadataManager
Definition: FWFFLooper.h:95
TRint * m_Rint
Definition: FWFFLooper.h:99
bool m_firstTime
Definition: FWFFLooper.h:105
bool m_isFirstEvent
Definition: FWFFLooper.h:112
void checkPosition() override
Definition: FWFFLooper.cc:218
edm::Service< FWFFHelper > m_appHelper
Definition: FWFFLooper.h:93
std::unique_ptr< FWFFNavigator > m_navigator
Definition: FWFFLooper.h:94
const edm::ESGetToken< TGeoManager, DisplayGeomRecord > m_displayGeomToken
Definition: FWFFLooper.h:118
~FWFFLooper() override
Definition: FWFFLooper.cc:186
bool m_AllowStep
Definition: FWFFLooper.h:103
HLT enums.
void stopPlaying() override
Definition: FWFFLooper.cc:256
std::unique_ptr< fireworks::Context > m_context
Definition: FWFFLooper.h:96
void showPathsGUI(const TGWindow *p)
Definition: FWFFLooper.cc:437
std::map< std::string, edm::ParameterSet > ModuleChanges
Definition: FWFFLooper.h:108
edm::EventID m_nextEventId
Definition: FWFFLooper.h:110
const edm::ESGetToken< FWRecoGeometry, FWRecoGeometryRecord > m_recoGeomToken
Definition: FWFFLooper.h:116
Definition: Run.h:45