Loading...
Searching...
No Matches
Public Member Functions | Private Attributes | List of all members
ExP01DetectorMessenger Class Reference

Detector messenger for the persistency example. More...

#include <Doxymodules_persistency.h>

Inheritance diagram for ExP01DetectorMessenger:
G4UImessenger

Public Member Functions

 ExP01DetectorMessenger (ExP01DetectorConstruction *)
 
 ~ExP01DetectorMessenger ()
 
virtual void SetNewValue (G4UIcommand *, G4String)
 

Private Attributes

ExP01DetectorConstructionfDetector
 
G4UIdirectoryfN02Dir
 
G4UIdirectoryfDetDir
 
G4UIcmdWithAStringfTargMatCmd
 
G4UIcmdWithAStringfChamMatCmd
 
G4UIcmdWithADoubleAndUnitfFieldCmd
 

Detailed Description

Detector messenger for the persistency example.

Definition at line 81 of file Doxymodules_persistency.h.

Constructor & Destructor Documentation

◆ ExP01DetectorMessenger()

ExP01DetectorMessenger::ExP01DetectorMessenger ( ExP01DetectorConstruction myDet)

Definition at line 44 of file ExP01DetectorMessenger.cc.

46 fDetector(myDet),
47 fN02Dir(0),
48 fDetDir(0),
49 fTargMatCmd(0),
50 fChamMatCmd(0),
51 fFieldCmd(0)
52{
53 fN02Dir = new G4UIdirectory("/P01/");
54 fN02Dir->SetGuidance("UI commands specific to this example.");
55
56 fDetDir = new G4UIdirectory("/P01/det/");
57 fDetDir->SetGuidance("detector control.");
58
59 fTargMatCmd = new G4UIcmdWithAString("/P01/det/setTargetMate",this);
60 fTargMatCmd->SetGuidance("Select Material of the Target.");
61 fTargMatCmd->SetParameterName("choice",false);
62 fTargMatCmd->AvailableForStates(G4State_PreInit,G4State_Idle);
63
64 fChamMatCmd = new G4UIcmdWithAString("/P01/det/setChamberMate",this);
65 fChamMatCmd->SetGuidance("Select Material of the Target.");
66 fChamMatCmd->SetParameterName("choice",false);
67 fChamMatCmd->AvailableForStates(G4State_PreInit,G4State_Idle);
68
69 fFieldCmd = new G4UIcmdWithADoubleAndUnit("/P01/det/setField",this);
70 fFieldCmd->SetGuidance("Define magnetic field.");
71 fFieldCmd->SetGuidance("Magnetic field will be in X direction.");
72 fFieldCmd->SetParameterName("Bx",false);
73 fFieldCmd->SetUnitCategory("Magnetic flux density");
74 fFieldCmd->AvailableForStates(G4State_PreInit,G4State_Idle);
75}
G4UIcmdWithAString * fTargMatCmd
G4UIcmdWithAString * fChamMatCmd
ExP01DetectorConstruction * fDetector
G4UIcmdWithADoubleAndUnit * fFieldCmd

◆ ~ExP01DetectorMessenger()

ExP01DetectorMessenger::~ExP01DetectorMessenger ( )

Definition at line 79 of file ExP01DetectorMessenger.cc.

80{
81 delete fTargMatCmd;
82 delete fChamMatCmd;
83 delete fFieldCmd;
84 delete fDetDir;
85 delete fN02Dir;
86}

Member Function Documentation

◆ SetNewValue()

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

Definition at line 90 of file ExP01DetectorMessenger.cc.

91{
92 if( command == fTargMatCmd )
93 { fDetector->SetTargetMaterial(newValue);}
94
95 if( command == fChamMatCmd )
96 { fDetector->SetChamberMaterial(newValue);}
97
98 if( command == fFieldCmd )
99 { fDetector->SetMagField(fFieldCmd->GetNewDoubleValue(newValue));}
100}

Member Data Documentation

◆ fDetector

ExP01DetectorConstruction* ExP01DetectorMessenger::fDetector
private

Definition at line 58 of file ExP01DetectorMessenger.hh.

◆ fN02Dir

G4UIdirectory* ExP01DetectorMessenger::fN02Dir
private

Definition at line 60 of file ExP01DetectorMessenger.hh.

◆ fDetDir

G4UIdirectory* ExP01DetectorMessenger::fDetDir
private

Definition at line 61 of file ExP01DetectorMessenger.hh.

◆ fTargMatCmd

G4UIcmdWithAString* ExP01DetectorMessenger::fTargMatCmd
private

Definition at line 62 of file ExP01DetectorMessenger.hh.

◆ fChamMatCmd

G4UIcmdWithAString* ExP01DetectorMessenger::fChamMatCmd
private

Definition at line 63 of file ExP01DetectorMessenger.hh.

◆ fFieldCmd

G4UIcmdWithADoubleAndUnit* ExP01DetectorMessenger::fFieldCmd
private

Definition at line 64 of file ExP01DetectorMessenger.hh.


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

Applications | User Support | Publications | Collaboration