16 #include "G4RunManager.hh" 21 #include "G4UIdirectory.hh" 22 #include "G4UIcmdWithAString.hh" 23 #include "G4UIcmdWithAnInteger.hh" 24 #include "G4UIcmdWithADoubleAndUnit.hh" 25 #include "G4UIcmdWith3VectorAndUnit.hh" 26 #include "G4UIcmdWithoutParameter.hh" 32 :ActarSimSciDetector(ActarSimSciDet) {
34 detDir =
new G4UIdirectory(
"/ActarSim/det/sci/");
35 detDir->SetGuidance(
"scintillator detector control");
37 printCmd =
new G4UIcmdWithoutParameter(
"/ActarSim/det/sci/print",
this);
38 printCmd->SetGuidance(
"Prints geometry.");
39 printCmd->AvailableForStates(G4State_Idle);
41 sideCoverageCmd =
new G4UIcmdWithAnInteger(
"/ActarSim/det/sci/sideCoverage",
this);
42 sideCoverageCmd->SetGuidance(
"Selects the scintillator coverage (default 1).");
43 sideCoverageCmd->SetGuidance(
" 6 bits to indicate which sci wall is present (1) or absent (0). The order is: ");
47 sideCoverageCmd->SetGuidance(
" bit4 left (from beam point of view) wall ");
48 sideCoverageCmd->SetGuidance(
" bit5 right (from beam point of view) wall ");
50 sideCoverageCmd->SetGuidance(
" Convert the final binary to a decimal number (betwee 0 and 63) and set the coverage! ");
54 xBoxHalfLengthCmd =
new G4UIcmdWithADoubleAndUnit(
"/ActarSim/det/sci/xBoxHalfLength",
this);
55 xBoxHalfLengthCmd->SetGuidance(
"Sets the x half length of the scintillator detectors box");
62 yBoxHalfLengthCmd =
new G4UIcmdWithADoubleAndUnit(
"/ActarSim/det/sci/yBoxHalfLength",
this);
63 yBoxHalfLengthCmd->SetGuidance(
"Sets the y half length of the scintillator detectors box");
70 zBoxHalfLengthCmd =
new G4UIcmdWithADoubleAndUnit(
"/ActarSim/det/sci/zBoxHalfLength",
this);
71 zBoxHalfLengthCmd->SetGuidance(
"Sets the z half length of the scintillator detectors box");
G4UIcmdWithADoubleAndUnit * zBoxHalfLengthCmd
Sets the z half length of the sci detectors box.
void SetSideCoverage(G4int cov)
G4UIcmdWithAnInteger * sideCoverageCmd
Selects the scintillator coverage (default 1)
ActarSimSciDetectorMessenger(ActarSimSciDetectorConstruction *)
Constructor with complete functionality.
void SetXBoxSciHalfLength(G4double xBox)
void SetYBoxSciHalfLength(G4double yBox)
G4UIdirectory * detDir
Directory in messenger structure.
G4UIcmdWithADoubleAndUnit * xBoxHalfLengthCmd
Sets the x half length of the sci detectors box.
void SetNewValue(G4UIcommand *, G4String)
Setting the new values and connecting to actions.
void SetZBoxSciHalfLength(G4double zBox)
void PrintDetectorParameters()
Prints Scintillator detector parameters. TODO: To be filled.
G4UIcmdWithADoubleAndUnit * yBoxHalfLengthCmd
Sets the y half length of the sci detectors box.
G4UIcmdWithoutParameter * printCmd
Prints geometry.
ActarSimSciDetectorConstruction * ActarSimSciDetector
Pointer to main sci detector class.
~ActarSimSciDetectorMessenger()
Destructor.