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

#include <Doxymodules_biasing.h>

Inheritance diagram for GB03DetectorMessenger:
G4UImessenger

Public Member Functions

 GB03DetectorMessenger (GB03DetectorConstruction *)
 
virtual ~GB03DetectorMessenger ()
 
virtual void SetNewValue (G4UIcommand *, G4String)
 
virtual G4String GetCurrentValue (G4UIcommand *command)
 

Private Attributes

GB03DetectorConstructionfDetector
 
G4UIdirectoryfDirectory
 
G4UIcmdWithAStringfAbsMaterialCmd
 
G4UIcmdWithAStringfGapMaterialCmd
 
G4UIcmdWithAnIntegerfNumLayerCmd
 
G4UIcmdWithAnIntegerfVerboseCmd
 

Detailed Description

Definition at line 97 of file Doxymodules_biasing.h.

Constructor & Destructor Documentation

◆ GB03DetectorMessenger()

GB03DetectorMessenger::GB03DetectorMessenger ( GB03DetectorConstruction det)

Definition at line 40 of file GB03DetectorMessenger.cc.

41 : G4UImessenger(), fDetector(det)
42{
43 fDirectory = new G4UIdirectory("/GB03/");
44 fDirectory->SetGuidance("UI commands of this example");
45
46 G4String matList;
47 const G4MaterialTable* matTbl = G4Material::GetMaterialTable();
48 for(size_t i=0;i<G4Material::GetNumberOfMaterials();i++)
49 {
50 matList += (*matTbl)[i]->GetName();
51 matList += " ";
52 }
53
54 fAbsMaterialCmd = new G4UIcmdWithAString("/GB03/setAbsMat",this);
55 fAbsMaterialCmd->SetGuidance("Select Material of the Absorber.");
56 fAbsMaterialCmd->SetParameterName("choice",false);
57 fAbsMaterialCmd->AvailableForStates(G4State_Idle);
58 fAbsMaterialCmd->SetCandidates(matList);
59
60 fGapMaterialCmd = new G4UIcmdWithAString("/GB03/setGapMat",this);
61 fGapMaterialCmd->SetGuidance("Select Material of the Gap.");
62 fGapMaterialCmd->SetParameterName("choice",false);
63 fGapMaterialCmd->AvailableForStates(G4State_Idle);
64 fGapMaterialCmd->SetCandidates(matList);
65
66 fNumLayerCmd = new G4UIcmdWithAnInteger("/GB03/numberOfLayers",this);
67 fNumLayerCmd->SetGuidance("Set number of layers.");
68 fNumLayerCmd->SetParameterName("nl",false);
69 fNumLayerCmd->AvailableForStates(G4State_Idle);
70 fNumLayerCmd->SetRange("nl>0");
71
72 fVerboseCmd = new G4UIcmdWithAnInteger("/GB03/verbose",this);
73 fVerboseCmd->SetGuidance("Set verbosity level");
74 fVerboseCmd->SetParameterName("verbose",false);
75 fVerboseCmd->AvailableForStates(G4State_Idle);
76 fVerboseCmd->SetRange("verbose>=0");
77
78}
G4UIcmdWithAnInteger * fNumLayerCmd
G4UIcmdWithAString * fGapMaterialCmd
G4UIcmdWithAnInteger * fVerboseCmd
GB03DetectorConstruction * fDetector
G4UIcmdWithAString * fAbsMaterialCmd

◆ ~GB03DetectorMessenger()

GB03DetectorMessenger::~GB03DetectorMessenger ( )
virtual

Definition at line 82 of file GB03DetectorMessenger.cc.

83{
84 delete fAbsMaterialCmd;
85 delete fGapMaterialCmd;
86 delete fNumLayerCmd;
87 delete fVerboseCmd;
88 delete fDirectory;
89}

Member Function Documentation

◆ SetNewValue()

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

Definition at line 93 of file GB03DetectorMessenger.cc.

94{
95 if( command == fAbsMaterialCmd ) {
97
98 } else if( command == fGapMaterialCmd ){
99 fDetector->SetGapMaterial(newValue);
100
101 } else if( command == fNumLayerCmd ) {
102 fDetector->SetNumberOfLayers(fNumLayerCmd->GetNewIntValue(newValue));
103
104 } else if( command == fVerboseCmd ) {
105 fDetector->SetVerboseLevel(fVerboseCmd->GetNewIntValue(newValue));
106 }
107}
void SetAbsorberMaterial(G4String materialChoice)
void SetGapMaterial(G4String materialChoice)

◆ GetCurrentValue()

G4String GB03DetectorMessenger::GetCurrentValue ( G4UIcommand command)
virtual

Definition at line 111 of file GB03DetectorMessenger.cc.

112{
113 G4String ans;
114 if( command == fAbsMaterialCmd ){
116
117 } else if( command == fGapMaterialCmd ){
119
120 } else if( command == fNumLayerCmd ) {
122
123 } else if( command == fVerboseCmd ) {
124 ans=fVerboseCmd->ConvertToString(fDetector->GetVerboseLevel());
125
126 }
127 return ans;
128}

Member Data Documentation

◆ fDetector

GB03DetectorConstruction* GB03DetectorMessenger::fDetector
private

Definition at line 51 of file GB03DetectorMessenger.hh.

◆ fDirectory

G4UIdirectory* GB03DetectorMessenger::fDirectory
private

Definition at line 53 of file GB03DetectorMessenger.hh.

◆ fAbsMaterialCmd

G4UIcmdWithAString* GB03DetectorMessenger::fAbsMaterialCmd
private

Definition at line 54 of file GB03DetectorMessenger.hh.

◆ fGapMaterialCmd

G4UIcmdWithAString* GB03DetectorMessenger::fGapMaterialCmd
private

Definition at line 55 of file GB03DetectorMessenger.hh.

◆ fNumLayerCmd

G4UIcmdWithAnInteger* GB03DetectorMessenger::fNumLayerCmd
private

Definition at line 56 of file GB03DetectorMessenger.hh.

◆ fVerboseCmd

G4UIcmdWithAnInteger* GB03DetectorMessenger::fVerboseCmd
private

Definition at line 57 of file GB03DetectorMessenger.hh.


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

Applications | User Support | Publications | Collaboration