ECCE @ EIC Software
Reference for
ECCE @ EIC
simulation and reconstruction software on GitHub
Home page
Related Pages
Modules
Namespaces
Classes
Files
External Links
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
HadrontherapyTIFPAPassiveProtonBeamLineMessenger.hh
Go to the documentation of this file.
Or view
the newest version in sPHENIX GitHub for file HadrontherapyTIFPAPassiveProtonBeamLineMessenger.hh
1
//
2
// ********************************************************************
3
// * License and Disclaimer *
4
// * *
5
// * The Geant4 software is copyright of the Copyright Holders of *
6
// * the Geant4 Collaboration. It is provided under the terms and *
7
// * conditions of the Geant4 Software License, included in the file *
8
// * LICENSE and available at http://cern.ch/geant4/license . These *
9
// * include a list of copyright holders. *
10
// * *
11
// * Neither the authors of this software system, nor their employing *
12
// * institutes,nor the agencies providing financial support for this *
13
// * work make any representation or warranty, express or implied, *
14
// * regarding this software system or assume any liability for its *
15
// * use. Please see the license in the file LICENSE and URL above *
16
// * for the full disclaimer and the limitation of liability. *
17
// * *
18
// * This code implementation is the result of the scientific and *
19
// * technical work of the GEANT4 collaboration. *
20
// * By using, copying, modifying or distributing the software (or *
21
// * any work based on the software) you agree to acknowledge its *
22
// * use in resulting scientific publications, and indicate your *
23
// * acceptance of all terms of the Geant4 Software license. *
24
// ********************************************************************
25
//
26
// Hadrontherapy advanced example for Geant4
27
// See more at: https://twiki.cern.ch/twiki/bin/view/Geant4/AdvancedExamplesHadrontherapy
28
29
#ifndef TrentoPassiveProtonBeamLineMessenger_h
30
#define TrentoPassiveProtonBeamLineMessenger_h 1
31
32
#include "
globals.hh
"
33
#include "
G4UImessenger.hh
"
34
35
36
class
TrentoPassiveProtonBeamLine
;
37
class
G4UIdirectory
;
38
class
G4UIcmdWithADoubleAndUnit
;
39
class
G4UIcmdWithAString
;
40
41
class
TrentoPassiveProtonBeamLineMessenger
:
public
G4UImessenger
42
{
43
public
:
44
TrentoPassiveProtonBeamLineMessenger
(
TrentoPassiveProtonBeamLine
*);
45
~TrentoPassiveProtonBeamLineMessenger
();
46
47
void
SetNewValue
(
G4UIcommand
*,
G4String
);
48
49
private
:
50
51
// Pointer to the detector component
52
TrentoPassiveProtonBeamLine
*
TrentoPassiveProton
;
53
54
G4UIdirectory
*
changeTheBeamLineDir
;
55
G4UIcmdWithAString
*
changeTheBeamLineNameCmd
;
// Control the name of the beam line
56
57
G4UIdirectory
*
modulatorDir
;
// Control of the modulator
58
G4UIdirectory
*
beamLineDir
;
// Control of the beam line
59
60
//G4UIdirectory* ScatteringFoilDir;
61
// Control of the first scattering foil component of the beam line
62
63
G4UIcmdWithADoubleAndUnit
*
ScatteringFoilXSizeCmd
;
64
// UI command to set half of the X size of the rangeShifter component of
65
// the beam line
66
67
G4UIcmdWithAString
*
scatteringFoilMatCmd
;
68
// UI command to set the material of the rangeShifter component of
69
// the beam line
70
71
G4UIcmdWithADoubleAndUnit
*
preCollimatorXSizeCmd
;
72
// UI command to set half of the X size of the pre collimator component of
73
// the beam line
74
75
G4UIcmdWithADoubleAndUnit
*
preCollimatorXPositionCmd
;
76
// UI command to set the position X of the pre collimator in
77
// the beam line
78
79
G4UIcmdWithADoubleAndUnit
*
AirTubeYSizeCmd
;
80
// UI command to set the position X of the pre collimator in
81
// the beam line
82
83
G4UIcmdWithADoubleAndUnit
*
AirTubeZSizeCmd
;
84
// UI command to set outer radius of collimator
85
86
};
87
#endif
88
geant4
tree
geant4-10.6-release
examples
advanced
hadrontherapy
include
HadrontherapyTIFPAPassiveProtonBeamLineMessenger.hh
Built by
Jin Huang
. updated:
Wed Jun 29 2022 17:24:58
using
1.8.2 with
ECCE GitHub integration