Geant4  10.03.p02
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
DicomBeam Class Reference

#include <DicomBeam.hh>

Public Member Functions

 DicomBeam ()
 
 ~DicomBeam ()
 
void SetDoseSpecificationPoint (G4ThreeVector point)
 
void SetMeterset (Float64 dat)
 
void SetSourceAxisDistance (Float64 dat)
 
void SetNumber (Sint32 dat)
 
void SetRadiationType (OFString dat)
 
void AddDevice (DicomVBeamDevice *db)
 
void AddControlPoint (DicomBeamControlPoint *db)
 
void AddCompensator (DicomBeamCompensator *db)
 
void AddBlock (DicomBeamBlock *db)
 
void AddWedge (DicomBeamWedge *db)
 
size_t GetNControlPoints () const
 
DicomBeamControlPointGetControlPoint (size_t ii)
 
void SetControlPointMetersets ()
 
void Print (std::ostream &out)
 
void DumpToFile ()
 

Detailed Description

Definition at line 40 of file DicomBeam.hh.

Constructor & Destructor Documentation

DicomBeam::DicomBeam ( )

Definition at line 33 of file DicomBeam.cc.

34 {
35 }
DicomBeam::~DicomBeam ( )
inline

Definition at line 44 of file DicomBeam.hh.

44 {};

Member Function Documentation

void DicomBeam::AddBlock ( DicomBeamBlock db)
inline

Definition at line 71 of file DicomBeam.hh.

71  {
72  theBlocks.push_back(db);
73  }

Here is the caller graph for this function:

void DicomBeam::AddCompensator ( DicomBeamCompensator db)
inline

Definition at line 68 of file DicomBeam.hh.

68  {
69  theCompensators.push_back(db);
70  }

Here is the caller graph for this function:

void DicomBeam::AddControlPoint ( DicomBeamControlPoint db)
inline

Definition at line 65 of file DicomBeam.hh.

65  {
66  theControlPoints.push_back(db);
67  }

Here is the caller graph for this function:

void DicomBeam::AddDevice ( DicomVBeamDevice db)
inline

Definition at line 62 of file DicomBeam.hh.

62  {
63  theDevices.push_back(db);
64  }

Here is the caller graph for this function:

void DicomBeam::AddWedge ( DicomBeamWedge db)
inline

Definition at line 74 of file DicomBeam.hh.

74  {
75  theWedges.push_back(db);
76  }

Here is the caller graph for this function:

void DicomBeam::DumpToFile ( )

Definition at line 55 of file DicomBeam.cc.

56 {
57  std::ofstream fout("RTPlan_"+std::to_string(theNumber));
58  fout << ":P BeamMeterset " << theMeterset << G4endl;
59 
60  for( size_t ii = 0; ii < theDevices.size(); ii++) {
61  theDevices[ii]->DumpToFile( fout );
62  }
63 
64  for( size_t ii = 0; ii < theCompensators.size(); ii++) {
65  theCompensators[ii]->DumpToFile( fout );
66  }
67 
68  for( size_t kk = 0; kk < theControlPoints.size(); kk++ ){
69  std::string kkstr = std::to_string(theControlPoints[kk]->GetIndex());
70  std::ofstream fout2("RTPlanControlPoint_"+std::to_string(theNumber)+"_"+kkstr);
71  theControlPoints[kk]->DumpToFile( fout2 );
72  }
73 
74 }
#define G4endl
Definition: G4ios.hh:61
DicomBeamControlPoint* DicomBeam::GetControlPoint ( size_t  ii)
inline

Definition at line 80 of file DicomBeam.hh.

80  {
81  return theControlPoints[ii];
82  }

Here is the caller graph for this function:

size_t DicomBeam::GetNControlPoints ( ) const
inline

Definition at line 77 of file DicomBeam.hh.

77  {
78  return theControlPoints.size();
79  }

Here is the caller graph for this function:

void DicomBeam::Print ( std::ostream &  out)

Definition at line 38 of file DicomBeam.cc.

39 {
40 
41 }
void DicomBeam::SetControlPointMetersets ( )

Definition at line 44 of file DicomBeam.cc.

45 {
46  G4double prevCumulativeMS = 0.;
47  for( size_t ii = 0; ii < theControlPoints.size(); ii++ ){
48  G4double cumulativeMS = theControlPoints[ii]->GetCumulativeMetersetWeight();
49  theControlPoints[ii]->SetMetersetWeight( (cumulativeMS - prevCumulativeMS )*theMeterset);
50  prevCumulativeMS = cumulativeMS;
51  }
52 }
double G4double
Definition: G4Types.hh:76
void DicomBeam::SetDoseSpecificationPoint ( G4ThreeVector  point)
inline

Definition at line 47 of file DicomBeam.hh.

47  {
48  theDoseSpecificationPoint = point;
49  }

Here is the caller graph for this function:

void DicomBeam::SetMeterset ( Float64  dat)
inline

Definition at line 50 of file DicomBeam.hh.

50  {
51  theMeterset = dat;
52  }

Here is the caller graph for this function:

void DicomBeam::SetNumber ( Sint32  dat)
inline

Definition at line 56 of file DicomBeam.hh.

56  {
57  theNumber = dat;
58  }

Here is the caller graph for this function:

void DicomBeam::SetRadiationType ( OFString  dat)
inline

Definition at line 59 of file DicomBeam.hh.

59  {
60  theRadiationType = dat;
61  }

Here is the caller graph for this function:

void DicomBeam::SetSourceAxisDistance ( Float64  dat)
inline

Definition at line 53 of file DicomBeam.hh.

53  {
54  theSourceAxisDistance = dat;
55  }

Here is the caller graph for this function:


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