1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
|
#ifndef Fireworks_Geometry_EveService_h
#define Fireworks_Geometry_EveService_h
// -*- C++ -*-
//
// Package: Fireworks/Eve
// Class : EveService
//
/**\class EveService EveService.h Fireworks/Geometry/interface/EveService.h
Description: [one line class summary]
Usage:
<usage>
*/
//
// Original Author: Matevz Tadel
// Created: Fri Jun 25 18:56:52 CEST 2010
//
#include <string>
#include <Rtypes.h>
namespace edm {
class ParameterSet;
class ActivityRegistry;
class Run;
class Event;
class EventSetup;
class StreamContext;
class GlobalContext;
} // namespace edm
class TEveManager;
class TEveElement;
class TEveMagField;
class TEveTrackPropagator;
class TRint;
class TGTextButton;
class TGLabel;
class EveService {
public:
EveService(const edm::ParameterSet&, edm::ActivityRegistry&);
virtual ~EveService();
// ---------- const member functions ---------------------
// ---------- static member functions --------------------
// ---------- member functions ---------------------------
void postBeginJob();
void postEndJob();
void postGlobalBeginRun(edm::GlobalContext const&);
void postEvent(edm::StreamContext const&);
void display(const std::string& info = "");
TEveManager* getManager();
TEveMagField* getMagField();
void setupFieldForPropagator(TEveTrackPropagator* prop);
// Shortcuts for adding top level event and geometry elements.
void AddElement(TEveElement* el);
void AddGlobalElement(TEveElement* el);
// GUI slots -- must be public so that ROOT can call them via CINT.
void slotExit();
void slotNextEvent();
void slotStep();
void slotContinue();
protected:
void createEventNavigationGUI();
private:
EveService(const EveService&); // stop default
const EveService& operator=(const EveService&); // stop default
// ---------- member data --------------------------------
TEveManager* m_EveManager;
TRint* m_Rint;
TEveMagField* m_MagField;
bool m_AllowStep;
bool m_ShowEvent;
TGTextButton* m_ContinueButton;
TGTextButton* m_StepButton;
TGLabel* m_StepLabel;
ClassDef(EveService, 0);
};
#endif
|