Geant4  10.03
DicomBeamControlPoint.hh
Go to the documentation of this file.
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 #ifndef DicomBeamControlPoint__HH
27 #define DicomBeamControlPoint__HH
28 
29 #include <vector>
30 #include <iostream>
31 #include "dcmtk/dcmrt/seq/drtcps.h" // for ControlPointSequence
32 class DicomBeamDevicePos;
33 
34 #include "G4ThreeVector.hh"
35 
37 {
38 public:
39  DicomBeamControlPoint(DRTControlPointSequence::Item cpItem, DicomBeamControlPoint* point0 );
41 
42 public:
43  void SetIndex( Sint32 dat ) {
44  theIndex = dat;
45  }
46  Sint32 GetIndex() const {
47  return theIndex;
48  }
49  void SetNominalBeamEnergy(Float64 dat){
51  }
52  Float64 GetNominalBeamEnergy() const {
53  return theNominalBeamEnergy;
54  }
55  void SetGantryAngle(Float64 dat){
56  theGantryAngle = dat;
57  }
58  void SetGantryRotationDirection(OFString dat){
60  }
61  void SetBeamLimitingDeviceAngle(Float64 dat){
63  }
66  }
67  void SetPatientSupportAngle(Float64 dat){
69  }
72  }
73  void SetTableTopEccentricAngle(Float64 dat){
75  }
78  }
81  }
82  void SetSourceToSurfaceDistance(Float64 dat){
84  }
85  void SetCumulativeMetersetWeight(Float64 dat){
87  }
88  void SetMetersetWeight(Float64 dat){
89  theMetersetWeight = dat;
90  }
91  void SetGantryPitchAngle(Float32 dat){
92  theGantryPitchAngle = dat;
93  }
94  void SetSurfaceEntryPoint(Float64 dat){
96  }
99  }
100  void SetTableTopLateralPosition(Float64 dat){
102  }
105  }
106  void SetTableTopPitchAngle(Float32 dat){
107  theTableTopPitchAngle = dat;
108  }
111  }
112  void SetTableTopRollAngle(Float32 dat){
113  theTableTopRollAngle = dat;
114  }
117  }
118  void SetTableTopVerticalPosition(Float64 dat){
120  }
121  OFString GetGantryRotationDirection() const {
123  }
124  Float64 GetBeamLimitingDeviceAngle() const {
126  }
129  }
130  Float64 GetPatientSupportAngle() const {
131  return thePatientSupportAngle;
132  }
135  }
136  Float64 GetTableTopEccentricAngle() const {
138  }
141  }
143  return theIsocenterPosition;
144  }
145  Float64 GetSourceToSurfaceDistance() const {
147  }
148  Float64 GetCumulativeMetersetWeight() const {
150  }
151  Float64 GetMetersetWeight() const {
152  return theMetersetWeight;
153  }
154  Float32 GetGantryPitchAngle() const {
155  return theGantryPitchAngle;
156  }
157  Float64 GetSurfaceEntryPoint() const {
158  return theSurfaceEntryPoint;
159  }
162  }
163  Float64 GetTableTopLateralPosition() const {
165  }
168  }
169  Float32 GetTableTopPitchAngle() const {
170  return theTableTopPitchAngle;
171  }
174  }
175  Float32 GetTableTopRollAngle() const {
176  return theTableTopRollAngle;
177  }
180  }
181  Float64 GetTableTopVerticalPosition() const {
183  }
184 
186  theDevices.push_back(dbd);
187  }
188 
189  void DumpToFile( std::ofstream& out );
190 
191  void Print( std::ostream& out );
192 
193 private:
194  Sint32 theIndex;
196  Float64 theGantryAngle;
218 
219  std::vector<DicomBeamDevicePos *> theDevices;
220 
221 };
222 
223 #endif
Float64 GetTableTopLongitudinalPosition() const
Float64 GetCumulativeMetersetWeight() const
OFString GetBeamLimitingDeviceRotationDirection() const
void SetTableTopLateralPosition(Float64 dat)
CLHEP::Hep3Vector G4ThreeVector
OFString GetGantryRotationDirection() const
void SetGantryRotationDirection(OFString dat)
Float64 GetBeamLimitingDeviceAngle() const
Float64 GetSourceToSurfaceDistance() const
void SetSurfaceEntryPoint(Float64 dat)
void SetMetersetWeight(Float64 dat)
void SetTableTopRollRotationDirection(OFString dat)
OFString GetTableTopEccentricRotationDirection() const
void SetGantryPitchAngle(Float32 dat)
void DumpToFile(std::ofstream &out)
Float64 GetNominalBeamEnergy() const
Float32 GetTableTopRollAngle() const
void SetTableTopPitchAngle(Float32 dat)
G4ThreeVector GetIsocenterPosition() const
Float32 GetGantryPitchAngle() const
void SetTableTopVerticalPosition(Float64 dat)
void SetBeamLimitingDeviceRotationDirection(OFString dat)
void SetGantryAngle(Float64 dat)
Float64 GetTableTopEccentricAxisDistance() const
void SetPatientSupportAngle(Float64 dat)
void SetCumulativeMetersetWeight(Float64 dat)
void SetTableTopEccentricRotationDirection(OFString dat)
Float64 GetMetersetWeight() const
Float64 GetTableTopVerticalPosition() const
void SetTableTopRollAngle(Float32 dat)
void SetTableTopPitchRotationDirection(OFString dat)
Float64 GetTableTopLateralPosition() const
OFString GetPatientSupportRotationDirection() const
void Print(std::ostream &out)
void SetTableTopLongitudinalPosition(Float64 dat)
Float64 GetTableTopEccentricAngle() const
OFString GetTableTopRollRotationDirection() const
void SetPatientSupportRotationDirection(OFString dat)
void SetTableTopEccentricAngle(Float64 dat)
void SetSourceToSurfaceDistance(Float64 dat)
OFString GetTableTopPitchRotationDirection() const
Float32 GetTableTopPitchAngle() const
void AddDevice(DicomBeamDevicePos *dbd)
DicomBeamControlPoint(DRTControlPointSequence::Item cpItem, DicomBeamControlPoint *point0)
void SetTableTopEccentricAxisDistance(Float64 dat)
std::vector< DicomBeamDevicePos * > theDevices
Float64 GetSurfaceEntryPoint() const
void SetBeamLimitingDeviceAngle(Float64 dat)
void SetNominalBeamEnergy(Float64 dat)
void SetIsocenterPosition(G4ThreeVector dat)
Float64 GetPatientSupportAngle() const