//////////////////////////////////////////////////////////////////////// /// \class RAT::GsimMessenger /// /// \brief Messenger class to the Gsim class /// /// \author P G Jones /// /// REVISION HISTORY:\n /// 4/3/2011 : P G Jones - New File \n /// 7/12/2011: Andy Mastbaum - Added new command to kill long-lived tracks /// 1/7/2012 : Nuno Barros - Added new command to set the run duration /// 2013-12-16 : P G Jones - Moved long-lived track killing to PhysicsList commands (tis cut) /// 2015-05-25 : D. Auty - Changed default to be -1 rather than 1 for number of events. As /// 1 is a valid number of events /// 2016-10-16 : N Barros - Cleared global using of CLHEP which was causing needless shadowing warnings /// /// /// \details Change settings in the Gsim class via commands /// //////////////////////////////////////////////////////////////////////// #ifndef __RAT_GsimMessenger__ #define __RAT_GsimMessenger__ #include #include #include #include #include #include namespace RAT { class Gsim; class GsimMessenger : public G4UImessenger { public: GsimMessenger(Gsim* pGsim ); ~GsimMessenger(); void SetNewValue(G4UIcommand * command, G4String newValue); protected: Gsim* fGsim; G4UIcmdWithABool* fDiscardCmd; G4UIcmdWithADoubleAndUnit* fRunDurationCmd; G4UIcommand *fRunStartCmd; }; } // namespace RAT #endif