55 runManager( runManager ), setProductionModel( NULL ), setGdmlFile( NULL ),
56 setGuiMacro( NULL ), setEventCountPolicy( NULL ),
57 setEventDataVerboseLevel( NULL ),
58 #ifdef CEXMC_USE_PERSISTENCY
59 replayEvents( NULL ), seekTo( NULL ), skipInteractionsWithoutEDT( NULL ),
61 registerScenePrimitives( NULL ), validateGdmlFile( NULL )
65 setProductionModel->
SetGuidance(
"Set production model (e.g. pi0 or eta)" );
72 setGdmlFile->
SetGuidance(
"GDML file to read geometry from" );
84 setEventCountPolicy->
SetGuidance(
"How number of events is interpreted.\n"
85 " all - all events are accounted,\n"
86 " interaction - events with studied interaction triggered,\n"
87 " trigger - only events with trigger" );
89 setEventCountPolicy->
SetCandidates(
"all interaction trigger" );
96 setEventDataVerboseLevel->
SetGuidance(
"When events will be saved.\n"
98 " trigger - when energy deposit triggered (EDT),\n"
99 " interaction - when studied interaction triggered (TPT)" );
102 setEventDataVerboseLevel->
SetCandidates(
"nosave trigger interaction" );
107 #ifdef CEXMC_USE_PERSISTENCY
110 replayEvents->SetGuidance(
"Replay specified number of events "
111 "\n (available only if a project is read)."
112 "\n If number of events is 0 (or not specified) then all"
113 "\n run will be replayed" );
114 replayEvents->SetParameterName(
"ReplayEvents",
true );
115 replayEvents->SetRange(
"ReplayEvents >= 0" );
116 replayEvents->SetDefaultValue( 0 );
121 seekTo->SetGuidance(
"Seek to specified event id "
122 "(available only if a project is read)."
123 "\n 'seekto 0' brings to the start of run, 'seekto 4' - to the"
124 "\n first recorded event with interaction after fourth recorded"
125 "\n event with trigger" );
126 seekTo->SetParameterName(
"SeekTo",
false );
127 seekTo->SetRange(
"SeekTo >= 0" );
128 seekTo->SetDefaultValue( 0 );
134 skipInteractionsWithoutEDT->SetGuidance(
"Do not write interactions into "
135 ".fdb file\n if event was not triggered (effective only when a "
136 "project is read and then\n written to another project and only if "
137 "event data verbose level is\n 'trigger')" );
138 skipInteractionsWithoutEDT->SetParameterName(
"skipInteractionsWithoutEDT",
140 skipInteractionsWithoutEDT->SetDefaultValue(
true );
148 registerScenePrimitives->
SetGuidance(
"Register custom scene primitives "
149 "(radial lines,\n inner crystals highlights etc.)" );
156 validateGdmlFile->
SetGuidance(
"If GDML file will be validated or not" );
165 delete setProductionModel;
168 delete setEventCountPolicy;
169 delete setEventDataVerboseLevel;
170 #ifdef CEXMC_USE_PERSISTENCY
173 delete skipInteractionsWithoutEDT;
175 delete registerScenePrimitives;
176 delete validateGdmlFile;
185 if ( cmd == setProductionModel )
191 if ( value ==
"pi0" )
196 if ( value ==
"eta" )
205 if ( cmd == setGdmlFile )
210 if ( cmd == setGuiMacro )
215 if ( cmd == setEventCountPolicy )
220 if ( value ==
"interaction" )
225 if ( value ==
"trigger" )
234 if ( cmd == setEventDataVerboseLevel )
240 if ( value ==
"nosave" )
245 if ( value ==
"trigger" )
250 if ( value ==
"interaction" )
259 #ifdef CEXMC_USE_PERSISTENCY
260 if ( cmd == replayEvents )
262 runManager->ReplayEvents(
271 if ( cmd == skipInteractionsWithoutEDT )
273 runManager->SkipInteractionsWithoutEDTonWrite(
278 if ( cmd == registerScenePrimitives )
283 if ( cmd == validateGdmlFile )
void SetParameterName(const char *theName, G4bool omittable, G4bool currentAsDefault=false)
static G4int GetNewIntValue(const char *paramString)
CexmcRunManagerMessenger(CexmcRunManager *runManager)
~CexmcRunManagerMessenger()
static G4bool GetNewBoolValue(const char *paramString)
void SetDefaultValue(G4bool defVal)
void SetParameterName(const char *theName, G4bool omittable, G4bool currentAsDefault=false)
const XML_Char int const XML_Char * value
static G4String physicsDirName
static G4String runDirName
void SetGuidance(const char *aGuidance)
void AvailableForStates(G4ApplicationState s1)
void SetNewValue(G4UIcommand *cmd, G4String value)
void SetGdmlFileValidation(G4bool on=true)
void RegisterScenePrimitives(void)
void SetGdmlFileName(const G4String &gdmlFileName_)
void SetGuiMacroName(const G4String &guiMacroName_)
void SetDefaultValue(const char *defVal)
CexmcEventDataVerboseLevel
void SetCandidates(const char *candidateList)
static G4String visDirName
void SetProductionModelType(CexmcProductionModelType productionModelType_)
void SetEventCountPolicy(CexmcEventCountPolicy value)
void SetEventDataVerboseLevel(CexmcEventDataVerboseLevel value)
static G4String geometryDirName