37 : base_class( name, svc )
47 declareProperty(
"Visualize", m_vis =
false );
50 declareProperty(
"RunVerbosity", m_runVerb = 0 );
51 declareProperty(
"EventVerbosity", m_eventVerb = 0 );
52 declareProperty(
"TrackingVerbosity", m_trackVerb = 0 );
54 declareProperty(
"FADSmacro", m_macroName =
"none" );
55 declareProperty(
"MdcNoiseFile", m_mdcNoiseFile =
"none" );
59 declareProperty(
"LogLevel", m_logLevel = 6 );
61 declareProperty(
"InteractiveG4", m_interactiveG4 =
false );
63 declareProperty(
"BesGenAction", m_besGenAction =
false );
65 declareProperty(
"BeamPosX", m_beamPosX = 0 );
66 declareProperty(
"BeamPosY", m_beamPosY = 0 );
67 declareProperty(
"BeamPosZ", m_beamPosZ = 0 );
69 declareProperty(
"BeamSizeX", m_beamSizeX = 10 );
70 declareProperty(
"BeamSizeY", m_beamSizeY = 20 );
71 declareProperty(
"BeamSizeZ", m_beamSizeZ = 30 );
73 declareProperty(
"BeamStartTime", m_beamStartTime = 0 );
74 declareProperty(
"BeamDeltaTime", m_beamDeltaTime = 0 );
75 declareProperty(
"NBunch", m_nBunch = 1 );
77 declareProperty(
"BunchTimeSigma", m_bunchTimeSigma = 0 );
79 declareProperty(
"MdcDataInput", m_mdcDataInput = 1 );
80 declareProperty(
"MdcDedxFlag", m_mdcDedxFlag = 1 );
81 declareProperty(
"MdcNewSimOpt",
84 declareProperty(
"BoostLab", m_boostLab =
false );
85 declareProperty(
"BeamAngle", m_beamAngle = 11 );
87 declareProperty(
"SetBeamShift", m_setBeamShift =
false );
88 declareProperty(
"BeamShiftPx", m_beamShiftPx = 39.45 );
89 declareProperty(
"BeamShiftPy", m_beamShiftPy = -0.98 );
90 declareProperty(
"BeamShiftPz", m_beamShiftPz = 3.70 );
92 declareProperty(
"MdcRootFlag", m_mdcRootFlag =
false );
93 declareProperty(
"TofRootFlag", m_tofRootFlag =
false );
94 declareProperty(
"EmcRootFlag", m_emcRootFlag =
false );
95 declareProperty(
"MucRootFlag", m_mucRootFlag =
false );
98 declareProperty(
"TofSaturationFlag", m_tofSaturationFlag =
true );
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 );
293 MsgStream log(
msgSvc(), name() );
295 log << MSG::VERBOSE <<
"Attempting G4 Initialization" << endmsg;
309 log << MSG::INFO <<
"Initializing G4SvcVisManager" << endmsg;
311 p_visMgr =
new G4VisExecutive;
312 p_visMgr->Initialize();
318 if ( !m_vis ) { log << MSG::INFO <<
"Not including Visualization" << endmsg; }
321 log << MSG::DEBUG <<
"Setting verbosity levels - "
322 <<
"run: " << m_runVerb <<
" event: " << m_eventVerb <<
" track: " << m_trackVerb
327 ost <<
"/run/verbose " << m_runVerb << std::ends;
328 uiMgr()->ApplyCommand( ost.str() );
332 ost <<
"/event/verbose " << m_eventVerb << std::ends;
333 uiMgr()->ApplyCommand( ost.str() );
337 ost <<
"/tracking/verbose " << m_trackVerb << std::ends;
338 uiMgr()->ApplyCommand( ost.str() );
341 log << MSG::DEBUG <<
"Initializing G4 kernel" << endmsg;
342 p_runMgr->Initialize();
345 if ( m_macroName !=
"none" )
347 log << MSG::INFO <<
"Running G4 macro " << m_macroName << endmsg;
348 uiMgr()->ApplyCommand(
"/control/execute " + m_macroName );
352 else { log << MSG::ERROR <<
"G4 kernel already initialized" << endmsg; }