#include <BesRunActionMessenger.hh>
Public Member Functions | |
BesRunActionMessenger (BesRunAction *runAction) | |
~BesRunActionMessenger () | |
void | SetNewValue (G4UIcommand *command, G4String newValues) |
Private Attributes | |
BesRunAction * | m_runAction |
G4UIdirectory * | m_runActionDirectory |
G4UIcmdWithAnInteger * | m_MCTruthCmd |
G4UIcommand * | m_asciiCmd |
Definition at line 23 of file BesRunActionMessenger.hh.
BesRunActionMessenger::BesRunActionMessenger | ( | BesRunAction * | runAction | ) |
Definition at line 19 of file BesRunActionMessenger.cc.
References m_MCTruthCmd, and m_runActionDirectory.
00020 :m_runAction(runAction) 00021 { 00022 m_runActionDirectory = new G4UIdirectory("/runAction/"); 00023 m_runActionDirectory->SetGuidance("BESIII run action"); 00024 00025 //MCTruth command 00026 m_MCTruthCmd = new G4UIcmdWithAnInteger("/runAction/MCTruth",this); 00027 m_MCTruthCmd->SetGuidance("whether to save MC Truth information."); 00028 m_MCTruthCmd->SetParameterName("MCTruthFlag",true); 00029 m_MCTruthCmd->SetRange("MCTruthFlag>=0"); 00030 m_MCTruthCmd->SetDefaultValue(0); 00031 00032 //ascii I/O command 00033 /*G4UIparameter* parameter; 00034 G4bool omittable; 00035 00036 m_asciiCmd = new G4UIcommand("/runAction/ascii",this); 00037 m_asciiCmd->SetGuidance("Ascii I/O in BES."); 00038 m_asciiCmd->SetGuidance("mdcTruFlag, tofTruFlag, emcTruFlag, mucTruFlag,mdcDigiFlag, tofDigiFlag, emcDigiFlag, mucDigiFlag, asciiFileName"); 00039 00040 parameter = new G4UIparameter("mdcTruFlag",'i',omittable = true); 00041 parameter->SetGuidance("whether output mdc Truth information to asciiFile"); 00042 parameter->SetParameterRange("mdcTruFlag >= 0"); 00043 parameter->SetDefaultValue(1); 00044 m_asciiCmd->SetParameter(parameter); 00045 00046 parameter = new G4UIparameter("tofTruFlag",'i',omittable = true); 00047 parameter->SetGuidance("whether output tof truth information to asciiFile"); 00048 parameter->SetParameterRange("tofTruFlag >= 0"); 00049 parameter->SetDefaultValue(1); 00050 m_asciiCmd->SetParameter(parameter); 00051 00052 00053 parameter = new G4UIparameter("emcTruFlag",'i',omittable = true); 00054 parameter->SetGuidance("whether output emc truth information to asciiFile"); 00055 parameter->SetParameterRange("emcTruFlag >= 0"); 00056 parameter->SetDefaultValue(1); 00057 m_asciiCmd->SetParameter(parameter); 00058 00059 parameter = new G4UIparameter("mucTruFlag",'i',omittable = true); 00060 parameter->SetGuidance("whether output muc truth information to asciiFile"); 00061 parameter->SetParameterRange("mucTruFlag >= 0"); 00062 parameter->SetDefaultValue(1); 00063 m_asciiCmd->SetParameter(parameter); 00064 00065 00066 parameter = new G4UIparameter("mdcDigiFlag",'i',omittable = true); 00067 parameter->SetGuidance("whether output mdc digi information to asciiFile"); 00068 parameter->SetParameterRange("mdcDigiFlag >= 0"); 00069 parameter->SetDefaultValue(1); 00070 m_asciiCmd->SetParameter(parameter); 00071 00072 parameter = new G4UIparameter("tofDigiFlag",'i',omittable = true); 00073 parameter->SetGuidance("whether output tof digi information to asciiFile"); 00074 parameter->SetParameterRange("tofDigiFlag >= 0"); 00075 parameter->SetDefaultValue(1); 00076 m_asciiCmd->SetParameter(parameter); 00077 00078 00079 parameter = new G4UIparameter("emcDigiFlag",'i',omittable = true); 00080 parameter->SetGuidance("whether output emc digi information to asciiFile"); 00081 parameter->SetParameterRange("emcDigiFlag >= 0"); 00082 parameter->SetDefaultValue(1); 00083 m_asciiCmd->SetParameter(parameter); 00084 00085 parameter = new G4UIparameter("mucDigiFlag",'i',omittable = true); 00086 parameter->SetGuidance("whether output muc digi information to asciiFile"); 00087 parameter->SetParameterRange("mucDigiFlag >= 0"); 00088 parameter->SetDefaultValue(1); 00089 m_asciiCmd->SetParameter(parameter); 00090 00091 parameter = new G4UIparameter("asciiFileName",'s',omittable = true); 00092 parameter->SetGuidance("specify the ascii file name"); 00093 parameter->SetDefaultValue("AsciiDmp_out.dat"); 00094 m_asciiCmd->SetParameter(parameter); 00095 */ 00096 00097 }
BesRunActionMessenger::~BesRunActionMessenger | ( | ) |
Definition at line 99 of file BesRunActionMessenger.cc.
References m_asciiCmd, m_MCTruthCmd, and m_runActionDirectory.
00100 { 00101 delete m_runActionDirectory; 00102 delete m_MCTruthCmd; 00103 delete m_asciiCmd; 00104 }
void BesRunActionMessenger::SetNewValue | ( | G4UIcommand * | command, | |
G4String | newValues | |||
) |
Definition at line 106 of file BesRunActionMessenger.cc.
References m_MCTruthCmd, m_runAction, and BesRunAction::SetMCTruthFlag().
00107 { 00108 if( command == m_MCTruthCmd) 00109 m_runAction->SetMCTruthFlag(m_MCTruthCmd->GetNewIntValue(newValue)); 00110 00111 /*else if( command == m_asciiCmd) 00112 { 00113 G4int mdcTruFlag, tofTruFlag, emcTruFlag, mucTruFlag; 00114 G4int mdcDigiFlag, tofDigiFlag, emcDigiFlag, mucDigiFlag; 00115 G4String fileName; 00116 00117 std::istrstream is ((char*)newValue.data()); 00118 is >> mdcTruFlag >> tofTruFlag >> emcTruFlag >> mucTruFlag 00119 >> mdcDigiFlag >> tofDigiFlag >> emcDigiFlag >> mucDigiFlag 00120 >> fileName; 00121 m_runAction->SetMdcTruFlag(mdcTruFlag); 00122 m_runAction->SetTofTruFlag(tofTruFlag); 00123 m_runAction->SetEmcTruFlag(emcTruFlag); 00124 m_runAction->SetMucTruFlag(mucTruFlag); 00125 00126 m_runAction->SetMdcDigiFlag(mdcDigiFlag); 00127 m_runAction->SetTofDigiFlag(tofDigiFlag); 00128 m_runAction->SetEmcDigiFlag(emcDigiFlag); 00129 m_runAction->SetMucDigiFlag(mucDigiFlag); 00130 00131 m_runAction->SetAsciiFile(fileName); 00132 }*/ 00133 }
G4UIcommand* BesRunActionMessenger::m_asciiCmd [private] |
G4UIcmdWithAnInteger* BesRunActionMessenger::m_MCTruthCmd [private] |
Definition at line 35 of file BesRunActionMessenger.hh.
Referenced by BesRunActionMessenger(), SetNewValue(), and ~BesRunActionMessenger().
BesRunAction* BesRunActionMessenger::m_runAction [private] |
G4UIdirectory* BesRunActionMessenger::m_runActionDirectory [private] |
Definition at line 34 of file BesRunActionMessenger.hh.
Referenced by BesRunActionMessenger(), and ~BesRunActionMessenger().