////////////////////////////////////////////////////////////////////////
/// \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