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

#include <Doxymodules_field.h>

Inheritance diagram for F01DetectorMessenger:
G4UImessenger

Public Member Functions

 F01DetectorMessenger (F01DetectorConstruction *)
 
 ~F01DetectorMessenger () override
 
void SetNewValue (G4UIcommand *, G4String) override
 

Private Attributes

F01DetectorConstructionfDetector = nullptr
 
G4UIdirectoryfDetDir = nullptr
 
G4UIcmdWithAStringfAbsMaterCmd = nullptr
 
G4UIcmdWithADoubleAndUnitfAbsThickCmd = nullptr
 
G4UIcmdWithADoubleAndUnitfAbsRadCmd = nullptr
 
G4UIcmdWithADoubleAndUnitfAbsZposCmd = nullptr
 
G4UIcmdWithAStringfWorldMaterCmd = nullptr
 
G4UIcmdWithADoubleAndUnitfWorldZCmd = nullptr
 
G4UIcmdWithADoubleAndUnitfWorldRCmd = nullptr
 

Detailed Description

Definition at line 36 of file Doxymodules_field.h.

Constructor & Destructor Documentation

◆ F01DetectorMessenger()

F01DetectorMessenger::F01DetectorMessenger ( F01DetectorConstruction det)

Definition at line 44 of file F01DetectorMessenger.cc.

45 : fDetector(det)
46{
47 fDetDir = new G4UIdirectory("/calor/");
48 fDetDir->SetGuidance("F01 detector control.");
49
50 fAbsMaterCmd = new G4UIcmdWithAString("/calor/setAbsMat",this);
51 fAbsMaterCmd->SetGuidance("Select Material of the Absorber.");
52 fAbsMaterCmd->SetParameterName("choice",true);
53 fAbsMaterCmd->SetDefaultValue("Lead");
54 fAbsMaterCmd->AvailableForStates(G4State_Idle);
55 fAbsMaterCmd->SetToBeBroadcasted(false);
56
57 fWorldMaterCmd = new G4UIcmdWithAString("/calor/setWorldMat",this);
58 fWorldMaterCmd->SetGuidance("Select Material of the World.");
59 fWorldMaterCmd->SetParameterName("wchoice",true);
60 fWorldMaterCmd->SetDefaultValue("Air");
61 fWorldMaterCmd->AvailableForStates(G4State_Idle);
62 fWorldMaterCmd->SetToBeBroadcasted(false);
63
64 fAbsThickCmd = new G4UIcmdWithADoubleAndUnit("/calor/setAbsThick",this);
65 fAbsThickCmd->SetGuidance("Set Thickness of the Absorber");
66 fAbsThickCmd->SetParameterName("SizeZ",false,false);
67 fAbsThickCmd->SetDefaultUnit("mm");
68 fAbsThickCmd->SetRange("SizeZ>0.");
69 fAbsThickCmd->AvailableForStates(G4State_Idle);
70 fAbsThickCmd->SetToBeBroadcasted(false);
71
72 fAbsRadCmd = new G4UIcmdWithADoubleAndUnit("/calor/setAbsRad",this);
73 fAbsRadCmd->SetGuidance("Set radius of the Absorber");
74 fAbsRadCmd->SetParameterName("SizeR",false,false);
75 fAbsRadCmd->SetDefaultUnit("mm");
76 fAbsRadCmd->SetRange("SizeR>0.");
77 fAbsRadCmd->AvailableForStates(G4State_Idle);
78 fAbsRadCmd->SetToBeBroadcasted(false);
79
80 fAbsZposCmd = new G4UIcmdWithADoubleAndUnit("/calor/setAbsZpos",this);
81 fAbsZposCmd->SetGuidance("Set Z pos. of the Absorber");
82 fAbsZposCmd->SetParameterName("Zpos",false,false);
83 fAbsZposCmd->SetDefaultUnit("mm");
84 fAbsZposCmd->AvailableForStates(G4State_Idle);
85 fAbsZposCmd->SetToBeBroadcasted(false);
86
87 fWorldZCmd = new G4UIcmdWithADoubleAndUnit("/calor/setWorldZ",this);
88 fWorldZCmd->SetGuidance("Set Z size of the World");
89 fWorldZCmd->SetParameterName("WSizeZ",false,false);
90 fWorldZCmd->SetDefaultUnit("mm");
91 fWorldZCmd->SetRange("WSizeZ>0.");
92 fWorldZCmd->AvailableForStates(G4State_Idle);
93 fWorldZCmd->SetToBeBroadcasted(false);
94
95 fWorldRCmd = new G4UIcmdWithADoubleAndUnit("/calor/setWorldR",this);
96 fWorldRCmd->SetGuidance("Set R size of the World");
97 fWorldRCmd->SetParameterName("WSizeR",false,false);
98 fWorldRCmd->SetDefaultUnit("mm");
99 fWorldRCmd->SetRange("WSizeR>0.");
100 fWorldRCmd->AvailableForStates(G4State_Idle);
101 fWorldRCmd->SetToBeBroadcasted(false);
102}
G4UIcmdWithAString * fWorldMaterCmd
G4UIcmdWithADoubleAndUnit * fWorldZCmd
G4UIcmdWithAString * fAbsMaterCmd
G4UIcmdWithADoubleAndUnit * fWorldRCmd
F01DetectorConstruction * fDetector
G4UIcmdWithADoubleAndUnit * fAbsZposCmd
G4UIcmdWithADoubleAndUnit * fAbsThickCmd
G4UIcmdWithADoubleAndUnit * fAbsRadCmd

◆ ~F01DetectorMessenger()

F01DetectorMessenger::~F01DetectorMessenger ( )
override

Definition at line 106 of file F01DetectorMessenger.cc.

107{
108 delete fAbsMaterCmd;
109 delete fAbsThickCmd;
110 delete fAbsRadCmd;
111 delete fAbsZposCmd;
112 delete fWorldMaterCmd;
113 delete fWorldZCmd;
114 delete fWorldRCmd;
115 delete fDetDir;
116}

Member Function Documentation

◆ SetNewValue()

void F01DetectorMessenger::SetNewValue ( G4UIcommand command,
G4String  newValue 
)
override

Definition at line 120 of file F01DetectorMessenger.cc.

121{
122 if( command == fAbsMaterCmd )
123 { fDetector->SetAbsorberMaterial(newValue);}
124
125 if( command == fWorldMaterCmd )
126 { fDetector->SetWorldMaterial(newValue);}
127
128 if( command == fAbsThickCmd )
129 {fDetector->SetAbsorberThickness(fAbsThickCmd->GetNewDoubleValue(newValue));}
130
131 if( command == fAbsRadCmd )
132 { fDetector->SetAbsorberRadius(fAbsRadCmd->GetNewDoubleValue(newValue));}
133
134 if( command == fAbsZposCmd )
135 { fDetector->SetAbsorberZpos(fAbsZposCmd->GetNewDoubleValue(newValue));}
136
137 if( command == fWorldZCmd )
138 { fDetector->SetWorldSizeZ(fWorldZCmd->GetNewDoubleValue(newValue));}
139
140 if( command == fWorldRCmd )
141 { fDetector->SetWorldSizeR(fWorldRCmd->GetNewDoubleValue(newValue));}
142}

Member Data Documentation

◆ fDetector

F01DetectorConstruction* F01DetectorMessenger::fDetector = nullptr
private

Definition at line 61 of file F01DetectorMessenger.hh.

◆ fDetDir

G4UIdirectory* F01DetectorMessenger::fDetDir = nullptr
private

Definition at line 63 of file F01DetectorMessenger.hh.

◆ fAbsMaterCmd

G4UIcmdWithAString* F01DetectorMessenger::fAbsMaterCmd = nullptr
private

Definition at line 65 of file F01DetectorMessenger.hh.

◆ fAbsThickCmd

G4UIcmdWithADoubleAndUnit* F01DetectorMessenger::fAbsThickCmd = nullptr
private

Definition at line 66 of file F01DetectorMessenger.hh.

◆ fAbsRadCmd

G4UIcmdWithADoubleAndUnit* F01DetectorMessenger::fAbsRadCmd = nullptr
private

Definition at line 67 of file F01DetectorMessenger.hh.

◆ fAbsZposCmd

G4UIcmdWithADoubleAndUnit* F01DetectorMessenger::fAbsZposCmd = nullptr
private

Definition at line 69 of file F01DetectorMessenger.hh.

◆ fWorldMaterCmd

G4UIcmdWithAString* F01DetectorMessenger::fWorldMaterCmd = nullptr
private

Definition at line 71 of file F01DetectorMessenger.hh.

◆ fWorldZCmd

G4UIcmdWithADoubleAndUnit* F01DetectorMessenger::fWorldZCmd = nullptr
private

Definition at line 72 of file F01DetectorMessenger.hh.

◆ fWorldRCmd

G4UIcmdWithADoubleAndUnit* F01DetectorMessenger::fWorldRCmd = nullptr
private

Definition at line 73 of file F01DetectorMessenger.hh.


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

Applications | User Support | Publications | Collaboration