BOSS 8.0.0
BESIII Offline Software System
Loading...
Searching...
No Matches
G4Svc Class Reference

#include <G4Svc.h>

Inheritance diagram for G4Svc:

Public Member Functions

 G4Svc (const std::string &name, ISvcLocator *svc)
virtual ~G4Svc ()
virtual StatusCode initialize ()
virtual StatusCode finalize ()
G4RunManager * runMgr ()
void SetUserInitialization (G4VUserDetectorConstruction *userInit)
void SetUserInitialization (G4VUserPhysicsList *physInit)
void SetUserInitialization (G4VUserActionInitialization *actionInit)
const G4Event * GetCurrentEvent () const
const G4Run * GetCurrentRun () const
G4UImanager * uiMgr ()
void StartUISession ()
double GetBeamPosX ()
double GetBeamPosY ()
double GetBeamPosZ ()
double GetBeamSizeX ()
double GetBeamSizeY ()
double GetBeamSizeZ ()
double GetBeamShiftPx ()
double GetBeamShiftPy ()
double GetBeamShiftPz ()
double GetBeamStartTime ()
double GetBeamDeltaTime ()
double GetNBunch ()
double GetBunchTimeSigma ()
double GetBeamTime ()
void SetBeamTime (double value)
std::string GetMdcNoiseFile ()
double GetBeamAngle ()
bool GetBoostLab ()
bool GetSetBeamShift ()
int GetMdcDataInput ()
int GetMdcDedxFlag ()
int GetMdcNewSimOpt ()
NTuple::Tuple * GetTupleMdc ()
void SetTupleMdc (NTuple::Tuple *tuple)
NTuple::Tuple * GetTupleTof1 ()
void SetTupleTof1 (NTuple::Tuple *tuple)
NTuple::Tuple * GetTupleTof2 ()
void SetTupleTof2 (NTuple::Tuple *tuple)
NTuple::Tuple * GetTupleTof3 ()
void SetTupleTof3 (NTuple::Tuple *tuple)
NTuple::Tuple * GetTupleEmc1 ()
void SetTupleEmc1 (NTuple::Tuple *tuple)
NTuple::Tuple * GetTupleEmc2 ()
void SetTupleEmc2 (NTuple::Tuple *tuple)
NTuple::Tuple * GetTupleMuc ()
void SetTupleMuc (NTuple::Tuple *tuple)
bool MdcRootFlag ()
bool TofRootFlag ()
bool EmcRootFlag ()
bool MucRootFlag ()
bool TofSaturationFlag ()
bool EmcLightOutput ()
double EmcIncoherentNoise ()
double EmcCoherentNoise ()
double EmcNoiseMean ()
double EmcNoiseSigma ()
double EmcNoiseThreshold ()
int EmcNoiseLevel ()
int EmcTime ()
int EmcElecSaturation ()
int EmcElecSatuDead ()
int MucNoiseMode ()
int LogLevel ()
void G4Init ()
void RunInitialize ()
void RunTerminate ()
void SimulateEvents (int)

Friends

class SvcFactory< G4Svc >

Detailed Description

Definition at line 31 of file G4Svc.h.

Constructor & Destructor Documentation

◆ G4Svc()

G4Svc::G4Svc ( const std::string & name,
ISvcLocator * svc )

Definition at line 36 of file G4Svc.cpp.

37 : base_class( name, svc )
38 , p_runMgr( 0 )
39 , p_uiMgr( 0 )
40#ifdef G4VIS_USE
41 , p_visMgr( 0 )
42#endif
43 , _init( false )
44 , m_beamTime( 0 ) {
45 // declareProperty( "PhysicsList", m_PhysicsList="none");
46 // declareProperty( "DefaultPhysicsCut", m_PhysicsCut=-1.);
47 declareProperty( "Visualize", m_vis = false );
48 // declareProperty( "VisType", m_visType="VRML1FILE");
49
50 declareProperty( "RunVerbosity", m_runVerb = 0 );
51 declareProperty( "EventVerbosity", m_eventVerb = 0 );
52 declareProperty( "TrackingVerbosity", m_trackVerb = 0 );
53
54 declareProperty( "FADSmacro", m_macroName = "none" );
55 declareProperty( "MdcNoiseFile", m_mdcNoiseFile = "none" );
56
57 // declareProperty( "SaveHits", m_saveHits=true);
58 // declareProperty( "SaveTracks", m_saveTracks=false);
59 declareProperty( "LogLevel", m_logLevel = 6 );
60
61 declareProperty( "InteractiveG4", m_interactiveG4 = false );
62
63 declareProperty( "BesGenAction", m_besGenAction = false );
64
65 declareProperty( "BeamPosX", m_beamPosX = 0 );
66 declareProperty( "BeamPosY", m_beamPosY = 0 );
67 declareProperty( "BeamPosZ", m_beamPosZ = 0 );
68
69 declareProperty( "BeamSizeX", m_beamSizeX = 10 );
70 declareProperty( "BeamSizeY", m_beamSizeY = 20 );
71 declareProperty( "BeamSizeZ", m_beamSizeZ = 30 );
72
73 declareProperty( "BeamStartTime", m_beamStartTime = 0 );
74 declareProperty( "BeamDeltaTime", m_beamDeltaTime = 0 );
75 declareProperty( "NBunch", m_nBunch = 1 );
76
77 declareProperty( "BunchTimeSigma", m_bunchTimeSigma = 0 );
78
79 declareProperty( "MdcDataInput", m_mdcDataInput = 1 );
80 declareProperty( "MdcDedxFlag", m_mdcDedxFlag = 1 );
81 declareProperty( "MdcNewSimOpt",
82 m_mdcNewSimOpt = 1 ); // (0:Old MdcSim, 1:New) liaoyp -- 2023.10.30
83
84 declareProperty( "BoostLab", m_boostLab = false );
85 declareProperty( "BeamAngle", m_beamAngle = 11 );
86
87 declareProperty( "SetBeamShift", m_setBeamShift = false );
88 declareProperty( "BeamShiftPx", m_beamShiftPx = 39.45 ); // in unit MeV
89 declareProperty( "BeamShiftPy", m_beamShiftPy = -0.98 );
90 declareProperty( "BeamShiftPz", m_beamShiftPz = 3.70 );
91
92 declareProperty( "MdcRootFlag", m_mdcRootFlag = false );
93 declareProperty( "TofRootFlag", m_tofRootFlag = false );
94 declareProperty( "EmcRootFlag", m_emcRootFlag = false );
95 declareProperty( "MucRootFlag", m_mucRootFlag = false );
96
97 // Switch for ADC Saturation in Bhabha events
98 declareProperty( "TofSaturationFlag", m_tofSaturationFlag = true );
99
100 declareProperty( "EmcLightOutput", m_emcLightOutput = true );
101 declareProperty( "EmcIncoherentNoise", m_emcIncoherentNoise = 0.2 );
102 declareProperty( "EmcCoherentNoise", m_emcCoherentNoise = 0. );
103 declareProperty( "EmcNoiseMean", m_emcNoiseMean = 1.16 );
104 declareProperty( "EmcNoiseSigma", m_emcNoiseSigma = 0.23 );
105 declareProperty( "EmcNoiseThreshold", m_emcNoiseThreshold = 0.5 );
106 declareProperty( "EmcNoiseLevel", m_emcNoiseLevel = 3 );
107 declareProperty( "EmcTime", m_emcTime = 20 );
108 declareProperty( "EmcELecSaturation", m_emcELecSaturation = 1 );
109 declareProperty( "EmcELecSatuDead", m_emcELecSatuDead = 0 );
110 declareProperty( "MucNoiseMode", m_mucNoiseMode = 1 );
111}

Referenced by G4Svc(), and SvcFactory< G4Svc >.

◆ ~G4Svc()

G4Svc::~G4Svc ( )
virtual

Definition at line 115 of file G4Svc.cpp.

115 {
116 // std::cout<<"G4Svc::~G4Svc()"<<std::endl;
117 // if (p_runMgr != 0) {
118 // delete p_runMgr;
119 // }
120 // #ifdef G4VIS_USE
121 // if (p_visMgr != 0) {
122 // delete p_visMgr;
123 // }
124 // #endif
125}

Member Function Documentation

◆ EmcCoherentNoise()

double G4Svc::EmcCoherentNoise ( )
inline

Definition at line 132 of file G4Svc.h.

132{ return m_emcCoherentNoise; }

◆ EmcElecSatuDead()

int G4Svc::EmcElecSatuDead ( )
inline

Definition at line 139 of file G4Svc.h.

139{ return m_emcELecSatuDead; }

◆ EmcElecSaturation()

int G4Svc::EmcElecSaturation ( )
inline

Definition at line 138 of file G4Svc.h.

138{ return m_emcELecSaturation; }

◆ EmcIncoherentNoise()

double G4Svc::EmcIncoherentNoise ( )
inline

Definition at line 131 of file G4Svc.h.

131{ return m_emcIncoherentNoise; }

◆ EmcLightOutput()

bool G4Svc::EmcLightOutput ( )
inline

Definition at line 130 of file G4Svc.h.

130{ return m_emcLightOutput; }

◆ EmcNoiseLevel()

int G4Svc::EmcNoiseLevel ( )
inline

Definition at line 136 of file G4Svc.h.

136{ return m_emcNoiseLevel; }

◆ EmcNoiseMean()

double G4Svc::EmcNoiseMean ( )
inline

Definition at line 133 of file G4Svc.h.

133{ return m_emcNoiseMean; }

◆ EmcNoiseSigma()

double G4Svc::EmcNoiseSigma ( )
inline

Definition at line 134 of file G4Svc.h.

134{ return m_emcNoiseSigma; }

◆ EmcNoiseThreshold()

double G4Svc::EmcNoiseThreshold ( )
inline

Definition at line 135 of file G4Svc.h.

135{ return m_emcNoiseThreshold; }

◆ EmcRootFlag()

bool G4Svc::EmcRootFlag ( )
inline

Definition at line 125 of file G4Svc.h.

125{ return m_emcRootFlag; }

◆ EmcTime()

int G4Svc::EmcTime ( )
inline

Definition at line 137 of file G4Svc.h.

137{ return m_emcTime; }

◆ finalize()

StatusCode G4Svc::finalize ( )
virtual

Definition at line 169 of file G4Svc.cpp.

169 {
170
171 MsgStream log( msgSvc(), name() );
172 StatusCode status = Service::finalize();
173
174 if ( status.isSuccess() ) log << MSG::INFO << "Service finalised successfully" << endmsg;
175
176 return status;
177}
IMessageSvc * msgSvc()

◆ G4Init()

void G4Svc::G4Init ( )

Definition at line 291 of file G4Svc.cpp.

291 {
292
293 MsgStream log( msgSvc(), name() );
294
295 log << MSG::VERBOSE << "Attempting G4 Initialization" << endmsg;
296
297 if ( !_init )
298 {
299 // Tracking
300 // if (m_saveTracks) {
301 // log << MSG::INFO << "turning tracking on" << std::endl;
302 // uiMgr()->ApplyCommand("/tracking/storeTrajectory 1");
303 //}
304
305 // Visualization manager
306#ifdef G4VIS_USE
307 if ( m_vis )
308 {
309 log << MSG::INFO << "Initializing G4SvcVisManager" << endmsg;
310 // p_visMgr = new G4SvcVisManager;
311 p_visMgr = new G4VisExecutive;
312 p_visMgr->Initialize();
313 }
314#else
315 m_vis = false;
316#endif
317
318 if ( !m_vis ) { log << MSG::INFO << "Not including Visualization" << endmsg; }
319
320 // Verbosity
321 log << MSG::DEBUG << "Setting verbosity levels - "
322 << "run: " << m_runVerb << " event: " << m_eventVerb << " track: " << m_trackVerb
323 << endmsg;
324
325 {
326 std::ostrstream ost;
327 ost << "/run/verbose " << m_runVerb << std::ends;
328 uiMgr()->ApplyCommand( ost.str() );
329 }
330 {
331 std::ostrstream ost;
332 ost << "/event/verbose " << m_eventVerb << std::ends;
333 uiMgr()->ApplyCommand( ost.str() );
334 }
335 {
336 std::ostrstream ost;
337 ost << "/tracking/verbose " << m_trackVerb << std::ends;
338 uiMgr()->ApplyCommand( ost.str() );
339 }
340
341 log << MSG::DEBUG << "Initializing G4 kernel" << endmsg;
342 p_runMgr->Initialize();
343 _init = true;
344
345 if ( m_macroName != "none" )
346 {
347 log << MSG::INFO << "Running G4 macro " << m_macroName << endmsg;
348 uiMgr()->ApplyCommand( "/control/execute " + m_macroName );
349 }
350 if ( m_interactiveG4 ) { StartUISession(); }
351 }
352 else { log << MSG::ERROR << "G4 kernel already initialized" << endmsg; }
353}
G4UImanager * uiMgr()
Definition G4Svc.cpp:211
void StartUISession()
Definition G4Svc.cpp:278

◆ GetBeamAngle()

double G4Svc::GetBeamAngle ( )
inline

Definition at line 94 of file G4Svc.h.

94{ return m_beamAngle; }

◆ GetBeamDeltaTime()

double G4Svc::GetBeamDeltaTime ( )
inline

Definition at line 86 of file G4Svc.h.

86{ return m_beamDeltaTime; }

Referenced by G4HepMCInterface::HepMC2G4().

◆ GetBeamPosX()

double G4Svc::GetBeamPosX ( )
inline

Definition at line 73 of file G4Svc.h.

73{ return m_beamPosX; }

Referenced by G4HepMCInterface::HepMC2G4().

◆ GetBeamPosY()

double G4Svc::GetBeamPosY ( )
inline

Definition at line 74 of file G4Svc.h.

74{ return m_beamPosY; }

Referenced by G4HepMCInterface::HepMC2G4().

◆ GetBeamPosZ()

double G4Svc::GetBeamPosZ ( )
inline

Definition at line 75 of file G4Svc.h.

75{ return m_beamPosZ; }

Referenced by G4HepMCInterface::HepMC2G4().

◆ GetBeamShiftPx()

double G4Svc::GetBeamShiftPx ( )
inline

Definition at line 81 of file G4Svc.h.

81{ return m_beamShiftPx; }

Referenced by G4HepMCInterface::Boost().

◆ GetBeamShiftPy()

double G4Svc::GetBeamShiftPy ( )
inline

Definition at line 82 of file G4Svc.h.

82{ return m_beamShiftPy; }

Referenced by G4HepMCInterface::Boost().

◆ GetBeamShiftPz()

double G4Svc::GetBeamShiftPz ( )
inline

Definition at line 83 of file G4Svc.h.

83{ return m_beamShiftPz; }

Referenced by G4HepMCInterface::Boost().

◆ GetBeamSizeX()

double G4Svc::GetBeamSizeX ( )
inline

Definition at line 77 of file G4Svc.h.

77{ return m_beamSizeX; }

Referenced by G4HepMCInterface::HepMC2G4().

◆ GetBeamSizeY()

double G4Svc::GetBeamSizeY ( )
inline

Definition at line 78 of file G4Svc.h.

78{ return m_beamSizeY; }

Referenced by G4HepMCInterface::HepMC2G4().

◆ GetBeamSizeZ()

double G4Svc::GetBeamSizeZ ( )
inline

Definition at line 79 of file G4Svc.h.

79{ return m_beamSizeZ; }

Referenced by G4HepMCInterface::HepMC2G4().

◆ GetBeamStartTime()

double G4Svc::GetBeamStartTime ( )
inline

Definition at line 85 of file G4Svc.h.

85{ return m_beamStartTime; }

Referenced by G4HepMCInterface::HepMC2G4().

◆ GetBeamTime()

double G4Svc::GetBeamTime ( )
inline

Definition at line 90 of file G4Svc.h.

90{ return m_beamTime; }

◆ GetBoostLab()

bool G4Svc::GetBoostLab ( )
inline

Definition at line 95 of file G4Svc.h.

95{ return m_boostLab; }

Referenced by G4HepMCInterface::HepMC2G4().

◆ GetBunchTimeSigma()

double G4Svc::GetBunchTimeSigma ( )
inline

Definition at line 88 of file G4Svc.h.

88{ return m_bunchTimeSigma; }

Referenced by G4HepMCInterface::HepMC2G4().

◆ GetCurrentEvent()

const G4Event * G4Svc::GetCurrentEvent ( ) const

Definition at line 194 of file G4Svc.cpp.

194 {
195
196 const G4Event* evt = p_runMgr->GetCurrentEvent();
197
198 if ( evt == 0 )
199 {
200 MsgStream log( msgSvc(), name() );
201 log << MSG::ERROR << "Could not get current G4Event" << endmsg;
202 }
203
204 return ( evt );
205}

◆ GetCurrentRun()

const G4Run * G4Svc::GetCurrentRun ( ) const

Definition at line 208 of file G4Svc.cpp.

208{ return ( p_runMgr->GetCurrentRun() ); }

◆ GetMdcDataInput()

int G4Svc::GetMdcDataInput ( )
inline

Definition at line 98 of file G4Svc.h.

98{ return m_mdcDataInput; }

◆ GetMdcDedxFlag()

int G4Svc::GetMdcDedxFlag ( )
inline

Definition at line 99 of file G4Svc.h.

99{ return m_mdcDedxFlag; }

◆ GetMdcNewSimOpt()

int G4Svc::GetMdcNewSimOpt ( )
inline

Definition at line 100 of file G4Svc.h.

100{ return m_mdcNewSimOpt; }

◆ GetMdcNoiseFile()

std::string G4Svc::GetMdcNoiseFile ( )
inline

Definition at line 92 of file G4Svc.h.

92{ return m_mdcNoiseFile; }

◆ GetNBunch()

double G4Svc::GetNBunch ( )
inline

Definition at line 87 of file G4Svc.h.

87{ return m_nBunch; }

Referenced by G4HepMCInterface::HepMC2G4().

◆ GetSetBeamShift()

bool G4Svc::GetSetBeamShift ( )
inline

Definition at line 96 of file G4Svc.h.

96{ return m_setBeamShift; }

Referenced by G4HepMCInterface::Boost().

◆ GetTupleEmc1()

NTuple::Tuple * G4Svc::GetTupleEmc1 ( )
inline

Definition at line 114 of file G4Svc.h.

114{ return m_tupleEmc1; }

◆ GetTupleEmc2()

NTuple::Tuple * G4Svc::GetTupleEmc2 ( )
inline

Definition at line 117 of file G4Svc.h.

117{ return m_tupleEmc2; }

◆ GetTupleMdc()

NTuple::Tuple * G4Svc::GetTupleMdc ( )
inline

Definition at line 102 of file G4Svc.h.

102{ return m_tupleMdc; }

◆ GetTupleMuc()

NTuple::Tuple * G4Svc::GetTupleMuc ( )
inline

Definition at line 120 of file G4Svc.h.

120{ return m_tupleMuc; }

◆ GetTupleTof1()

NTuple::Tuple * G4Svc::GetTupleTof1 ( )
inline

Definition at line 105 of file G4Svc.h.

105{ return m_tupleTof1; }

◆ GetTupleTof2()

NTuple::Tuple * G4Svc::GetTupleTof2 ( )
inline

Definition at line 108 of file G4Svc.h.

108{ return m_tupleTof2; }

◆ GetTupleTof3()

NTuple::Tuple * G4Svc::GetTupleTof3 ( )
inline

Definition at line 111 of file G4Svc.h.

111{ return m_tupleTof3; }

◆ initialize()

StatusCode G4Svc::initialize ( )
virtual

Definition at line 145 of file G4Svc.cpp.

145 {
146
147 MsgStream log( msgSvc(), name() );
148
149 StatusCode status = Service::initialize();
150 log << MSG::INFO << "Service initialized" << endmsg;
151
152 // get IRealizationSvc
153 status = service( "RealizationSvc", m_RealizationSvc );
154 if ( !status.isSuccess() )
155 {
156 log << MSG::ERROR << " Could not initialize Realization Service" << endmsg;
157 return status;
158 }
159 else { log << MSG::INFO << "got the RealizationSvc" << endmsg; }
160
161 m_runID = m_RealizationSvc->getRunId();
162
163 runMgr();
164 return status;
165}
G4RunManager * runMgr()
Definition G4Svc.cpp:128

◆ LogLevel()

int G4Svc::LogLevel ( )
inline

Definition at line 143 of file G4Svc.h.

143{ return m_logLevel; }

◆ MdcRootFlag()

bool G4Svc::MdcRootFlag ( )
inline

Definition at line 123 of file G4Svc.h.

123{ return m_mdcRootFlag; }

◆ MucNoiseMode()

int G4Svc::MucNoiseMode ( )
inline

Definition at line 141 of file G4Svc.h.

141{ return m_mucNoiseMode; }

◆ MucRootFlag()

bool G4Svc::MucRootFlag ( )
inline

Definition at line 126 of file G4Svc.h.

126{ return m_mucRootFlag; }

◆ RunInitialize()

void G4Svc::RunInitialize ( )

Definition at line 356 of file G4Svc.cpp.

356 {
357 bool cond = p_runMgr->ConfirmBeamOnCondition();
358 if ( cond )
359 {
360 std::cout << "########### initializing the G4Run ############" << std::endl;
361 p_runMgr->SetRunIDCounter( -std::abs( m_runID ) );
362 p_runMgr->RunInitialization();
363 }
364}

◆ runMgr()

G4RunManager * G4Svc::runMgr ( )

Definition at line 128 of file G4Svc.cpp.

128 {
129 // std::cout<<"G4Svc::runMgr()"<<std::endl;
130 MsgStream log( msgSvc(), name() );
131
132 if ( p_runMgr == 0 )
133 {
134 p_runMgr = new G4SvcRunManager();
135 p_runMgr->SetLogLevel( m_logLevel );
136 // p_runMgr->SetSaveHits( m_saveHits );
137 // p_runMgr->SetSaveTracks( m_saveTracks );
138 }
139
140 return p_runMgr;
141}

Referenced by initialize().

◆ RunTerminate()

void G4Svc::RunTerminate ( )

Definition at line 366 of file G4Svc.cpp.

366{ p_runMgr->RunTermination(); }

◆ SetBeamTime()

void G4Svc::SetBeamTime ( double value)
inline

Definition at line 91 of file G4Svc.h.

91{ m_beamTime = value; }

Referenced by G4HepMCInterface::HepMC2G4().

◆ SetTupleEmc1()

void G4Svc::SetTupleEmc1 ( NTuple::Tuple * tuple)
inline

Definition at line 115 of file G4Svc.h.

115{ m_tupleEmc1 = tuple; }

◆ SetTupleEmc2()

void G4Svc::SetTupleEmc2 ( NTuple::Tuple * tuple)
inline

Definition at line 118 of file G4Svc.h.

118{ m_tupleEmc2 = tuple; }

◆ SetTupleMdc()

void G4Svc::SetTupleMdc ( NTuple::Tuple * tuple)
inline

Definition at line 103 of file G4Svc.h.

103{ m_tupleMdc = tuple; }

◆ SetTupleMuc()

void G4Svc::SetTupleMuc ( NTuple::Tuple * tuple)
inline

Definition at line 121 of file G4Svc.h.

121{ m_tupleMuc = tuple; }

◆ SetTupleTof1()

void G4Svc::SetTupleTof1 ( NTuple::Tuple * tuple)
inline

Definition at line 106 of file G4Svc.h.

106{ m_tupleTof1 = tuple; }

◆ SetTupleTof2()

void G4Svc::SetTupleTof2 ( NTuple::Tuple * tuple)
inline

Definition at line 109 of file G4Svc.h.

109{ m_tupleTof2 = tuple; }

◆ SetTupleTof3()

void G4Svc::SetTupleTof3 ( NTuple::Tuple * tuple)
inline

Definition at line 112 of file G4Svc.h.

112{ m_tupleTof3 = tuple; }

◆ SetUserInitialization() [1/3]

void G4Svc::SetUserInitialization ( G4VUserActionInitialization * actionInit)

Definition at line 228 of file G4Svc.cpp.

228 {
229 if ( p_runMgr != 0 ) { p_runMgr->SetUserInitialization( userInit ); }
230}

◆ SetUserInitialization() [2/3]

void G4Svc::SetUserInitialization ( G4VUserDetectorConstruction * userInit)

Definition at line 218 of file G4Svc.cpp.

218 {
219 if ( p_runMgr != 0 ) { p_runMgr->SetUserInitialization( userInit ); }
220}

◆ SetUserInitialization() [3/3]

void G4Svc::SetUserInitialization ( G4VUserPhysicsList * physInit)

Definition at line 224 of file G4Svc.cpp.

224 {
225 if ( p_runMgr != 0 ) { p_runMgr->SetUserInitialization( userInit ); }
226}

◆ SimulateEvents()

void G4Svc::SimulateEvents ( int i)

Definition at line 368 of file G4Svc.cpp.

368{ p_runMgr->SimulateEvent( i ); }

◆ StartUISession()

void G4Svc::StartUISession ( )

Definition at line 278 of file G4Svc.cpp.

278 {
279
280 MsgStream log( msgSvc(), name() );
281 log << MSG::DEBUG << "Starting G4 terminal" << endmsg;
282
283 G4UIsession* ses = new G4UIterminal( new G4UItcsh );
284 ses->SessionStart();
285
286 delete ses;
287}

Referenced by G4Init().

◆ TofRootFlag()

bool G4Svc::TofRootFlag ( )
inline

Definition at line 124 of file G4Svc.h.

124{ return m_tofRootFlag; }

◆ TofSaturationFlag()

bool G4Svc::TofSaturationFlag ( )
inline

Definition at line 128 of file G4Svc.h.

128{ return m_tofSaturationFlag; } // Tof Q Saturation in bhabha events

◆ uiMgr()

G4UImanager * G4Svc::uiMgr ( )

Definition at line 211 of file G4Svc.cpp.

211 {
212 if ( p_uiMgr == 0 ) { p_uiMgr = G4UImanager::GetUIpointer(); }
213 return ( p_uiMgr );
214}

Referenced by G4Init().

◆ SvcFactory< G4Svc >

friend class SvcFactory< G4Svc >
friend

Definition at line 151 of file G4Svc.h.


The documentation for this class was generated from the following files: