G4UImessenger Class Reference

#include <G4UImessenger.hh>

Inheritance diagram for G4UImessenger:

G4AdjointSimMessenger G4AnalysisMessenger G4ASCIITreeMessenger G4CascadeParamMessenger G4DecayTableMessenger G4DMmessenger G4EmMessenger G4EmQMessenger G4EnergyLossMessenger G4ErrorMessenger G4EvManMessenger G4FastSimulationMessenger G4GDMLMessenger G4GeneralParticleSourceMessenger G4GenericMessenger G4GeometryMessenger G4GMocrenMessenger G4HadronicEPTestMessenger G4HepRepMessenger G4INCLXXInterfaceMessenger G4InteractorMessenger G4MatScanMessenger G4ModelCmdCreateContextDir< M > G4NeutronKillerMessenger G4NistMessenger G4OpenGLViewerMessenger G4OpticalPhysicsMessenger G4ParticleGunMessenger G4ParticleMessenger G4ParticlePropertyMessenger G4PersistencyCenterMessenger G4PolarizationMessenger G4ProcessManagerMessenger G4ProcessTableMessenger G4ProductionCutsTableMessenger G4QMessenger G4RadioactiveDecaymessenger G4RTMessenger G4RunMessenger G4ScoreQuantityMessenger G4ScoringMessenger G4SDmessenger G4StackingMessenger G4tgrMessenger G4TrackingMessenger G4UIcontrolMessenger G4UnitsMessenger G4UserPhysicsListMessenger G4VisCommandListManagerList< Manager > G4VisCommandListManagerSelect< Manager > G4VisCommandManagerMode< Manager > G4VModelCommand< T > G4VModelCommand< M > G4VVisCommand GFlashShowerModelMessenger

Public Member Functions

 G4UImessenger ()
 G4UImessenger (const G4String &path, const G4String &dsc)
virtual ~G4UImessenger ()
virtual G4String GetCurrentValue (G4UIcommand *command)
virtual void SetNewValue (G4UIcommand *command, G4String newValue)
G4bool operator== (const G4UImessenger &messenger) const

Protected Member Functions

G4String ItoS (G4int i)
G4String DtoS (G4double a)
G4String BtoS (G4bool b)
G4int StoI (G4String s)
G4double StoD (G4String s)
G4bool StoB (G4String s)
void AddUIcommand (G4UIcommand *newCommand)
void CreateDirectory (const G4String &path, const G4String &dsc)
template<typename T>
T * CreateCommand (const G4String &cname, const G4String &dsc)

Protected Attributes

G4UIdirectorybaseDir
G4String baseDirName

Detailed Description

Definition at line 47 of file G4UImessenger.hh.


Constructor & Destructor Documentation

G4UImessenger::G4UImessenger (  ) 

Definition at line 38 of file G4UImessenger.cc.

00039   : baseDir(NULL), baseDirName("")
00040 { 
00041 }

G4UImessenger::G4UImessenger ( const G4String path,
const G4String dsc 
)

Definition at line 43 of file G4UImessenger.cc.

References CreateDirectory().

00044   : baseDir(NULL), baseDirName("")
00045 {
00046   CreateDirectory(path, dsc);
00047 }

G4UImessenger::~G4UImessenger (  )  [virtual]

Definition at line 49 of file G4UImessenger.cc.

References baseDir.

00050 {
00051   if(baseDir) delete baseDir;
00052 }


Member Function Documentation

void G4UImessenger::AddUIcommand ( G4UIcommand newCommand  )  [protected]

Definition at line 117 of file G4UImessenger.cc.

References G4cerr, G4endl, and G4UIcommand::GetCommandPath().

00118 {
00119   G4cerr << "Warning : Old style definition of G4UIcommand <" 
00120          << newCommand->GetCommandPath() << ">." << G4endl;
00121 }

G4String G4UImessenger::BtoS ( G4bool  b  )  [protected]

Definition at line 81 of file G4UImessenger.cc.

00082 {
00083   G4String vl = "0";
00084   if(b) vl = "true";
00085   return vl;
00086 }

template<typename T>
T * G4UImessenger::CreateCommand ( const G4String cname,
const G4String dsc 
) [protected]

Reimplemented in G4CascadeParamMessenger.

Definition at line 93 of file G4UImessenger.hh.

References baseDirName.

00094 {
00095   G4String path;
00096   if( cname(0) != '/' ) {
00097     path = baseDirName + cname;
00098     if (path(0) != '/') path = "/" + path;
00099   }
00100 
00101   T* command = new T(path.c_str(), this);
00102   command-> SetGuidance(dsc.c_str());
00103 
00104   return command;
00105 }

void G4UImessenger::CreateDirectory ( const G4String path,
const G4String dsc 
) [protected]

Definition at line 123 of file G4UImessenger.cc.

References G4String::append(), baseDir, baseDirName, and G4UImanager::GetUIpointer().

Referenced by G4UImessenger().

00124 {
00125   G4UImanager* ui = G4UImanager::GetUIpointer();
00126 
00127   G4String fullpath = path;
00128   if(fullpath(fullpath.length()-1) != '/') fullpath.append("/");
00129 
00130   G4UIcommandTree* tree= ui-> GetTree()-> FindCommandTree(fullpath.c_str());
00131   if (tree) {
00132     baseDirName = tree-> GetPathName();
00133   } else {
00134     baseDir = new G4UIdirectory(fullpath.c_str());
00135     baseDirName = fullpath;
00136     baseDir-> SetGuidance(dsc.c_str());
00137   }
00138 }

G4String G4UImessenger::DtoS ( G4double  a  )  [protected]

Definition at line 74 of file G4UImessenger.cc.

Referenced by G4UIcontrolMessenger::SetNewValue().

00075 {
00076   std::ostringstream os;
00077   os << a;
00078   return G4String(os.str());
00079 }

G4String G4UImessenger::GetCurrentValue ( G4UIcommand command  )  [virtual]

Reimplemented in G4ScoreQuantityMessenger, G4ScoringMessenger, G4EvManMessenger, G4GeneralParticleSourceMessenger, G4ParticleGunMessenger, G4GeometryMessenger, G4GenericMessenger, G4UIcontrolMessenger, GFlashShowerModelMessenger, G4DecayTableMessenger, G4ParticleMessenger, G4ParticlePropertyMessenger, G4tgrMessenger, G4PersistencyCenterMessenger, G4QMessenger, G4ProductionCutsTableMessenger, G4PolarizationMessenger, G4ProcessManagerMessenger, G4ProcessTableMessenger, G4MatScanMessenger, G4RunMessenger, G4UserPhysicsListMessenger, G4TrackingMessenger, G4GMocrenMessenger, G4HepRepMessenger, G4VisCommandModelCreate< Factory >, G4VisCommandAbortReviewKeptEvents, G4VisCommandEnable, G4VisCommandList, G4VisCommandReviewKeptEvents, G4VisCommandVerbose, G4VisCommandGeometryList, G4VisCommandGeometryRestore, G4VisCommandGeometrySetColour, G4VisCommandGeometrySetDaughtersInvisible, G4VisCommandGeometrySetForceAuxEdgeVisible, G4VisCommandGeometrySetForceSolid, G4VisCommandGeometrySetForceLineSegmentsPerCircle, G4VisCommandGeometrySetForceWireframe, G4VisCommandGeometrySetLineStyle, G4VisCommandGeometrySetLineWidth, G4VisCommandGeometrySetVisibility, G4VisCommandListManagerList< Manager >, G4VisCommandListManagerSelect< Manager >, G4VisCommandManagerMode< Manager >, G4VisCommandSceneActivateModel, G4VisCommandSceneCreate, G4VisCommandSceneEndOfEventAction, G4VisCommandSceneEndOfRunAction, G4VisCommandSceneList, G4VisCommandSceneNotifyHandlers, G4VisCommandSceneSelect, G4VisCommandSceneAddArrow, G4VisCommandSceneAddArrow2D, G4VisCommandSceneAddAxes, G4VisCommandSceneAddDate, G4VisCommandSceneAddDigis, G4VisCommandSceneAddEventID, G4VisCommandSceneAddFrame, G4VisCommandSceneAddGhosts, G4VisCommandSceneAddHits, G4VisCommandSceneAddLine, G4VisCommandSceneAddLine2D, G4VisCommandSceneAddLogicalVolume, G4VisCommandSceneAddLogo, G4VisCommandSceneAddLogo2D, G4VisCommandSceneAddPSHits, G4VisCommandSceneAddScale, G4VisCommandSceneAddText, G4VisCommandSceneAddText2D, G4VisCommandSceneAddTrajectories, G4VisCommandSceneAddUserAction, G4VisCommandSceneAddVolume, G4VisCommandSceneHandlerAttach, G4VisCommandSceneHandlerCreate, G4VisCommandSceneHandlerList, G4VisCommandSceneHandlerSelect, G4VisCommandSetColour, G4VisCommandSetTextColour, G4VisCommandSetLineWidth, G4VisCommandSetTextLayout, G4VisCommandSetTouchable, G4VisCommandsTouchableSet, G4VisCommandViewerAddCutawayPlane, G4VisCommandViewerChangeCutawayPlane, G4VisCommandViewerClear, G4VisCommandViewerClearCutawayPlanes, G4VisCommandViewerClearTransients, G4VisCommandViewerClone, G4VisCommandViewerCopyViewFrom, G4VisCommandViewerCreate, G4VisCommandViewerDolly, G4VisCommandViewerFlush, G4VisCommandViewerList, G4VisCommandViewerPan, G4VisCommandViewerReset, G4VisCommandViewerRefresh, G4VisCommandViewerRebuild, G4VisCommandViewerSave, G4VisCommandViewerScale, G4VisCommandViewerSelect, G4VisCommandViewerUpdate, G4VisCommandViewerZoom, G4VisCommandViewerDefaultHiddenEdge, G4VisCommandViewerDefaultStyle, G4VisCommandsViewerSet, G4VModelCommand< T >, G4RTMessenger, G4ASCIITreeMessenger, and G4VModelCommand< M >.

Definition at line 54 of file G4UImessenger.cc.

Referenced by G4UIcommand::DoIt(), and G4UIcommand::GetCurrentValue().

00055 { 
00056   G4String nullString;
00057   return nullString;
00058 }

G4String G4UImessenger::ItoS ( G4int  i  )  [protected]

Definition at line 67 of file G4UImessenger.cc.

Referenced by G4ParticleGunMessenger::GetCurrentValue().

00068 {
00069   std::ostringstream os;
00070   os << i;
00071   return G4String(os.str());
00072 }

G4bool G4UImessenger::operator== ( const G4UImessenger messenger  )  const

Definition at line 63 of file G4UImessenger.cc.

00063                                                                        {
00064   return this == &messenger;
00065 }

void G4UImessenger::SetNewValue ( G4UIcommand command,
G4String  newValue 
) [virtual]

Reimplemented in G4AnalysisMessenger, G4SDmessenger, G4ScoreQuantityMessenger, G4ScoringMessenger, G4ErrorMessenger, G4EvManMessenger, G4GeneralParticleSourceMessenger, G4ParticleGunMessenger, G4StackingMessenger, G4GeometryMessenger, G4GenericMessenger, G4UIcontrolMessenger, G4UnitsMessenger, G4InteractorMessenger, G4NistMessenger, GFlashShowerModelMessenger, G4DecayTableMessenger, G4ParticleMessenger, G4ParticlePropertyMessenger, G4tgrMessenger, G4GDMLMessenger, G4PersistencyCenterMessenger, G4EmMessenger, G4EmQMessenger, G4OpticalPhysicsMessenger, G4QMessenger, G4ProductionCutsTableMessenger, G4PolarizationMessenger, G4EnergyLossMessenger, G4HadronicEPTestMessenger, G4CascadeParamMessenger, G4INCLXXInterfaceMessenger, G4RadioactiveDecaymessenger, G4ProcessManagerMessenger, G4ProcessTableMessenger, G4FastSimulationMessenger, G4NeutronKillerMessenger, G4DMmessenger, G4AdjointSimMessenger, G4MatScanMessenger, G4RunMessenger, G4UserPhysicsListMessenger, G4TrackingMessenger, G4GMocrenMessenger, G4HepRepMessenger, G4VisCommandModelCreate< Factory >, G4VisCommandAbortReviewKeptEvents, G4VisCommandEnable, G4VisCommandInitialize, G4VisCommandList, G4VisCommandReviewKeptEvents, G4VisCommandVerbose, G4VisCommandDrawTree, G4VisCommandDrawView, G4VisCommandDrawVolume, G4VisCommandOpen, G4VisCommandSpecify, G4VisCommandGeometryList, G4VisCommandGeometryRestore, G4VisCommandGeometrySetColour, G4VisCommandGeometrySetDaughtersInvisible, G4VisCommandGeometrySetForceAuxEdgeVisible, G4VisCommandGeometrySetForceSolid, G4VisCommandGeometrySetForceLineSegmentsPerCircle, G4VisCommandGeometrySetForceWireframe, G4VisCommandGeometrySetLineStyle, G4VisCommandGeometrySetLineWidth, G4VisCommandGeometrySetVisibility, G4VisCommandListManagerList< Manager >, G4VisCommandListManagerSelect< Manager >, G4VisCommandManagerMode< Manager >, G4VisCommandSceneActivateModel, G4VisCommandSceneCreate, G4VisCommandSceneEndOfEventAction, G4VisCommandSceneEndOfRunAction, G4VisCommandSceneList, G4VisCommandSceneNotifyHandlers, G4VisCommandSceneSelect, G4VisCommandSceneAddArrow, G4VisCommandSceneAddArrow2D, G4VisCommandSceneAddAxes, G4VisCommandSceneAddDate, G4VisCommandSceneAddDigis, G4VisCommandSceneAddEventID, G4VisCommandSceneAddFrame, G4VisCommandSceneAddGhosts, G4VisCommandSceneAddHits, G4VisCommandSceneAddLine, G4VisCommandSceneAddLine2D, G4VisCommandSceneAddLogicalVolume, G4VisCommandSceneAddLogo, G4VisCommandSceneAddLogo2D, G4VisCommandSceneAddPSHits, G4VisCommandSceneAddScale, G4VisCommandSceneAddText, G4VisCommandSceneAddText2D, G4VisCommandSceneAddTrajectories, G4VisCommandSceneAddUserAction, G4VisCommandSceneAddVolume, G4VisCommandSceneHandlerAttach, G4VisCommandSceneHandlerCreate, G4VisCommandSceneHandlerList, G4VisCommandSceneHandlerSelect, G4VisCommandSetColour, G4VisCommandSetTextColour, G4VisCommandSetLineWidth, G4VisCommandSetTextLayout, G4VisCommandSetTouchable, G4VisCommandsTouchableSet, G4VisCommandViewerAddCutawayPlane, G4VisCommandViewerChangeCutawayPlane, G4VisCommandViewerClear, G4VisCommandViewerClearCutawayPlanes, G4VisCommandViewerClearTransients, G4VisCommandViewerClone, G4VisCommandViewerCopyViewFrom, G4VisCommandViewerCreate, G4VisCommandViewerDolly, G4VisCommandViewerFlush, G4VisCommandViewerList, G4VisCommandViewerPan, G4VisCommandViewerReset, G4VisCommandViewerRefresh, G4VisCommandViewerRebuild, G4VisCommandViewerSave, G4VisCommandViewerScale, G4VisCommandViewerSelect, G4VisCommandViewerUpdate, G4VisCommandViewerZoom, G4VisCommandViewerDefaultHiddenEdge, G4VisCommandViewerDefaultStyle, G4VisCommandsViewerSet, G4ModelCmdApplyStringColour< M >, G4ModelCmdApplyColour< M >, G4ModelCmdApplyBool< M >, G4ModelCmdApplyNull< M >, G4ModelCmdApplyDouble< M >, G4ModelCmdApplyDoubleAndUnit< M >, G4ModelCmdApplyInteger< M >, G4ModelCmdApplyString< M >, G4OpenGLViewerMessenger, G4RTMessenger, and G4ASCIITreeMessenger.

Definition at line 60 of file G4UImessenger.cc.

Referenced by G4UIcommand::DoIt().

00061 { ; }

G4bool G4UImessenger::StoB ( G4String  s  )  [protected]

Definition at line 106 of file G4UImessenger.cc.

References G4String::toUpper().

Referenced by G4ScoreQuantityMessenger::SetNewValue(), and G4CascadeParamMessenger::SetNewValue().

00107 {
00108   G4String v = str;
00109   v.toUpper();
00110   G4bool vl = false;
00111   if( v=="Y" || v=="YES" || v=="1" || v=="T" || v=="TRUE" )
00112   { vl = true; }
00113   return vl;
00114 }

G4double G4UImessenger::StoD ( G4String  s  )  [protected]

Definition at line 97 of file G4UImessenger.cc.

Referenced by G4ScoreQuantityMessenger::FParticleWithEnergyCommand(), G4VisCommandSceneAddText2D::SetNewValue(), G4VisCommandSceneAddText::SetNewValue(), G4UIcontrolMessenger::SetNewValue(), G4ScoringMessenger::SetNewValue(), G4ScoreQuantityMessenger::SetNewValue(), G4PolarizationMessenger::SetNewValue(), and G4MatScanMessenger::SetNewValue().

00098 {
00099   G4double vl;
00100   const char* t = str;
00101   std::istringstream is(t);
00102   is >> vl;
00103   return vl;
00104 }

G4int G4UImessenger::StoI ( G4String  s  )  [protected]

Definition at line 88 of file G4UImessenger.cc.

Referenced by G4ScoringMessenger::MeshBinCommand(), G4UIcontrolMessenger::SetNewValue(), G4ScoringMessenger::SetNewValue(), G4ScoreQuantityMessenger::SetNewValue(), G4RunMessenger::SetNewValue(), G4MatScanMessenger::SetNewValue(), and G4GMocrenMessenger::SetNewValue().

00089 {
00090   G4int vl;
00091   const char* t = str;
00092   std::istringstream is(t);
00093   is >> vl;
00094   return vl;
00095 }


Field Documentation

G4UIdirectory* G4UImessenger::baseDir [protected]

Definition at line 84 of file G4UImessenger.hh.

Referenced by CreateDirectory(), and ~G4UImessenger().

G4String G4UImessenger::baseDirName [protected]

Definition at line 85 of file G4UImessenger.hh.

Referenced by CreateCommand(), and CreateDirectory().


The documentation for this class was generated from the following files:
Generated on Mon May 27 17:53:37 2013 for Geant4 by  doxygen 1.4.7