#ifndef StripTrackerMessenger_h #define StripTrackerMessenger_h 1 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... #include "globals.hh" #include "G4UImessenger.hh" class StripTrackerConstruction; class G4UIdirectory; class G4UIcmdWithAString; class G4UIcmdWithADoubleAndUnit; class G4UIcmdWith3VectorAndUnit; class G4UIcmdWithoutParameter; class G4UIcmdWithABool; class G4UIcmdWithAnInteger; //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... /* This class provides the user interface to StripTrackerConstruction It allows for - change of detector position - rotation of the tracker detectors around the z-axis - rotation of the phantom */ class StripTrackerMessenger: public G4UImessenger { public: // Constructor StripTrackerMessenger(StripTrackerConstruction* ); // Destructor ~StripTrackerMessenger(); // handle user commands void SetNewValue(G4UIcommand*, G4String); private: StripTrackerConstruction* detector; G4UIcmdWithABool* ConstructCmd; G4UIdirectory* detDir; G4UIdirectory* geomDir; G4UIdirectory* phantomDir; G4UIcmdWithADoubleAndUnit* xShift_PhantomCmd; G4UIcmdWithADoubleAndUnit* yShift_PhantomCmd; G4UIcmdWithADoubleAndUnit* theta_PhantomCmd; G4UIdirectory* x1_SensorDir; G4UIdirectory* u1_SensorDir; G4UIdirectory* v1_SensorDir; G4UIdirectory* x2_SensorDir; G4UIdirectory* u2_SensorDir; G4UIdirectory* v2_SensorDir; G4UIdirectory* TP1Dir; G4UIdirectory* TP2Dir; G4UIdirectory* TP3Dir; G4UIdirectory* TP4Dir; G4UIdirectory* x3_SensorDir; G4UIdirectory* u3_SensorDir; G4UIdirectory* v3_SensorDir; G4UIdirectory* x4_SensorDir; G4UIdirectory* u4_SensorDir; G4UIdirectory* v4_SensorDir; G4UIcmdWithAnInteger* set_nb_of_stripsCmd; G4UIcmdWithADoubleAndUnit* set_strip_pitchCmd; G4UIcmdWithADoubleAndUnit* set_strip_lengthCmd; G4UIcmdWithADoubleAndUnit* set_inter_plane_distCmd; G4UIcmdWithADoubleAndUnit* set_inter_module_distCmd; G4UIcmdWithADoubleAndUnit* set_phantom_gapCmd; G4UIcmdWithADoubleAndUnit* set_halfPhantomSizeZCmd; G4UIcmdWithADoubleAndUnit* set_halfCalorimeterSizeZCmd; G4UIcmdWith3VectorAndUnit* position_x1_SensorCmd; G4UIcmdWithADoubleAndUnit* xShift_x1_SensorCmd; G4UIcmdWithADoubleAndUnit* yShift_x1_SensorCmd; G4UIcmdWithADoubleAndUnit* theta_x1_SensorCmd; G4UIcmdWith3VectorAndUnit* position_u1_SensorCmd; G4UIcmdWithADoubleAndUnit* xShift_u1_SensorCmd; G4UIcmdWithADoubleAndUnit* yShift_u1_SensorCmd; G4UIcmdWithADoubleAndUnit* theta_u1_SensorCmd; G4UIcmdWith3VectorAndUnit* position_v1_SensorCmd; G4UIcmdWithADoubleAndUnit* xShift_v1_SensorCmd; G4UIcmdWithADoubleAndUnit* yShift_v1_SensorCmd; G4UIcmdWithADoubleAndUnit* theta_v1_SensorCmd; G4UIcmdWith3VectorAndUnit* position_x2_SensorCmd; G4UIcmdWithADoubleAndUnit* xShift_x2_SensorCmd; G4UIcmdWithADoubleAndUnit* yShift_x2_SensorCmd; G4UIcmdWithADoubleAndUnit* theta_x2_SensorCmd; G4UIcmdWith3VectorAndUnit* position_u2_SensorCmd; G4UIcmdWithADoubleAndUnit* xShift_u2_SensorCmd; G4UIcmdWithADoubleAndUnit* yShift_u2_SensorCmd; G4UIcmdWithADoubleAndUnit* theta_u2_SensorCmd; G4UIcmdWith3VectorAndUnit* position_v2_SensorCmd; G4UIcmdWithADoubleAndUnit* xShift_v2_SensorCmd; G4UIcmdWithADoubleAndUnit* yShift_v2_SensorCmd; G4UIcmdWithADoubleAndUnit* theta_v2_SensorCmd; G4UIcmdWithADoubleAndUnit* xShift_TP1Cmd; G4UIcmdWithADoubleAndUnit* yShift_TP1Cmd; G4UIcmdWithADoubleAndUnit* theta_TP1Cmd; G4UIcmdWithADoubleAndUnit* xShift_TP2Cmd; G4UIcmdWithADoubleAndUnit* yShift_TP2Cmd; G4UIcmdWithADoubleAndUnit* theta_TP2Cmd; G4UIcmdWithADoubleAndUnit* xShift_TP3Cmd; G4UIcmdWithADoubleAndUnit* yShift_TP3Cmd; G4UIcmdWithADoubleAndUnit* theta_TP3Cmd; G4UIcmdWithADoubleAndUnit* xShift_TP4Cmd; G4UIcmdWithADoubleAndUnit* yShift_TP4Cmd; G4UIcmdWithADoubleAndUnit* theta_TP4Cmd; G4UIcmdWith3VectorAndUnit* position_x3_SensorCmd; G4UIcmdWithADoubleAndUnit* xShift_x3_SensorCmd; G4UIcmdWithADoubleAndUnit* yShift_x3_SensorCmd; G4UIcmdWithADoubleAndUnit* theta_x3_SensorCmd; G4UIcmdWith3VectorAndUnit* position_u3_SensorCmd; G4UIcmdWithADoubleAndUnit* xShift_u3_SensorCmd; G4UIcmdWithADoubleAndUnit* yShift_u3_SensorCmd; G4UIcmdWithADoubleAndUnit* theta_u3_SensorCmd; G4UIcmdWith3VectorAndUnit* position_v3_SensorCmd; G4UIcmdWithADoubleAndUnit* xShift_v3_SensorCmd; G4UIcmdWithADoubleAndUnit* yShift_v3_SensorCmd; G4UIcmdWithADoubleAndUnit* theta_v3_SensorCmd; G4UIcmdWith3VectorAndUnit* position_x4_SensorCmd; G4UIcmdWithADoubleAndUnit* xShift_x4_SensorCmd; G4UIcmdWithADoubleAndUnit* yShift_x4_SensorCmd; G4UIcmdWithADoubleAndUnit* theta_x4_SensorCmd; G4UIcmdWith3VectorAndUnit* position_u4_SensorCmd; G4UIcmdWithADoubleAndUnit* xShift_u4_SensorCmd; G4UIcmdWithADoubleAndUnit* yShift_u4_SensorCmd; G4UIcmdWithADoubleAndUnit* theta_u4_SensorCmd; G4UIcmdWith3VectorAndUnit* position_v4_SensorCmd; G4UIcmdWithADoubleAndUnit* xShift_v4_SensorCmd; G4UIcmdWithADoubleAndUnit* yShift_v4_SensorCmd; G4UIcmdWithADoubleAndUnit* theta_v4_SensorCmd; G4UIcmdWithABool* set_x1_SensorDUTsetupCmd; G4UIcmdWithABool* set_u1_SensorDUTsetupCmd; G4UIcmdWithABool* set_v1_SensorDUTsetupCmd; G4UIcmdWithABool* set_x2_SensorDUTsetupCmd; G4UIcmdWithABool* set_u2_SensorDUTsetupCmd; G4UIcmdWithABool* set_v2_SensorDUTsetupCmd; G4UIcmdWithABool* set_TP1DUTsetupCmd; G4UIcmdWithABool* set_TP2DUTsetupCmd; G4UIcmdWithABool* set_TP3DUTsetupCmd; G4UIcmdWithABool* set_TP4DUTsetupCmd; G4UIcmdWithABool* set_x3_SensorDUTsetupCmd; G4UIcmdWithABool* set_u3_SensorDUTsetupCmd; G4UIcmdWithABool* set_v3_SensorDUTsetupCmd; G4UIcmdWithABool* set_x4_SensorDUTsetupCmd; G4UIcmdWithABool* set_u4_SensorDUTsetupCmd; G4UIcmdWithABool* set_v4_SensorDUTsetupCmd; }; //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... #endif