QwGeant4
QweakSimLumiMessenger Class Reference

#include <QweakSimLumiMessenger.hh>

Inherits G4UImessenger.

+ Collaboration diagram for QweakSimLumiMessenger:

Public Member Functions

 QweakSimLumiMessenger (QweakSimLumiDetector *)
 
 ~QweakSimLumiMessenger ()
 
void SetNewValue (G4UIcommand *, G4String)
 

Private Attributes

QweakSimLumiDetectormyLumi
 
G4UIdirectory * LumiDir
 
G4UIcmdWithADoubleAndUnit * USLumi_SetPositionInX_Cmd
 
G4UIcmdWithADoubleAndUnit * USLumi_SetPositionInY_Cmd
 
G4UIcmdWithADoubleAndUnit * USLumi_SetPositionInZ_Cmd
 
G4UIcmdWithoutParameter * USLumi_SetEnabled_Cmd
 
G4UIcmdWithoutParameter * USLumi_SetDisabled_Cmd
 

Detailed Description

Definition at line 16 of file QweakSimLumiMessenger.hh.

Constructor & Destructor Documentation

QweakSimLumiMessenger::QweakSimLumiMessenger ( QweakSimLumiDetector theLumi)

Definition at line 12 of file QweakSimLumiMessenger.cc.

References LumiDir, USLumi_SetDisabled_Cmd, USLumi_SetEnabled_Cmd, USLumi_SetPositionInX_Cmd, USLumi_SetPositionInY_Cmd, and USLumi_SetPositionInZ_Cmd.

12  :myLumi(theLumi) {
13  /* Set directory for lumi control. */
14  LumiDir = new G4UIdirectory("/Lumi/");
15  LumiDir->SetGuidance("Lumi detector control");
16 
17  /* Change position of lumi. */
18  USLumi_SetPositionInX_Cmd = new G4UIcmdWithADoubleAndUnit("/Lumi/SetUSPositionInX", this);
19  USLumi_SetPositionInX_Cmd->SetGuidance("Set the X positiion of the USLumi");
20  USLumi_SetPositionInX_Cmd->SetParameterName("Size", true);
21  USLumi_SetPositionInX_Cmd->SetUnitCategory("Length");
22  USLumi_SetPositionInX_Cmd->AvailableForStates(G4State_PreInit, G4State_Idle);
23 
24  USLumi_SetPositionInY_Cmd = new G4UIcmdWithADoubleAndUnit("/Lumi/SetUSPositionInY", this);
25  USLumi_SetPositionInY_Cmd->SetGuidance("Set the Y positiion of the USLumi");
26  USLumi_SetPositionInY_Cmd->SetParameterName("Size", true);
27  USLumi_SetPositionInY_Cmd->SetUnitCategory("Length");
28  USLumi_SetPositionInY_Cmd->AvailableForStates(G4State_PreInit, G4State_Idle);
29 
30  USLumi_SetPositionInZ_Cmd = new G4UIcmdWithADoubleAndUnit("/Lumi/SetUSPositionInZ", this);
31  USLumi_SetPositionInZ_Cmd->SetGuidance("Set the Z positiion of the USLumi");
32  USLumi_SetPositionInZ_Cmd->SetParameterName("Size", true);
33  USLumi_SetPositionInZ_Cmd->SetUnitCategory("Length");
34  USLumi_SetPositionInZ_Cmd->AvailableForStates(G4State_PreInit, G4State_Idle);
35 
36  /* Enable Lumis. */
37  USLumi_SetEnabled_Cmd = new G4UIcmdWithoutParameter("/Lumi/USEnable", this);
38  USLumi_SetEnabled_Cmd->SetGuidance("Enables the USLumis");
39  USLumi_SetEnabled_Cmd->AvailableForStates(G4State_PreInit, G4State_Idle);
40 
41  /* Disable Lumis. */
42  USLumi_SetDisabled_Cmd = new G4UIcmdWithoutParameter("/Lumi/USDisable", this);
43  USLumi_SetDisabled_Cmd->SetGuidance("Disables the USLumis");
44  USLumi_SetDisabled_Cmd->AvailableForStates(G4State_PreInit, G4State_Idle);
45 }
QweakSimLumiDetector * myLumi
G4UIcmdWithADoubleAndUnit * USLumi_SetPositionInX_Cmd
G4UIcmdWithoutParameter * USLumi_SetDisabled_Cmd
G4UIcmdWithADoubleAndUnit * USLumi_SetPositionInZ_Cmd
G4UIcmdWithADoubleAndUnit * USLumi_SetPositionInY_Cmd
G4UIcmdWithoutParameter * USLumi_SetEnabled_Cmd
QweakSimLumiMessenger::~QweakSimLumiMessenger ( )

Member Function Documentation

void QweakSimLumiMessenger::SetNewValue ( G4UIcommand *  command,
G4String  newValue 
)

Definition at line 58 of file QweakSimLumiMessenger.cc.

References myLumi, QweakSimLumiDetector::SetUSLumi_Disabled(), QweakSimLumiDetector::SetUSLumi_Enabled(), QweakSimLumiDetector::SetUSLumi_PositionInX(), QweakSimLumiDetector::SetUSLumi_PositionInY(), QweakSimLumiDetector::SetUSLumi_PositionInZ(), USLumi_SetDisabled_Cmd, USLumi_SetEnabled_Cmd, USLumi_SetPositionInX_Cmd, USLumi_SetPositionInY_Cmd, and USLumi_SetPositionInZ_Cmd.

58  {
59  G4cout << "=== Calling QweakSimLumiMessenger::SetNewValue() " << newValue << G4endl;
60 
61  if(command == USLumi_SetPositionInX_Cmd) {
62  G4cout << "=== Messenger: Setting USLumi X position to " << newValue << G4endl;
63  myLumi->SetUSLumi_PositionInX(USLumi_SetPositionInX_Cmd->GetNewDoubleValue(newValue));
64  }
65 
66  if(command == USLumi_SetPositionInY_Cmd) {
67  G4cout << "=== Messenger: Setting USLumi Y position to " << newValue << G4endl;
68  myLumi->SetUSLumi_PositionInY(USLumi_SetPositionInY_Cmd->GetNewDoubleValue(newValue));
69  }
70 
71  if(command == USLumi_SetPositionInZ_Cmd) {
72  G4cout << "=== Messenger: Setting USLumi Z position to " << newValue << G4endl;
73  myLumi->SetUSLumi_PositionInZ(USLumi_SetPositionInZ_Cmd->GetNewDoubleValue(newValue));
74  }
75 
76  if(command == USLumi_SetEnabled_Cmd) {
77  G4cout << "=== Messenger: ENABLE the USLumi" << G4endl;
79  }
80 
81  if(command == USLumi_SetDisabled_Cmd) {
82  G4cout << "=== Messenger: DISABLE the USLumi" << G4endl;
84  }
85 
86  G4cout << "=== Leaving QweakSimLumiMessenger::SetNewValue() " << newValue << G4endl;
87 }
QweakSimLumiDetector * myLumi
G4UIcmdWithADoubleAndUnit * USLumi_SetPositionInX_Cmd
G4UIcmdWithoutParameter * USLumi_SetDisabled_Cmd
G4UIcmdWithADoubleAndUnit * USLumi_SetPositionInZ_Cmd
void SetUSLumi_PositionInX(G4double)
G4UIcmdWithADoubleAndUnit * USLumi_SetPositionInY_Cmd
G4UIcmdWithoutParameter * USLumi_SetEnabled_Cmd
void SetUSLumi_PositionInY(G4double)
void SetUSLumi_PositionInZ(G4double)

+ Here is the call graph for this function:

Field Documentation

G4UIdirectory* QweakSimLumiMessenger::LumiDir
private

Definition at line 24 of file QweakSimLumiMessenger.hh.

Referenced by QweakSimLumiMessenger(), and ~QweakSimLumiMessenger().

QweakSimLumiDetector* QweakSimLumiMessenger::myLumi
private

Definition at line 23 of file QweakSimLumiMessenger.hh.

Referenced by SetNewValue().

G4UIcmdWithoutParameter* QweakSimLumiMessenger::USLumi_SetDisabled_Cmd
private
G4UIcmdWithoutParameter* QweakSimLumiMessenger::USLumi_SetEnabled_Cmd
private
G4UIcmdWithADoubleAndUnit* QweakSimLumiMessenger::USLumi_SetPositionInX_Cmd
private
G4UIcmdWithADoubleAndUnit* QweakSimLumiMessenger::USLumi_SetPositionInY_Cmd
private
G4UIcmdWithADoubleAndUnit* QweakSimLumiMessenger::USLumi_SetPositionInZ_Cmd
private

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