CMS 3D CMS Logo

SimRunInterface.h
Go to the documentation of this file.
1 #ifndef SimG4Core_SimRunInterface_h
2 #define SimG4Core_SimRunInterface_h 1
3 
4 // This class is needed to provide an interface
5 // between Geant4 user actions and CMS SIM
6 // infrastructure both for sequentional and MT runs
7 
8 class RunManager;
9 class RunManagerMT;
10 class RunManagerMTWorker;
11 class SimTrackManager;
12 class RunAction;
13 class EventAction;
14 class TrackingAction;
15 class SteppingAction;
16 class G4SimEvent;
17 
19 public:
21 
23 
25 
27 
28  // Needed because for workers SumRunInterface sits in TLS, while
29  // RunManagerMTWorkers are members of edm::stream OscarMTProducer
31 
32  void Connect(RunAction*);
33 
34  void Connect(EventAction*);
35 
36  void Connect(TrackingAction*);
37 
38  void Connect(SteppingAction*);
39 
41 
42  void abortEvent();
43 
44  void abortRun(bool softAbort);
45 
47 
48 private:
52 
54 
55  bool m_isMaster;
56 };
57 
58 #endif
SimTrackManager
Definition: SimTrackManager.h:35
EventAction
Definition: EventAction.h:23
G4SimEvent
Definition: G4SimEvent.h:14
SimRunInterface::abortRun
void abortRun(bool softAbort)
Definition: SimRunInterface.cc:90
SimRunInterface::setRunManagerMTWorker
void setRunManagerMTWorker(RunManagerMTWorker *run)
Definition: SimRunInterface.cc:44
SteppingAction
Definition: SteppingAction.h:30
SimRunInterface::m_SimTrackManager
SimTrackManager * m_SimTrackManager
Definition: SimRunInterface.h:53
TrackingAction
Definition: TrackingAction.h:16
SimRunInterface::SimRunInterface
SimRunInterface(RunManager *run, bool master)
Definition: SimRunInterface.cc:13
SimRunInterface::Connect
void Connect(RunAction *)
Definition: SimRunInterface.cc:46
RunManager
Definition: RunManager.h:54
RunManagerMT
Definition: RunManagerMT.h:55
SimRunInterface::GetSimTrackManager
SimTrackManager * GetSimTrackManager()
Definition: SimRunInterface.cc:80
RunAction
Definition: RunAction.h:15
SimRunInterface::~SimRunInterface
~SimRunInterface()
Definition: SimRunInterface.cc:42
SimRunInterface::m_isMaster
bool m_isMaster
Definition: SimRunInterface.h:55
SimRunInterface::m_runManager
RunManager * m_runManager
Definition: SimRunInterface.h:49
SimRunInterface::abortEvent
void abortEvent()
Definition: SimRunInterface.cc:82
RunManagerMTWorker
Definition: RunManagerMTWorker.h:41
writedatasetfile.run
run
Definition: writedatasetfile.py:27
SimRunInterface::m_runManagerMT
RunManagerMT * m_runManagerMT
Definition: SimRunInterface.h:50
SimRunInterface::simEvent
G4SimEvent * simEvent()
Definition: SimRunInterface.cc:98
SimRunInterface::m_runManagerMTWorker
RunManagerMTWorker * m_runManagerMTWorker
Definition: SimRunInterface.h:51
volumeBasedMagneticField_160812_cfi.master
master
Definition: volumeBasedMagneticField_160812_cfi.py:60
SimRunInterface
Definition: SimRunInterface.h:18