Geant4 11.4.0
Toolkit for the simulation of the passage of particles through matter
Loading...
Searching...
No Matches
G4EvManMessenger Class Reference

#include <G4EvManMessenger.hh>

Inheritance diagram for G4EvManMessenger:

Public Member Functions

 G4EvManMessenger (G4EventManager *fEvMan)
 ~G4EvManMessenger () override
void SetNewValue (G4UIcommand *command, G4String newValues) override
G4String GetCurrentValue (G4UIcommand *command) override
Public Member Functions inherited from G4UImessenger
 G4UImessenger ()=default
 G4UImessenger (const G4String &path, const G4String &dsc, G4bool commandsToBeBroadcasted=true)
virtual ~G4UImessenger ()
G4bool CommandsShouldBeInMaster () const

Additional Inherited Members

Protected Member Functions inherited from G4UImessenger
G4String ItoS (G4int i)
G4String LtoS (G4long l)
G4String DtoS (G4double a)
G4String BtoS (G4bool b)
G4int StoI (const G4String &s)
G4long StoL (const G4String &s)
G4double StoD (const G4String &s)
G4bool StoB (const G4String &s)
void AddUIcommand (G4UIcommand *newCommand)
void CreateDirectory (const G4String &path, const G4String &dsc, G4bool commandsToBeBroadcasted=true)
template<typename T>
T * CreateCommand (const G4String &cname, const G4String &dsc)
Protected Attributes inherited from G4UImessenger
G4UIdirectorybaseDir = nullptr
G4String baseDirName = ""
G4bool commandsShouldBeInMaster = false

Detailed Description

Definition at line 48 of file G4EvManMessenger.hh.

Constructor & Destructor Documentation

◆ G4EvManMessenger()

G4EvManMessenger::G4EvManMessenger ( G4EventManager * fEvMan)
explicit

Definition at line 37 of file G4EvManMessenger.cc.

38 : fEvManager(fEvMan)
39{
40 eventDirectory = new G4UIdirectory("/event/");
41 eventDirectory->SetGuidance("EventManager control commands.");
42
43 abortCmd = new G4UIcmdWithoutParameter("/event/abort",this);
44 abortCmd->SetGuidance("Abort current event.");
45 abortCmd->AvailableForStates(G4State_EventProc);
46
47 verboseCmd = new G4UIcmdWithAnInteger("/event/verbose",this);
48 verboseCmd->SetGuidance("Set Verbose level of event management category.");
49 verboseCmd->SetGuidance(" 0 : Silent");
50 verboseCmd->SetGuidance(" 1 : Stacking information");
51 verboseCmd->SetGuidance(" 2 : More...");
52 verboseCmd->SetParameterName("level",false);
53 verboseCmd->SetRange("level>=0");
54
55 storeEvtCmd = new G4UIcmdWithoutParameter("/event/keepCurrentEvent",this);
56 storeEvtCmd->SetGuidance("Store the current event to G4Run object instead of deleting it at the end of event.");
57 storeEvtCmd->SetGuidance("Stored event is available through G4Run until the beginning of next run.");
58 storeEvtCmd->SetGuidance("Given the potential large memory size of G4Event and its data-member objects stored in G4Event,");
59 storeEvtCmd->SetGuidance("the user must be careful and responsible for not to store too many G4Event objects.");
60 storeEvtCmd->AvailableForStates(G4State_EventProc);
61}
@ G4State_EventProc

◆ ~G4EvManMessenger()

G4EvManMessenger::~G4EvManMessenger ( )
override

Definition at line 63 of file G4EvManMessenger.cc.

64{
65 delete abortCmd;
66 delete verboseCmd;
67 delete storeEvtCmd;
68 delete eventDirectory;
69}

Member Function Documentation

◆ GetCurrentValue()

G4String G4EvManMessenger::GetCurrentValue ( G4UIcommand * command)
overridevirtual

Reimplemented from G4UImessenger.

Definition at line 81 of file G4EvManMessenger.cc.

82{
83 G4String cv;
84 if( command == verboseCmd )
85 { cv = verboseCmd->ConvertToString(fEvManager->GetVerboseLevel()); }
86 return cv;
87}

◆ SetNewValue()

void G4EvManMessenger::SetNewValue ( G4UIcommand * command,
G4String newValues )
overridevirtual

Reimplemented from G4UImessenger.

Definition at line 71 of file G4EvManMessenger.cc.

72{
73 if( command == verboseCmd )
74 { fEvManager->SetVerboseLevel(verboseCmd->GetNewIntValue(newValues)); }
75 if( command == abortCmd )
76 { fEvManager->AbortCurrentEvent(); }
77 if( command == storeEvtCmd )
78 { fEvManager->KeepTheCurrentEvent(); }
79}

The documentation for this class was generated from the following files: