SimG4Core
Application
interface
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
;
9
class
RunManagerMTWorker
;
10
class
SimTrackManager
;
11
class
RunAction
;
12
class
EventAction
;
13
class
TrackingAction
;
14
class
SteppingAction
;
15
class
G4SimEvent
;
16
17
class
SimRunInterface
{
18
public
:
19
SimRunInterface
(
RunManagerMT
*
run
,
bool
master
);
20
21
SimRunInterface
(
RunManagerMTWorker
*
run
,
bool
master
);
22
23
~SimRunInterface
();
24
25
// Needed because for workers SumRunInterface sits in TLS, while
26
// RunManagerMTWorkers are members of edm::stream OscarMTProducer
27
void
setRunManagerMTWorker
(
RunManagerMTWorker
*
run
);
28
29
void
Connect
(
RunAction
*);
30
31
void
Connect
(
EventAction
*);
32
33
void
Connect
(
TrackingAction
*);
34
35
void
Connect
(
SteppingAction
*);
36
37
SimTrackManager
*
GetSimTrackManager
();
38
39
void
abortEvent
();
40
41
void
abortRun
(
bool
softAbort);
42
43
G4SimEvent
*
simEvent
();
44
45
private
:
46
RunManagerMT
*
m_runManagerMT
;
47
RunManagerMTWorker
*
m_runManagerMTWorker
;
48
49
SimTrackManager
*
m_SimTrackManager
;
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:31
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:55
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:41
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
Generated for CMSSW Reference Manual by
1.8.16