QwGeant4
QweakSimVDCMessenger Class Reference

Scans the input file for /VDC/xyz commands. More...

#include <QweakSimVDCMessenger.hh>

Inherits G4UImessenger.

+ Collaboration diagram for QweakSimVDCMessenger:

Public Member Functions

 QweakSimVDCMessenger (QweakSimVDC *, G4int pkg=0)
 
 ~QweakSimVDCMessenger ()
 
G4int GetPackage ()
 
void SetNewValue (G4UIcommand *, G4String)
 
void SetVDCRotator (QweakSimVDCRotator *theRotator)
 

Private Attributes

QweakSimVDCmyVDC
 
QweakSimVDCRotatormyRotator
 
QweakSimTriggerScintillatormyTriggerScintillator
 
G4UIdirectory * VDCDir
 
G4int fPackage
 
G4UIdirectory * DirPerPackage
 
G4UIcmdWithAString * VDC_MasterContainerMatCmd
 
G4UIcmdWithAString * VDC_SubContainerMatCmd
 
G4UIcmdWithAString * VDC_G10FrameMatCmd
 
G4UIcmdWithAString * VDC_AluFrameMatCmd
 
G4UIcmdWithAString * VDC_FoilMatCmd
 
G4UIcmdWithAString * VDC_WirePlaneMatCmd
 
G4UIcmdWithADoubleAndUnit * VDC_FrontCenterPositionInX_Cmd
 
G4UIcmdWithADoubleAndUnit * VDC_FrontCenterPositionInY_Cmd
 
G4UIcmdWithADoubleAndUnit * VDC_FrontCenterPositionInZ_Cmd
 
G4UIcmdWithADoubleAndUnit * VDC_RotationAngleInPhi_Cmd
 
G4UIcmdWithADoubleAndUnit * VDC_MeanTrackAngleInTheta_Cmd
 
G4UIdirectory * DriftCellDir
 
G4UIcmdWithAString * DCMatCmd
 
G4UIcmdWithADoubleAndUnit * DCFrontWireAngleCmd
 
G4UIcmdWithADoubleAndUnit * DCBackWireAngleCmd
 
G4UIcmdWithADoubleAndUnit * DCThicknessCmd
 
G4UIcmdWithADoubleAndUnit * DCHeightCmd
 
G4UIcmdWithADoubleAndUnit * DCWidthOnFrameCmd
 
G4UIcmdWithAnInteger * DCNumberPerPlaneCmd
 
G4UIcmdWithADoubleAndUnit * VDC_FrontCenterPositionInX_Pkg_Cmd
 
G4UIcmdWithADoubleAndUnit * VDC_FrontCenterPositionInY_Pkg_Cmd
 
G4UIcmdWithADoubleAndUnit * VDC_FrontCenterPositionInZ_Pkg_Cmd
 
G4UIcmdWithADoubleAndUnit * VDC_RotationAngleInPhi_Pkg_Cmd
 

Detailed Description

Scans the input file for /VDC/xyz commands.

Placeholder for a long explaination

Definition at line 70 of file QweakSimVDCMessenger.hh.

Constructor & Destructor Documentation

QweakSimVDCMessenger::QweakSimVDCMessenger ( QweakSimVDC theVDC,
G4int  pkg = 0 
)

Definition at line 47 of file QweakSimVDCMessenger.cc.

References DCBackWireAngleCmd, DCFrontWireAngleCmd, DCHeightCmd, DCMatCmd, DCNumberPerPlaneCmd, DCThicknessCmd, DCWidthOnFrameCmd, DirPerPackage, DriftCellDir, VDC_AluFrameMatCmd, VDC_FoilMatCmd, VDC_FrontCenterPositionInX_Cmd, VDC_FrontCenterPositionInX_Pkg_Cmd, VDC_FrontCenterPositionInY_Cmd, VDC_FrontCenterPositionInY_Pkg_Cmd, VDC_FrontCenterPositionInZ_Cmd, VDC_FrontCenterPositionInZ_Pkg_Cmd, VDC_G10FrameMatCmd, VDC_MasterContainerMatCmd, VDC_MeanTrackAngleInTheta_Cmd, VDC_RotationAngleInPhi_Cmd, VDC_RotationAngleInPhi_Pkg_Cmd, VDC_SubContainerMatCmd, VDC_WirePlaneMatCmd, and VDCDir.

48 :myVDC(theVDC),fPackage(pkg)
49 {
50 
51  // VDC related
52  VDCDir = new G4UIdirectory("/VDC/");
53  VDCDir -> SetGuidance("VDC control.");
54 
55  VDC_FrontCenterPositionInX_Cmd = new G4UIcmdWithADoubleAndUnit("/VDC/SetFrontCenterPositionInX",this);
56  VDC_FrontCenterPositionInX_Cmd->SetGuidance("Set the X position of the VDC Front container center");
57  VDC_FrontCenterPositionInX_Cmd->SetParameterName("Size",true);
58  VDC_FrontCenterPositionInX_Cmd->SetUnitCategory("Length");
59  VDC_FrontCenterPositionInX_Cmd->AvailableForStates(G4State_PreInit,G4State_Idle);
60 
61  VDC_FrontCenterPositionInY_Cmd = new G4UIcmdWithADoubleAndUnit("/VDC/SetFrontCenterPositionInY",this);
62  VDC_FrontCenterPositionInY_Cmd->SetGuidance("Set the Y position of the VDC Front container center");
63  VDC_FrontCenterPositionInY_Cmd->SetParameterName("Size",true);
64  VDC_FrontCenterPositionInY_Cmd->SetUnitCategory("Length");
65  VDC_FrontCenterPositionInY_Cmd->AvailableForStates(G4State_PreInit,G4State_Idle);
66 
67  VDC_FrontCenterPositionInZ_Cmd = new G4UIcmdWithADoubleAndUnit("/VDC/SetFrontCenterPositionInZ",this);
68  VDC_FrontCenterPositionInZ_Cmd->SetGuidance("Set the Z position of the VDC Front container center");
69  VDC_FrontCenterPositionInZ_Cmd->SetParameterName("Size",true);
70  VDC_FrontCenterPositionInZ_Cmd->SetUnitCategory("Length");
71  VDC_FrontCenterPositionInZ_Cmd->AvailableForStates(G4State_PreInit,G4State_Idle);
72 
73  VDC_MasterContainerMatCmd = new G4UIcmdWithAString("/VDC/SetVDC_MasterContainerMaterial",this);
74  VDC_MasterContainerMatCmd->SetGuidance("Select Material of the VDC MasterContainer.");
75  VDC_MasterContainerMatCmd->SetParameterName("choice",false);
76  VDC_MasterContainerMatCmd->AvailableForStates(G4State_PreInit,G4State_Idle);
77 
78  VDC_SubContainerMatCmd = new G4UIcmdWithAString("/VDC/SetVDC_SubContainerMaterial",this);
79  VDC_SubContainerMatCmd->SetGuidance("Select Material of the VDC SubContainer.");
80  VDC_SubContainerMatCmd->SetParameterName("choice",false);
81  VDC_SubContainerMatCmd->AvailableForStates(G4State_PreInit,G4State_Idle);
82 
83  VDC_G10FrameMatCmd = new G4UIcmdWithAString("/VDC/SetVDC_G10FrameMaterial",this);
84  VDC_G10FrameMatCmd->SetGuidance("Select Material of the VDC G10 Frames.");
85  VDC_G10FrameMatCmd->SetParameterName("choice",false);
86  VDC_G10FrameMatCmd->AvailableForStates(G4State_PreInit,G4State_Idle);
87 
88  VDC_AluFrameMatCmd = new G4UIcmdWithAString("/VDC/SetVDC_AluFrameMaterial",this);
89  VDC_AluFrameMatCmd->SetGuidance("Select Material of the VDC AluFrame.");
90  VDC_AluFrameMatCmd->SetParameterName("choice",false);
91  VDC_AluFrameMatCmd->AvailableForStates(G4State_PreInit,G4State_Idle);
92 
93  VDC_FoilMatCmd = new G4UIcmdWithAString("/VDC/SetVDC_FoilMaterial",this);
94  VDC_FoilMatCmd->SetGuidance("Select Material of the VDC Foils.");
95  VDC_FoilMatCmd->SetParameterName("choice",false);
96  VDC_FoilMatCmd->AvailableForStates(G4State_PreInit,G4State_Idle);
97 
98  VDC_WirePlaneMatCmd = new G4UIcmdWithAString("/VDC/SetVDC_WirePlaneMaterial",this);
99  VDC_WirePlaneMatCmd->SetGuidance("Select Material of the VDC WirePlane.");
100  VDC_WirePlaneMatCmd->SetParameterName("choice",false);
101  VDC_WirePlaneMatCmd->AvailableForStates(G4State_PreInit,G4State_Idle);
102 
103 
104  VDC_RotationAngleInPhi_Cmd = new G4UIcmdWithADoubleAndUnit("/VDC/SetRotationAngleInPhi",this);
105  VDC_RotationAngleInPhi_Cmd->SetGuidance("Set the rotation angle in phi");
106  VDC_RotationAngleInPhi_Cmd->SetParameterName("Size",true);
107  VDC_RotationAngleInPhi_Cmd->SetUnitCategory("Angle");
108  VDC_RotationAngleInPhi_Cmd->AvailableForStates(G4State_PreInit,G4State_Idle);
109 
110 
111  VDC_MeanTrackAngleInTheta_Cmd = new G4UIcmdWithADoubleAndUnit("/VDC/SetMeanTrackAngleInTheta",this);
112  VDC_MeanTrackAngleInTheta_Cmd->SetGuidance("Set the mean track angle in theta");
113  VDC_MeanTrackAngleInTheta_Cmd->SetParameterName("Size",true);
114  VDC_MeanTrackAngleInTheta_Cmd->SetUnitCategory("Angle");
115  VDC_MeanTrackAngleInTheta_Cmd->AvailableForStates(G4State_PreInit,G4State_Idle);
116 
117 
118  //========================
119  // Drift Cell related
120  //========================
121 
122  // VDC related
123  DriftCellDir = new G4UIdirectory("/VDC/DriftCell/");
124  DriftCellDir -> SetGuidance("VDC Drift Cell control.");
125 
126  DCMatCmd = new G4UIcmdWithAString("/VDC/DriftCell/SetMaterial",this);
127  DCMatCmd->SetGuidance("Select Material of the VDC DriftCells.");
128  DCMatCmd->SetParameterName("choice",false);
129  DCMatCmd->AvailableForStates(G4State_PreInit,G4State_Idle);
130 
131  DCFrontWireAngleCmd = new G4UIcmdWithADoubleAndUnit("/VDC/DriftCell/SetWireAngleFront",this);
132  DCFrontWireAngleCmd->SetGuidance("Set Wire Angle of Front Plane");
133  DCFrontWireAngleCmd->SetParameterName("Angle",true);
134  DCFrontWireAngleCmd->SetDefaultUnit("degree");
135  DCFrontWireAngleCmd->AvailableForStates(G4State_PreInit,G4State_Idle);
136 
137  DCBackWireAngleCmd = new G4UIcmdWithADoubleAndUnit("/VDC/DriftCell/SetWireAngleBack",this);
138  DCBackWireAngleCmd->SetGuidance("Set Wire Angle of Back Plane");
139  DCBackWireAngleCmd->SetParameterName("Angle",true);
140  DCBackWireAngleCmd->SetDefaultUnit("degree");
141  DCBackWireAngleCmd->AvailableForStates(G4State_PreInit,G4State_Idle);
142 
143  DCThicknessCmd = new G4UIcmdWithADoubleAndUnit("/VDC/DriftCell/SetFullThickness",this);
144  DCThicknessCmd->SetGuidance("Set Drift Cell Full Thickness");
145  DCThicknessCmd->SetParameterName("Size",true);
146  DCThicknessCmd->SetUnitCategory("Length");
147  DCThicknessCmd->AvailableForStates(G4State_PreInit,G4State_Idle);
148 
149  DCHeightCmd = new G4UIcmdWithADoubleAndUnit("/VDC/DriftCell/SetFullHeight",this);
150  DCHeightCmd->SetGuidance("Set Drift Cell Full Height");
151  DCHeightCmd->SetParameterName("Size",true);
152  DCHeightCmd->SetUnitCategory("Length");
153  DCHeightCmd->AvailableForStates(G4State_PreInit,G4State_Idle);
154 
155  DCWidthOnFrameCmd = new G4UIcmdWithADoubleAndUnit("/VDC/DriftCell/SetFullWidthOnFrame",this);
156  DCWidthOnFrameCmd->SetGuidance("Set Drift Cell Full Width seem by the Frame");
157  DCWidthOnFrameCmd->SetParameterName("Size",true);
158  DCWidthOnFrameCmd->SetUnitCategory("Length");
159  DCWidthOnFrameCmd->AvailableForStates(G4State_PreInit,G4State_Idle);
160 
161  DCNumberPerPlaneCmd = new G4UIcmdWithAnInteger("/VDC/DriftCell/SetDCNumberPerPlane",this);
162  DCNumberPerPlaneCmd->SetGuidance("Set the Number of Drift Cells per Plane");
163  DCNumberPerPlaneCmd->SetParameterName("Number",true);
164  DCNumberPerPlaneCmd->SetDefaultValue(401);
165  DCNumberPerPlaneCmd->AvailableForStates(G4State_PreInit,G4State_Idle);
166 
167 
168  //-----------------------Individual Package Commands-------------------------------
169 
170  G4String DirPerPackage_name = "/VDC/VDC" + G4UIcommand::ConvertToString(pkg+1);
171  DirPerPackage = new G4UIdirectory(G4String(DirPerPackage_name + "/"));
172  DirPerPackage -> SetGuidance("Individual VDC detector control.");
173 
174  VDC_FrontCenterPositionInX_Pkg_Cmd = new G4UIcmdWithADoubleAndUnit(G4String(DirPerPackage_name + "/SetFrontCenterPositionInX"),this);
175  VDC_FrontCenterPositionInX_Pkg_Cmd->SetGuidance("Set the X position of the VDC Front container center");
176  VDC_FrontCenterPositionInX_Pkg_Cmd->SetParameterName("Size",true);
177  VDC_FrontCenterPositionInX_Pkg_Cmd->SetUnitCategory("Length");
178  VDC_FrontCenterPositionInX_Pkg_Cmd->AvailableForStates(G4State_PreInit,G4State_Idle);
179 
180  VDC_FrontCenterPositionInY_Pkg_Cmd = new G4UIcmdWithADoubleAndUnit(G4String(DirPerPackage_name + "/SetFrontCenterPositionInY"),this);
181  VDC_FrontCenterPositionInY_Pkg_Cmd->SetGuidance("Set the Y position of the VDC Front container center");
182  VDC_FrontCenterPositionInY_Pkg_Cmd->SetParameterName("Size",true);
183  VDC_FrontCenterPositionInY_Pkg_Cmd->SetUnitCategory("Length");
184  VDC_FrontCenterPositionInY_Pkg_Cmd->AvailableForStates(G4State_PreInit,G4State_Idle);
185 
186  VDC_FrontCenterPositionInZ_Pkg_Cmd = new G4UIcmdWithADoubleAndUnit(G4String(DirPerPackage_name + "/SetFrontCenterPositionInZ"),this);
187  VDC_FrontCenterPositionInZ_Pkg_Cmd->SetGuidance("Set the Z position of the VDC Front container center");
188  VDC_FrontCenterPositionInZ_Pkg_Cmd->SetParameterName("Size",true);
189  VDC_FrontCenterPositionInZ_Pkg_Cmd->SetUnitCategory("Length");
190  VDC_FrontCenterPositionInZ_Pkg_Cmd->AvailableForStates(G4State_PreInit,G4State_Idle);
191 
192  VDC_RotationAngleInPhi_Pkg_Cmd = new G4UIcmdWithADoubleAndUnit(G4String(DirPerPackage_name + "/SetRotationAngleInPhi"),this);
193  VDC_RotationAngleInPhi_Pkg_Cmd->SetGuidance("Set the rotation angle in phi");
194  VDC_RotationAngleInPhi_Pkg_Cmd->SetParameterName("Size",true);
195  VDC_RotationAngleInPhi_Pkg_Cmd->SetUnitCategory("Angle");
196  VDC_RotationAngleInPhi_Pkg_Cmd->AvailableForStates(G4State_PreInit,G4State_Idle);
197 
198 
199 }
G4UIcmdWithADoubleAndUnit * VDC_FrontCenterPositionInZ_Pkg_Cmd
G4UIcmdWithADoubleAndUnit * VDC_FrontCenterPositionInY_Cmd
G4UIcmdWithAString * DCMatCmd
G4UIcmdWithADoubleAndUnit * DCFrontWireAngleCmd
G4UIcmdWithADoubleAndUnit * DCThicknessCmd
G4UIcmdWithADoubleAndUnit * VDC_FrontCenterPositionInZ_Cmd
G4UIcmdWithADoubleAndUnit * VDC_FrontCenterPositionInX_Cmd
G4UIdirectory * DirPerPackage
G4UIcmdWithAString * VDC_MasterContainerMatCmd
G4UIcmdWithADoubleAndUnit * VDC_FrontCenterPositionInX_Pkg_Cmd
G4UIcmdWithAString * VDC_WirePlaneMatCmd
G4UIcmdWithAString * VDC_SubContainerMatCmd
G4UIcmdWithAString * VDC_G10FrameMatCmd
G4UIcmdWithADoubleAndUnit * DCBackWireAngleCmd
G4UIcmdWithADoubleAndUnit * DCWidthOnFrameCmd
G4UIcmdWithAString * VDC_FoilMatCmd
G4UIcmdWithADoubleAndUnit * VDC_FrontCenterPositionInY_Pkg_Cmd
G4UIcmdWithADoubleAndUnit * VDC_RotationAngleInPhi_Cmd
G4UIcmdWithAnInteger * DCNumberPerPlaneCmd
G4UIcmdWithAString * VDC_AluFrameMatCmd
G4UIcmdWithADoubleAndUnit * DCHeightCmd
G4UIcmdWithADoubleAndUnit * VDC_MeanTrackAngleInTheta_Cmd
G4UIcmdWithADoubleAndUnit * VDC_RotationAngleInPhi_Pkg_Cmd
QweakSimVDCMessenger::~QweakSimVDCMessenger ( )

Definition at line 203 of file QweakSimVDCMessenger.cc.

References DirPerPackage, VDC_AluFrameMatCmd, VDC_FoilMatCmd, VDC_FrontCenterPositionInX_Cmd, VDC_FrontCenterPositionInX_Pkg_Cmd, VDC_FrontCenterPositionInY_Cmd, VDC_FrontCenterPositionInY_Pkg_Cmd, VDC_FrontCenterPositionInZ_Cmd, VDC_FrontCenterPositionInZ_Pkg_Cmd, VDC_G10FrameMatCmd, VDC_MasterContainerMatCmd, VDC_MeanTrackAngleInTheta_Cmd, VDC_RotationAngleInPhi_Cmd, VDC_RotationAngleInPhi_Pkg_Cmd, VDC_SubContainerMatCmd, VDC_WirePlaneMatCmd, and VDCDir.

204 {
205 
207  if (VDC_FoilMatCmd) delete VDC_FoilMatCmd;
208 
211 
214 
218 
221 
222 
226 
228 
229  if (VDCDir) delete VDCDir;
230  if (DirPerPackage) delete DirPerPackage;
231 }
G4UIcmdWithADoubleAndUnit * VDC_FrontCenterPositionInZ_Pkg_Cmd
G4UIcmdWithADoubleAndUnit * VDC_FrontCenterPositionInY_Cmd
G4UIcmdWithADoubleAndUnit * VDC_FrontCenterPositionInZ_Cmd
G4UIcmdWithADoubleAndUnit * VDC_FrontCenterPositionInX_Cmd
G4UIdirectory * DirPerPackage
G4UIcmdWithAString * VDC_MasterContainerMatCmd
G4UIcmdWithADoubleAndUnit * VDC_FrontCenterPositionInX_Pkg_Cmd
G4UIcmdWithAString * VDC_WirePlaneMatCmd
G4UIcmdWithAString * VDC_SubContainerMatCmd
G4UIcmdWithAString * VDC_G10FrameMatCmd
G4UIcmdWithAString * VDC_FoilMatCmd
G4UIcmdWithADoubleAndUnit * VDC_FrontCenterPositionInY_Pkg_Cmd
G4UIcmdWithADoubleAndUnit * VDC_RotationAngleInPhi_Cmd
G4UIcmdWithAString * VDC_AluFrameMatCmd
G4UIcmdWithADoubleAndUnit * VDC_MeanTrackAngleInTheta_Cmd
G4UIcmdWithADoubleAndUnit * VDC_RotationAngleInPhi_Pkg_Cmd

Member Function Documentation

G4int QweakSimVDCMessenger::GetPackage ( )
inline

Definition at line 76 of file QweakSimVDCMessenger.hh.

References fPackage.

76 {return fPackage;}
void QweakSimVDCMessenger::SetNewValue ( G4UIcommand *  command,
G4String  newValue 
)

Definition at line 235 of file QweakSimVDCMessenger.cc.

References DCBackWireAngleCmd, DCFrontWireAngleCmd, DCHeightCmd, DCMatCmd, DCNumberPerPlaneCmd, DCThicknessCmd, DCWidthOnFrameCmd, fPackage, QweakSimVDC::GetTriggerScintillator(), QweakSimVDC::GetVDCRotator(), myRotator, myTriggerScintillator, myVDC, QweakSimVDC::SetFrontVDC_CenterPositionInX(), QweakSimVDC::SetFrontVDC_CenterPositionInY(), QweakSimVDC::SetFrontVDC_CenterPositionInZ(), QweakSimVDCRotator::SetRotationAngleInPhi(), QweakSimTriggerScintillator::SetTriggerScintillatorPhiAngle(), QweakSimVDC::SetVDC_AluFrameMaterial(), QweakSimVDC::SetVDC_DriftCellBackWireAngle(), QweakSimVDC::SetVDC_DriftCellFrontWireAngle(), QweakSimVDC::SetVDC_DriftCellFullHeight(), QweakSimVDC::SetVDC_DriftCellFullThickness(), QweakSimVDC::SetVDC_DriftCellFullWidthOnFrame(), QweakSimVDC::SetVDC_DriftCellMaterial(), QweakSimVDC::SetVDC_DriftCellNumberPerPlane(), QweakSimVDC::SetVDC_FoilMaterial(), QweakSimVDC::SetVDC_G10FrameMaterial(), QweakSimVDC::SetVDC_MasterContainerMaterial(), QweakSimVDC::SetVDC_MeanTrackAngleInTheta(), QweakSimVDC::SetVDC_RotationAngleInPhi(), QweakSimVDC::SetVDC_SubContainerMaterial(), QweakSimVDC::SetVDC_WirePlaneMaterial(), VDC_AluFrameMatCmd, VDC_FoilMatCmd, VDC_FrontCenterPositionInX_Cmd, VDC_FrontCenterPositionInX_Pkg_Cmd, VDC_FrontCenterPositionInY_Cmd, VDC_FrontCenterPositionInY_Pkg_Cmd, VDC_FrontCenterPositionInZ_Cmd, VDC_FrontCenterPositionInZ_Pkg_Cmd, VDC_G10FrameMatCmd, VDC_MasterContainerMatCmd, VDC_MeanTrackAngleInTheta_Cmd, VDC_RotationAngleInPhi_Cmd, VDC_RotationAngleInPhi_Pkg_Cmd, VDC_SubContainerMatCmd, and VDC_WirePlaneMatCmd.

236 {
237  G4cout << "#### Calling QweakSimVDCMessenger::SetNewValue() " << newValue << G4endl;
238 
239 
240  if( command == VDC_MasterContainerMatCmd )
241  {
242  G4cout << "#### Messenger: Setting VDC MasterContainer Material to " << newValue << G4endl;
243 
245  }
246 
247 
248  if( command == VDC_SubContainerMatCmd )
249  {
250  G4cout << "#### Messenger: Setting VDC SubContainer Material to " << newValue << G4endl;
251 
253  }
254 
255  if( command == VDC_G10FrameMatCmd )
256  {
257  G4cout << "#### Messenger: Setting VDC G10Frame Material to " << newValue << G4endl;
258 
259  myVDC->SetVDC_G10FrameMaterial(newValue);
260  }
261 
262 
263  if( command == VDC_AluFrameMatCmd )
264  {
265  G4cout << "#### Messenger: Setting VDC AluFrame Material to " << newValue << G4endl;
266 
267  myVDC->SetVDC_AluFrameMaterial(newValue);
268  }
269 
270 
271  if( command == VDC_FoilMatCmd )
272  {
273  G4cout << "#### Messenger: Setting VDC Foil Material to " << newValue << G4endl;
274 
275  myVDC->SetVDC_FoilMaterial(newValue);
276  }
277 
278  if( command == VDC_WirePlaneMatCmd )
279  {
280  G4cout << "#### Messenger: Setting VDC WirePlane Material to " << newValue << G4endl;
281 
282  myVDC->SetVDC_WirePlaneMaterial(newValue);
283  }
284 
285  if( command == VDC_FrontCenterPositionInX_Cmd )
286  {
287  G4cout << "#### Messenger: Setting VDC FrontCenter Xpos to " << newValue << G4endl;
288 
289  myVDC->SetFrontVDC_CenterPositionInX(VDC_FrontCenterPositionInX_Cmd->GetNewDoubleValue(newValue),0);
290  }
291 
292  if( command == VDC_FrontCenterPositionInY_Cmd )
293  {
294  G4cout << "#### Messenger: Setting VDC FrontCenter Ypos to " << newValue << G4endl;
295 
296  myVDC->SetFrontVDC_CenterPositionInY(VDC_FrontCenterPositionInY_Cmd->GetNewDoubleValue(newValue),0);
297  }
298 
299  if( command == VDC_FrontCenterPositionInZ_Cmd )
300  {
301  G4cout << "#### Messenger: Setting VDC FrontCenter Zpos to " << newValue << G4endl;
302 
303  myVDC->SetFrontVDC_CenterPositionInZ(VDC_FrontCenterPositionInZ_Cmd->GetNewDoubleValue(newValue),0);
304  }
305 
306  if( command == VDC_RotationAngleInPhi_Cmd )
307  {
308  G4cout << "#### Messenger: Setting VDC rotation angle in phi to " << newValue << G4endl;
309 
310  double phi = VDC_RotationAngleInPhi_Cmd->GetNewDoubleValue(newValue);
312  myVDC->SetVDC_RotationAngleInPhi(phi+180.0*degree,1);
317  }
318 
319 
320  if( command == VDC_MeanTrackAngleInTheta_Cmd )
321  {
322  G4cout << "#### Messenger: Setting VDC mean track angle in theta to " << newValue << G4endl;
323 
325  }
326 
327 //-------------------------------Individual Package Commands-------------------------
328 
329  if( command == VDC_FrontCenterPositionInX_Pkg_Cmd )
330  {
331  G4cout << "#### Messenger: Setting VDC FrontCenter Xpos to " << newValue << G4endl;
332 
334  }
335 
336  if( command == VDC_FrontCenterPositionInY_Pkg_Cmd )
337  {
338  G4cout << "#### Messenger: Setting VDC FrontCenter Ypos to " << newValue << G4endl;
339 
341  }
342 
343  if( command == VDC_FrontCenterPositionInZ_Pkg_Cmd )
344  {
345  G4cout << "#### Messenger: Setting VDC FrontCenter Zpos to " << newValue << G4endl;
346 
348  }
349 
350  if( command == VDC_RotationAngleInPhi_Pkg_Cmd )
351  {
352  G4cout << "#### Messenger: Setting VDC rotation angle in phi to " << newValue << G4endl;
353 
354  double phi = VDC_RotationAngleInPhi_Pkg_Cmd->GetNewDoubleValue(newValue);
356  myVDC->SetVDC_RotationAngleInPhi(phi+180.0*degree,abs(fPackage-1));
359  }
360 
361 
362  //========================
363  // Drift Cell related
364  //========================
365 
366 
367  if( command == DCMatCmd )
368  {
369  G4cout << "#### Messenger: Setting VDC DriftCell Material to " << newValue << G4endl;
370 
371  myVDC->SetVDC_DriftCellMaterial(newValue);
372  }
373 
374 
375  if( command == DCFrontWireAngleCmd )
376  {
377  G4cout << "#### Messenger: Setting VDC Drift Cell Front Wire Angle to " << newValue << G4endl;
378 
379  myVDC->SetVDC_DriftCellFrontWireAngle( DCFrontWireAngleCmd->GetNewDoubleValue(newValue) );
380  }
381 
382 
383  if( command == DCBackWireAngleCmd )
384  {
385  G4cout << "#### Messenger: Setting VDC Drift Cell Back Wire Angle to " << newValue << G4endl;
386 
387  myVDC->SetVDC_DriftCellBackWireAngle( DCBackWireAngleCmd->GetNewDoubleValue(newValue) );
388  }
389 
390 
391  if( command == DCThicknessCmd )
392  {
393  G4cout << "#### Messenger: Setting VDC Drift Cell Thickness to " << newValue << G4endl;
394 
395  myVDC->SetVDC_DriftCellFullThickness( DCThicknessCmd->GetNewDoubleValue(newValue) );
396  }
397 
398  if( command == DCHeightCmd )
399  {
400  G4cout << "#### Messenger: Setting VDC Drift Cell Height to " << newValue << G4endl;
401 
402  myVDC->SetVDC_DriftCellFullHeight( DCHeightCmd->GetNewDoubleValue(newValue) );
403  }
404 
405  if( command == DCWidthOnFrameCmd )
406  {
407  G4cout << "#### Messenger: Setting VDC Drift Cell Width seem by Frame to " << newValue << G4endl;
408 
409  myVDC->SetVDC_DriftCellFullWidthOnFrame( DCWidthOnFrameCmd->GetNewDoubleValue(newValue) );
410  }
411 
412  if( command == DCNumberPerPlaneCmd)
413  {
414  G4cout << "#### Messenger: Setting VDC Drift Cell Number per Plane to " << newValue << G4endl;
415 
416  myVDC->SetVDC_DriftCellNumberPerPlane( DCNumberPerPlaneCmd->GetNewIntValue(newValue) );
417  }
418 
419 
420  G4cout << "#### Leaving QweakSimVDC Messenger::SetNewValue() " << newValue << G4endl;
421 }
G4UIcmdWithADoubleAndUnit * VDC_FrontCenterPositionInZ_Pkg_Cmd
void SetVDC_MeanTrackAngleInTheta(G4double angle)
Definition: QweakSimVDC.hh:102
G4UIcmdWithADoubleAndUnit * VDC_FrontCenterPositionInY_Cmd
void SetVDC_SubContainerMaterial(G4String)
void SetVDC_DriftCellMaterial(G4String)
G4UIcmdWithAString * DCMatCmd
G4UIcmdWithADoubleAndUnit * DCFrontWireAngleCmd
G4UIcmdWithADoubleAndUnit * DCThicknessCmd
G4UIcmdWithADoubleAndUnit * VDC_FrontCenterPositionInZ_Cmd
void SetVDC_FoilMaterial(G4String)
void SetRotationAngleInPhi(G4double vdc_phiangle)
QweakSimVDCRotator * GetVDCRotator()
Definition: QweakSimVDC.hh:139
QweakSimVDCRotator * myRotator
QweakSimTriggerScintillator * GetTriggerScintillator()
Definition: QweakSimVDC.hh:142
void SetVDC_DriftCellFullWidthOnFrame(G4double fullWidthOnFrame)
void SetVDC_AluFrameMaterial(G4String)
G4UIcmdWithADoubleAndUnit * VDC_FrontCenterPositionInX_Cmd
void SetFrontVDC_CenterPositionInX(G4double xPos, G4int pkg)
void SetVDC_DriftCellFrontWireAngle(G4double frontWireAngle)
void SetVDC_MasterContainerMaterial(G4String)
G4UIcmdWithAString * VDC_MasterContainerMatCmd
void SetVDC_G10FrameMaterial(G4String)
void SetFrontVDC_CenterPositionInY(G4double yPos, G4int pkg)
void SetVDC_DriftCellNumberPerPlane(G4int numberPerPlane)
G4UIcmdWithADoubleAndUnit * VDC_FrontCenterPositionInX_Pkg_Cmd
void SetVDC_WirePlaneMaterial(G4String)
void SetVDC_DriftCellBackWireAngle(G4double backWireAngle)
G4UIcmdWithAString * VDC_WirePlaneMatCmd
G4UIcmdWithAString * VDC_SubContainerMatCmd
G4UIcmdWithAString * VDC_G10FrameMatCmd
void SetFrontVDC_CenterPositionInZ(G4double zPos, G4int pkg)
G4UIcmdWithADoubleAndUnit * DCBackWireAngleCmd
G4UIcmdWithADoubleAndUnit * DCWidthOnFrameCmd
void SetVDC_DriftCellFullThickness(G4double fullThickness)
G4UIcmdWithAString * VDC_FoilMatCmd
G4UIcmdWithADoubleAndUnit * VDC_FrontCenterPositionInY_Pkg_Cmd
void SetVDC_DriftCellFullHeight(G4double fullHeight)
G4UIcmdWithADoubleAndUnit * VDC_RotationAngleInPhi_Cmd
G4UIcmdWithAnInteger * DCNumberPerPlaneCmd
void SetVDC_RotationAngleInPhi(G4double vdc_phiangle, G4int pkg)
QweakSimTriggerScintillator * myTriggerScintillator
G4UIcmdWithAString * VDC_AluFrameMatCmd
G4UIcmdWithADoubleAndUnit * DCHeightCmd
G4UIcmdWithADoubleAndUnit * VDC_MeanTrackAngleInTheta_Cmd
void SetTriggerScintillatorPhiAngle(G4double phiangle)
G4UIcmdWithADoubleAndUnit * VDC_RotationAngleInPhi_Pkg_Cmd

+ Here is the call graph for this function:

void QweakSimVDCMessenger::SetVDCRotator ( QweakSimVDCRotator theRotator)
inline

Definition at line 78 of file QweakSimVDCMessenger.hh.

References myRotator.

78 {myRotator = theRotator;};
QweakSimVDCRotator * myRotator

Field Documentation

G4UIcmdWithADoubleAndUnit* QweakSimVDCMessenger::DCBackWireAngleCmd
private

Definition at line 109 of file QweakSimVDCMessenger.hh.

Referenced by QweakSimVDCMessenger(), and SetNewValue().

G4UIcmdWithADoubleAndUnit* QweakSimVDCMessenger::DCFrontWireAngleCmd
private

Definition at line 108 of file QweakSimVDCMessenger.hh.

Referenced by QweakSimVDCMessenger(), and SetNewValue().

G4UIcmdWithADoubleAndUnit* QweakSimVDCMessenger::DCHeightCmd
private

Definition at line 111 of file QweakSimVDCMessenger.hh.

Referenced by QweakSimVDCMessenger(), and SetNewValue().

G4UIcmdWithAString* QweakSimVDCMessenger::DCMatCmd
private

Definition at line 107 of file QweakSimVDCMessenger.hh.

Referenced by QweakSimVDCMessenger(), and SetNewValue().

G4UIcmdWithAnInteger* QweakSimVDCMessenger::DCNumberPerPlaneCmd
private

Definition at line 113 of file QweakSimVDCMessenger.hh.

Referenced by QweakSimVDCMessenger(), and SetNewValue().

G4UIcmdWithADoubleAndUnit* QweakSimVDCMessenger::DCThicknessCmd
private

Definition at line 110 of file QweakSimVDCMessenger.hh.

Referenced by QweakSimVDCMessenger(), and SetNewValue().

G4UIcmdWithADoubleAndUnit* QweakSimVDCMessenger::DCWidthOnFrameCmd
private

Definition at line 112 of file QweakSimVDCMessenger.hh.

Referenced by QweakSimVDCMessenger(), and SetNewValue().

G4UIdirectory* QweakSimVDCMessenger::DirPerPackage
private

Definition at line 88 of file QweakSimVDCMessenger.hh.

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

G4UIdirectory* QweakSimVDCMessenger::DriftCellDir
private

Definition at line 105 of file QweakSimVDCMessenger.hh.

Referenced by QweakSimVDCMessenger().

G4int QweakSimVDCMessenger::fPackage
private

Definition at line 87 of file QweakSimVDCMessenger.hh.

Referenced by GetPackage(), and SetNewValue().

QweakSimVDCRotator* QweakSimVDCMessenger::myRotator
private

Definition at line 82 of file QweakSimVDCMessenger.hh.

Referenced by SetNewValue(), and SetVDCRotator().

QweakSimTriggerScintillator* QweakSimVDCMessenger::myTriggerScintillator
private

Definition at line 83 of file QweakSimVDCMessenger.hh.

Referenced by SetNewValue().

QweakSimVDC* QweakSimVDCMessenger::myVDC
private

Definition at line 78 of file QweakSimVDCMessenger.hh.

Referenced by SetNewValue().

G4UIcmdWithAString* QweakSimVDCMessenger::VDC_AluFrameMatCmd
private
G4UIcmdWithAString* QweakSimVDCMessenger::VDC_FoilMatCmd
private
G4UIcmdWithADoubleAndUnit* QweakSimVDCMessenger::VDC_FrontCenterPositionInX_Cmd
private
G4UIcmdWithADoubleAndUnit* QweakSimVDCMessenger::VDC_FrontCenterPositionInX_Pkg_Cmd
private
G4UIcmdWithADoubleAndUnit* QweakSimVDCMessenger::VDC_FrontCenterPositionInY_Cmd
private
G4UIcmdWithADoubleAndUnit* QweakSimVDCMessenger::VDC_FrontCenterPositionInY_Pkg_Cmd
private
G4UIcmdWithADoubleAndUnit* QweakSimVDCMessenger::VDC_FrontCenterPositionInZ_Cmd
private
G4UIcmdWithADoubleAndUnit* QweakSimVDCMessenger::VDC_FrontCenterPositionInZ_Pkg_Cmd
private
G4UIcmdWithAString* QweakSimVDCMessenger::VDC_G10FrameMatCmd
private
G4UIcmdWithAString* QweakSimVDCMessenger::VDC_MasterContainerMatCmd
private
G4UIcmdWithADoubleAndUnit* QweakSimVDCMessenger::VDC_MeanTrackAngleInTheta_Cmd
private
G4UIcmdWithADoubleAndUnit* QweakSimVDCMessenger::VDC_RotationAngleInPhi_Cmd
private
G4UIcmdWithADoubleAndUnit* QweakSimVDCMessenger::VDC_RotationAngleInPhi_Pkg_Cmd
private
G4UIcmdWithAString* QweakSimVDCMessenger::VDC_SubContainerMatCmd
private
G4UIcmdWithAString* QweakSimVDCMessenger::VDC_WirePlaneMatCmd
private
G4UIdirectory* QweakSimVDCMessenger::VDCDir
private

Definition at line 85 of file QweakSimVDCMessenger.hh.

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


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