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 RunManagerMT;
10 class SimTrackManager;
11 class RunAction;
12 class EventAction;
13 class TrackingAction;
14 class SteppingAction;
15 class G4SimEvent;
16 
18 public:
20 
22 
24 
25  // Needed because for workers SumRunInterface sits in TLS, while
26  // RunManagerMTWorkers are members of edm::stream OscarMTProducer
28 
29  void Connect(RunAction*);
30 
31  void Connect(EventAction*);
32 
33  void Connect(TrackingAction*);
34 
35  void Connect(SteppingAction*);
36 
38 
39  void abortEvent();
40 
41  void abortRun(bool softAbort);
42 
44 
45 private:
48 
50 
51  bool m_isMaster;
52 };
53 
54 #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:60
SimRunInterface::setRunManagerMTWorker
void setRunManagerMTWorker(RunManagerMTWorker *run)
Definition: SimRunInterface.cc:24
SteppingAction
Definition: SteppingAction.h:32
SimRunInterface::SimRunInterface
SimRunInterface(RunManagerMT *run, bool master)
Definition: SimRunInterface.cc:12
SimRunInterface::m_SimTrackManager
SimTrackManager * m_SimTrackManager
Definition: SimRunInterface.h:49
TrackingAction
Definition: TrackingAction.h:16
SimRunInterface::Connect
void Connect(RunAction *)
Definition: SimRunInterface.cc:26
RunManagerMT
Definition: RunManagerMT.h:50
SimRunInterface::GetSimTrackManager
SimTrackManager * GetSimTrackManager()
Definition: SimRunInterface.cc:52
RunAction
Definition: RunAction.h:15
SimRunInterface::~SimRunInterface
~SimRunInterface()
Definition: SimRunInterface.cc:22
SimRunInterface::m_isMaster
bool m_isMaster
Definition: SimRunInterface.h:51
SimRunInterface::abortEvent
void abortEvent()
Definition: SimRunInterface.cc:54
RunManagerMTWorker
Definition: RunManagerMTWorker.h:48
writedatasetfile.run
run
Definition: writedatasetfile.py:27
SimRunInterface::m_runManagerMT
RunManagerMT * m_runManagerMT
Definition: SimRunInterface.h:46
SimRunInterface::simEvent
G4SimEvent * simEvent()
Definition: SimRunInterface.cc:66
SimRunInterface::m_runManagerMTWorker
RunManagerMTWorker * m_runManagerMTWorker
Definition: SimRunInterface.h:47
volumeBasedMagneticField_160812_cfi.master
master
Definition: volumeBasedMagneticField_160812_cfi.py:60
SimRunInterface
Definition: SimRunInterface.h:17