00001 //---------------------------------------------------------------------------// 00002 // BOOST --- BESIII Object_Oreiented Simulation Tool // 00003 //---------------------------------------------------------------------------// 00004 //Descpirtion: EMC detector 00005 //Author: Fu Chengdong 00006 //Created: Sep 4, 2003 00007 //Comment: 00008 //---------------------------------------------------------------------------// 00009 // 00010 #ifndef BesEmcDetectorMessenger_h 00011 #define BesEmcDetectorMessenger_h 1 00012 00013 #include "globals.hh" 00014 #include "G4UImessenger.hh" 00015 00016 class BesEmcConstruction; 00017 class BesEmcGeometry; 00018 class G4UIdirectory; 00019 class G4UIcmdWithAString; 00020 class G4UIcmdWithAnInteger; 00021 class G4UIcmdWithADoubleAndUnit; 00022 class G4UIcmdWith3VectorAndUnit; 00023 class G4UIcmdWithoutParameter; 00024 00025 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... 00026 00027 class BesEmcDetectorMessenger: public G4UImessenger 00028 { 00029 public: 00030 BesEmcDetectorMessenger(BesEmcConstruction*,BesEmcGeometry* ); 00031 ~BesEmcDetectorMessenger(); 00032 00033 void SetNewValue(G4UIcommand*, G4String); 00034 G4String GetCurrentValue(G4UIcommand *); 00035 private: 00036 BesEmcConstruction* BesEmc; 00037 BesEmcGeometry* fBesEmcGeometry; 00038 00039 G4UIdirectory* BesdetDir; 00040 G4UIcmdWithAnInteger* verboseCmd; 00041 G4UIcmdWithAString* CryMaterCmd; 00042 G4UIcmdWithAString* CasingMaterCmd; 00043 G4UIcmdWith3VectorAndUnit* CasingThickCmd; 00044 G4UIcmdWithADoubleAndUnit* SizeRminCmd; 00045 G4UIcmdWithAnInteger* NbPhiCmd; 00046 G4UIcmdWithAnInteger* NbThetaCmd; 00047 G4UIcmdWithAnInteger* StartIDThetaCmd; 00048 G4UIcmdWithADoubleAndUnit* LengthCmd; 00049 G4UIcmdWithADoubleAndUnit* MagFieldCmd; 00050 G4UIcmdWithoutParameter* UpdateCmd; 00051 }; 00052 00053 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... 00054 00055 #endif