00001 //---------------------------------------------------------------------------// 00002 //Description: Messenger class 00003 //Author: Wu Chen(wuchen@mail.ihep.ac.cn) 00004 //Created: 17 Oct, 2012 00005 //Comment: 00006 //---------------------------------------------------------------------------// 00007 00008 #ifndef MyVGeometryParameterMessenger_h 00009 #define MyVGeometryParameterMessenger_h 1 00010 00011 #include "myglobals.hh" 00012 #include "G4UImessenger.hh" 00013 00014 class MyVGeometryParameter; 00015 class G4UIdirectory; 00016 class G4UIcmdWithABool; 00017 class G4UIcmdWithAnInteger; 00018 class G4UIcmdWithAString; 00019 00020 class MyVGeometryParameterMessenger : public G4UImessenger 00021 { 00022 public: 00023 MyVGeometryParameterMessenger(MyVGeometryParameter*, G4String); 00024 virtual ~MyVGeometryParameterMessenger(); 00025 00026 //=> Special functions 00027 int MySetNewValue(G4UIcommand*, G4String); 00028 00029 //=> Access 00030 G4String get_Name(){ return m_Name; } 00031 MyVGeometryParameter* get_GeometryParameter(){ return m_GeometryParameter; } 00032 G4String get_GeoDirName(){ return m_GeoDirName; } 00033 00034 //=> Modify 00035 void set_Name(G4String val){ m_Name = val; } 00036 void set_GeometryParameter(MyVGeometryParameter* val){ m_GeometryParameter = val; } 00037 void set_GeoDirName(G4String val){ m_GeoDirName = val; } 00038 00039 private: 00040 00041 G4UIdirectory* g4simDir; 00042 G4UIdirectory* detDir; 00043 G4UIdirectory* geoDir; 00044 00045 G4UIcmdWithABool* set_checkoverlap_cmd; 00046 G4UIcmdWithAnInteger* set_VerboseLevel_cmd; 00047 G4UIcmdWithAString* ReadCard_cmd; 00048 00049 G4String m_Name; 00050 G4String m_GeoDirName; 00051 MyVGeometryParameter* m_GeometryParameter; 00052 00053 }; 00054 00055 #endif 00056