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

#include <Doxymodules_medical.h>

Inheritance diagram for RadioBio::RBEMessenger:
G4UImessenger

Public Member Functions

 RBEMessenger (RBE *)
 
 ~RBEMessenger () override
 
void SetNewValue (G4UIcommand *, G4String) override
 

Private Attributes

RBEfRBE = nullptr
 
G4UIdirectoryfRBEDir = nullptr
 
G4UIcmdWithABoolfCalculationCmd = nullptr
 
G4UIcmdWithAnIntegerfVerbosityCmd = nullptr
 
G4UIcmdWithAStringfLemTableCmd = nullptr
 
G4UIcmdWithAStringfCellLineCmd = nullptr
 
G4UIcmdWithoutParameterfResetCmd = nullptr
 
G4UIcmdWithoutParameterfPrintCmd = nullptr
 

Detailed Description

Definition at line 143 of file Doxymodules_medical.h.

Constructor & Destructor Documentation

◆ RBEMessenger()

RadioBio::RBEMessenger::RBEMessenger ( RBE rbe)

Definition at line 45 of file RBEMessenger.cc.

45 : G4UImessenger(), fRBE(rbe)
46{
47 // Directory for RBE commands
48 fRBEDir = new G4UIdirectory("/rbe/");
49 fRBEDir->SetGuidance("commands to setup RBE calculation");
50
51 // Activate RBE calculation
52 fCalculationCmd = new G4UIcmdWithABool("/rbe/calculate", this);
53 fCalculationCmd->SetGuidance("Whether to enable RBE calculation");
54 fCalculationCmd->AvailableForStates(G4State_PreInit, G4State_Idle);
55 fCalculationCmd->SetToBeBroadcasted(false);
56
57 // Set RBE verbosity
58 fVerbosityCmd = new G4UIcmdWithAnInteger("/rbe/verbose", this);
59 fVerbosityCmd->SetGuidance("Set verbosity level of RBE");
60 fVerbosityCmd->SetGuidance("0 = quiet");
61 fVerbosityCmd->SetGuidance("1 = important messages (~10 per run)");
62 fVerbosityCmd->SetGuidance("2 = debug");
63 fVerbosityCmd->SetToBeBroadcasted(false);
64
65 // Load a LEM table
66 fLemTableCmd = new G4UIcmdWithAString("/rbe/loadLemTable", this);
67 fLemTableCmd->SetGuidance("Load a LEM table used in calculating alpha&beta");
68 fLemTableCmd->AvailableForStates(G4State_PreInit, G4State_Idle);
69 fLemTableCmd->SetToBeBroadcasted(false);
70
71 // Load a cell line
72 fCellLineCmd = new G4UIcmdWithAString("/rbe/cellLine", this);
73 fCellLineCmd->SetGuidance("Set the cell line for alpha&beta calculation");
74 fCellLineCmd->AvailableForStates(G4State_PreInit, G4State_Idle);
75 fCellLineCmd->SetToBeBroadcasted(false);
76
77 // Reset RBE data
78 fResetCmd = new G4UIcmdWithoutParameter("/rbe/reset", this);
79 fResetCmd->SetGuidance("Reset accumulated data");
80 fResetCmd->AvailableForStates(G4State_PreInit, G4State_Idle);
81 fResetCmd->SetToBeBroadcasted(false);
82
83 // Print Parameters
84 fPrintCmd = new G4UIcmdWithoutParameter("/rbe/print", this);
85 fPrintCmd->SetGuidance("Print RBE parameters");
86 fPrintCmd->AvailableForStates(G4State_PreInit, G4State_Idle);
87 fPrintCmd->SetToBeBroadcasted(false);
88}
G4UIdirectory * fRBEDir
G4UIcmdWithAString * fLemTableCmd
G4UIcmdWithABool * fCalculationCmd
G4UIcmdWithoutParameter * fResetCmd
G4UIcmdWithoutParameter * fPrintCmd
G4UIcmdWithAString * fCellLineCmd
G4UIcmdWithAnInteger * fVerbosityCmd

◆ ~RBEMessenger()

RadioBio::RBEMessenger::~RBEMessenger ( )
override

Definition at line 92 of file RBEMessenger.cc.

93{
94 delete fRBEDir;
95 delete fCalculationCmd;
96 delete fVerbosityCmd;
97 delete fLemTableCmd;
98 delete fCellLineCmd;
99 delete fResetCmd;
100 delete fPrintCmd;
101}

Member Function Documentation

◆ SetNewValue()

void RadioBio::RBEMessenger::SetNewValue ( G4UIcommand command,
G4String  newValue 
)
override

Definition at line 105 of file RBEMessenger.cc.

106{
107 if (command == fCalculationCmd) {
108 fRBE->SetCalculationEnabled(fCalculationCmd->GetNewBoolValue(newValue));
109 }
110
111 if (command == fVerbosityCmd) {
112 fRBE->SetVerboseLevel(fVerbosityCmd->GetNewIntValue(newValue));
113 }
114
115 if (command == fLemTableCmd) {
116 fRBE->LoadLEMTable(newValue);
117 }
118
119 if (command == fCellLineCmd) {
120 fRBE->SetCellLine(newValue);
121 }
122
123 if (command == fResetCmd) {
124 fRBE->Reset();
125 }
126
127 if (command == fPrintCmd) {
129 }
130}
void SetCellLine(G4String name)
Definition RBE.cc:242
void PrintParameters() override
Definition RBE.cc:99
void LoadLEMTable(G4String path)
Definition RBE.cc:146
void Reset() override
Definition RBE.cc:636

Member Data Documentation

◆ fRBE

RBE* RadioBio::RBEMessenger::fRBE = nullptr
private

Definition at line 57 of file RBEMessenger.hh.

◆ fRBEDir

G4UIdirectory* RadioBio::RBEMessenger::fRBEDir = nullptr
private

Definition at line 59 of file RBEMessenger.hh.

◆ fCalculationCmd

G4UIcmdWithABool* RadioBio::RBEMessenger::fCalculationCmd = nullptr
private

Definition at line 60 of file RBEMessenger.hh.

◆ fVerbosityCmd

G4UIcmdWithAnInteger* RadioBio::RBEMessenger::fVerbosityCmd = nullptr
private

Definition at line 61 of file RBEMessenger.hh.

◆ fLemTableCmd

G4UIcmdWithAString* RadioBio::RBEMessenger::fLemTableCmd = nullptr
private

Definition at line 62 of file RBEMessenger.hh.

◆ fCellLineCmd

G4UIcmdWithAString* RadioBio::RBEMessenger::fCellLineCmd = nullptr
private

Definition at line 63 of file RBEMessenger.hh.

◆ fResetCmd

G4UIcmdWithoutParameter* RadioBio::RBEMessenger::fResetCmd = nullptr
private

Definition at line 64 of file RBEMessenger.hh.

◆ fPrintCmd

G4UIcmdWithoutParameter* RadioBio::RBEMessenger::fPrintCmd = nullptr
private

Definition at line 65 of file RBEMessenger.hh.


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

Applications | User Support | Publications | Collaboration