Geant4  10.02.p03
ExN02DetectorMessenger Class Reference

#include <ExN02DetectorMessenger.hh>

Inheritance diagram for ExN02DetectorMessenger:
Collaboration diagram for ExN02DetectorMessenger:

Public Member Functions

 ExN02DetectorMessenger (ExN02DetectorConstruction *)
 
 ~ExN02DetectorMessenger ()
 
void SetNewValue (G4UIcommand *, G4String)
 
- Public Member Functions inherited from G4UImessenger
 G4UImessenger ()
 
 G4UImessenger (const G4String &path, const G4String &dsc, G4bool commandsToBeBroadcasted=true)
 
virtual ~G4UImessenger ()
 
virtual G4String GetCurrentValue (G4UIcommand *command)
 
G4bool operator== (const G4UImessenger &messenger) const
 
G4bool CommandsShouldBeInMaster () const
 

Private Attributes

ExN02DetectorConstructionmyDetector
 
G4UIdirectoryN02Dir
 
G4UIdirectorydetDir
 
G4UIcmdWithAStringTargMatCmd
 
G4UIcmdWithAStringChamMatCmd
 
G4UIcmdWithADoubleAndUnitFieldCmd
 
G4UIcmdWithADoubleAndUnitStepMaxCmd
 

Additional Inherited Members

- Protected Member Functions inherited from G4UImessenger
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, G4bool commandsToBeBroadcasted=true)
 
template<typename T >
T * CreateCommand (const G4String &cname, const G4String &dsc)
 
- Protected Attributes inherited from G4UImessenger
G4UIdirectorybaseDir
 
G4String baseDirName
 
G4bool commandsShouldBeInMaster
 

Detailed Description

Definition at line 48 of file ExN02DetectorMessenger.hh.

Constructor & Destructor Documentation

◆ ExN02DetectorMessenger()

ExN02DetectorMessenger::ExN02DetectorMessenger ( ExN02DetectorConstruction myDet)

Definition at line 45 of file ExN02DetectorMessenger.cc.

46 :myDetector(myDet)
47 {
48  N02Dir = new G4UIdirectory("/N02/");
49  N02Dir->SetGuidance("UI commands specific to this example.");
50 
51  detDir = new G4UIdirectory("/N02/det/");
52  detDir->SetGuidance("detector control.");
53 
54  TargMatCmd = new G4UIcmdWithAString("/N02/det/setTargetMate",this);
55  TargMatCmd->SetGuidance("Select Material of the Target.");
56  TargMatCmd->SetParameterName("choice",false);
58 
59  ChamMatCmd = new G4UIcmdWithAString("/N02/det/setChamberMate",this);
60  ChamMatCmd->SetGuidance("Select Material of the Target.");
61  ChamMatCmd->SetParameterName("choice",false);
63 
64  FieldCmd = new G4UIcmdWithADoubleAndUnit("/N02/det/setField",this);
65  FieldCmd->SetGuidance("Define magnetic field.");
66  FieldCmd->SetGuidance("Magnetic field will be in X direction.");
67  FieldCmd->SetParameterName("Bx",false);
68  FieldCmd->SetUnitCategory("Magnetic flux density");
70 
71  StepMaxCmd = new G4UIcmdWithADoubleAndUnit("/N02/det/stepMax",this);
72  StepMaxCmd->SetGuidance("Define a step max");
73  StepMaxCmd->SetParameterName("stepMax",false);
74  StepMaxCmd->SetUnitCategory("Length");
76 }
void SetParameterName(const char *theName, G4bool omittable, G4bool currentAsDefault=false)
G4UIcmdWithADoubleAndUnit * FieldCmd
void SetUnitCategory(const char *unitCategory)
G4UIcmdWithAString * ChamMatCmd
G4UIcmdWithADoubleAndUnit * StepMaxCmd
G4UIcmdWithAString * TargMatCmd
void SetGuidance(const char *aGuidance)
Definition: G4UIcommand.hh:161
void AvailableForStates(G4ApplicationState s1)
Definition: G4UIcommand.cc:239
ExN02DetectorConstruction * myDetector
void SetParameterName(const char *theName, G4bool omittable, G4bool currentAsDefault=false)
Here is the call graph for this function:

◆ ~ExN02DetectorMessenger()

ExN02DetectorMessenger::~ExN02DetectorMessenger ( )

Definition at line 80 of file ExN02DetectorMessenger.cc.

81 {
82  delete TargMatCmd;
83  delete ChamMatCmd;
84  delete FieldCmd;
85  delete StepMaxCmd;
86  delete detDir;
87  delete N02Dir;
88 }
G4UIcmdWithADoubleAndUnit * FieldCmd
G4UIcmdWithAString * ChamMatCmd
G4UIcmdWithADoubleAndUnit * StepMaxCmd
G4UIcmdWithAString * TargMatCmd

Member Function Documentation

◆ SetNewValue()

void ExN02DetectorMessenger::SetNewValue ( G4UIcommand command,
G4String  newValue 
)
virtual

Reimplemented from G4UImessenger.

Definition at line 92 of file ExN02DetectorMessenger.cc.

93 {
94  if( command == TargMatCmd )
95  { myDetector->setTargetMaterial(newValue);}
96 
97  if( command == ChamMatCmd )
98  { myDetector->setChamberMaterial(newValue);}
99 
100  if( command == FieldCmd )
102 
103  if( command == StepMaxCmd )
105 }
G4UIcmdWithADoubleAndUnit * FieldCmd
G4UIcmdWithAString * ChamMatCmd
static G4double GetNewDoubleValue(const char *paramString)
G4UIcmdWithADoubleAndUnit * StepMaxCmd
G4UIcmdWithAString * TargMatCmd
ExN02DetectorConstruction * myDetector
Here is the call graph for this function:

Member Data Documentation

◆ ChamMatCmd

G4UIcmdWithAString* ExN02DetectorMessenger::ChamMatCmd
private

Definition at line 62 of file ExN02DetectorMessenger.hh.

◆ detDir

G4UIdirectory* ExN02DetectorMessenger::detDir
private

Definition at line 60 of file ExN02DetectorMessenger.hh.

◆ FieldCmd

G4UIcmdWithADoubleAndUnit* ExN02DetectorMessenger::FieldCmd
private

Definition at line 63 of file ExN02DetectorMessenger.hh.

◆ myDetector

ExN02DetectorConstruction* ExN02DetectorMessenger::myDetector
private

Definition at line 57 of file ExN02DetectorMessenger.hh.

◆ N02Dir

G4UIdirectory* ExN02DetectorMessenger::N02Dir
private

Definition at line 59 of file ExN02DetectorMessenger.hh.

◆ StepMaxCmd

G4UIcmdWithADoubleAndUnit* ExN02DetectorMessenger::StepMaxCmd
private

Definition at line 64 of file ExN02DetectorMessenger.hh.

◆ TargMatCmd

G4UIcmdWithAString* ExN02DetectorMessenger::TargMatCmd
private

Definition at line 61 of file ExN02DetectorMessenger.hh.


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