30 :pPrimaryGeneratorAction(pPhys)
37 Dir =
new G4UIdirectory(
"/PrimaryEvent/");
38 Dir->SetGuidance(
"Primary event control");
40 verboseCmd =
new G4UIcmdWithAnInteger(
"/PrimaryEvent/verbose",
this);
41 verboseCmd->SetGuidance(
"set verbose for primary generator");
45 verboseCmd->AvailableForStates(G4State_PreInit,G4State_Idle);
47 resetCmd =
new G4UIcmdWithoutParameter(
"/PrimaryEvent/ResetNtupleEventCounter",
this);
48 resetCmd->SetGuidance(
"resets Neven's Ntuple Event Counter");
50 resetCmd->AvailableForStates(G4State_Idle);
71 SetPolarization_Cmd->SetGuidance(
"set particle polarization for primary generator (L, H, V)");
84 SetPositionX_Cmd =
new G4UIcmdWithADoubleAndUnit(
"/PrimaryEvent/SetBeamPositionX",
this);
91 SetPositionY_Cmd =
new G4UIcmdWithADoubleAndUnit(
"/PrimaryEvent/SetBeamPositionY",
this);
98 SetPositionZ_Cmd =
new G4UIcmdWithADoubleAndUnit(
"/PrimaryEvent/SetBeamPositionZ",
this);
105 SetDirectionX_Cmd =
new G4UIcmdWithADoubleAndUnit(
"/PrimaryEvent/SetBeamDirectionX",
this);
112 SetDirectionY_Cmd =
new G4UIcmdWithADoubleAndUnit(
"/PrimaryEvent/SetBeamDirectionY",
this);
120 SetRasterSize_Cmd =
new G4UIcmdWithADoubleAndUnit(
"/PrimaryEvent/SetRasterSize",
this);
133 SetRasterXmin_Cmd =
new G4UIcmdWithADoubleAndUnit(
"/PrimaryEvent/SetRasterXmin",
this);
140 SetRasterXmax_Cmd =
new G4UIcmdWithADoubleAndUnit(
"/PrimaryEvent/SetRasterXmax",
this);
147 SetRasterYmin_Cmd =
new G4UIcmdWithADoubleAndUnit(
"/PrimaryEvent/SetRasterYmin",
this);
154 SetRasterYmax_Cmd =
new G4UIcmdWithADoubleAndUnit(
"/PrimaryEvent/SetRasterYmax",
this);
209 G4cout <<
"#### Messenger: Setting Beam Position in X to " << newValue << G4endl;
215 G4cout <<
"#### Messenger: Setting Beam Position in Y to " << newValue << G4endl;
221 G4cout <<
"#### Messenger: Setting Beam Position in Z to " << newValue << G4endl;
227 G4cout <<
"#### Messenger: Setting Beam Direction in X to " << newValue << G4endl;
233 G4cout <<
"#### Messenger: Setting Beam Direction in Y to " << newValue << G4endl;
242 G4cout <<
"#### Messenger: Setting Raster size to " << size/mm <<
" mm x " << size/mm <<
" mm." << G4endl;
248 G4cout <<
"#### Messenger: Setting Raster min. X to " <<
Xmin/mm <<
" mm." << G4endl;
254 G4cout <<
"#### Messenger: Setting Raster max. X to " <<
Xmax/mm <<
" mm." << G4endl;
260 G4cout <<
"#### Messenger: Setting Raster min. Y to " <<
Ymin/mm <<
" mm." << G4endl;
266 G4cout <<
"#### Messenger: Setting Raster max. Y to " <<
Ymax/mm <<
" mm." << G4endl;
void SetBeamDirectionY(G4double y)
QweakSimUserInformation * GetUserInfo() const
void SetBeamPositionY(G4double y)
G4UIcmdWithADoubleAndUnit * SetPositionY_Cmd
G4UIcmdWithAString * SetPolarization_Cmd
G4UIcmdWithAString * SetBeamParticleType_Cmd
void SetScatteredParticleType(G4String type="e-")
G4UIcmdWithADoubleAndUnit * SetRasterXmax_Cmd
virtual ~QweakSimPrimaryGeneratorActionMessenger()
G4UIcmdWithAString * SetParticleType_Cmd
void SetBeamPositionX(G4double x)
Deal with primary particle generation and inject it in the detector.
G4UIcmdWithADoubleAndUnit * SetDirectionX_Cmd
void SetBeamParticleType(G4String type="e-")
void SetNewValue(G4UIcommand *, G4String)
G4UIcmdWithAnInteger * InitEventCounterCmd
G4UIcmdWithAString * SetScatteredParticleType_Cmd
G4UIcmdWithADoubleAndUnit * SetRasterYmax_Cmd
void SetBeamRasteringRegion(G4double X_min=-2.0 *mm, G4double X_max=2.0 *mm, G4double Y_min=-2.0 *mm, G4double Y_max=2.0 *mm)
G4UIcmdWithADoubleAndUnit * SetDirectionY_Cmd
QweakSimPrimaryGeneratorActionMessenger(QweakSimPrimaryGeneratorAction *)
void SetNtupleEventCounter(G4int cnt)
G4UIcmdWithADoubleAndUnit * SetRasterXmin_Cmd
G4UIcmdWithADoubleAndUnit * SetRasterSize_Cmd
G4UIcmdWithADoubleAndUnit * SetPositionZ_Cmd
void ResetNtupleEventCounter()
G4UIcmdWithADoubleAndUnit * SetPositionX_Cmd
void SetBeamDirectionX(G4double x)
G4UIcmdWithAnInteger * verboseCmd
G4UIcmdWithADoubleAndUnit * SetRasterYmin_Cmd
void SetBeamPositionZ(G4double z)
void SetPolarization(G4String polarization)
QweakSimPrimaryGeneratorAction * pPrimaryGeneratorAction
G4UIcmdWithoutParameter * resetCmd