ECCE @ EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
HadrontherapyModulator Class Reference

#include <geant4/tree/geant4-10.6-release/examples/advanced/hadrontherapy/include/HadrontherapyModulator.hh>

+ Collaboration diagram for HadrontherapyModulator:

Public Member Functions

 HadrontherapyModulator ()
 
 ~HadrontherapyModulator ()
 
void BuildModulator (G4VPhysicalVolume *)
 
void SetModulatorAngle (G4double)
 
void SetModulatorMaterial (G4String)
 
void SetModulatorPosition (G4ThreeVector)
 
void SetModulatorInnerRadius (G4double)
 
void SetModulatorOuterRadius (G4double)
 
void ModulatorDefaultProperties ()
 
void ModulatorPropertiesFromFile (G4String)
 
void GetDataFromFile (G4String value)
 
void GetStepInformation ()
 
void BuildSteps ()
 

Private Attributes

std::ifstream File
 
G4LogicalVolumelogicMotherMod
 
G4VPhysicalVolumephysiMotherMod
 
G4MaterialMod0Mater
 
G4MaterialModMater
 
G4TubssolidMod1
 
G4LogicalVolumelogicMod1
 
G4VPhysicalVolumephysiMod1
 
G4TubssolidMod2
 
G4LogicalVolumelogicMod2
 
G4VPhysicalVolumephysiMod2
 
G4TubssolidMod3
 
G4LogicalVolumelogicMod3
 
G4VPhysicalVolumephysiMod3
 
G4TubssolidMod4
 
G4LogicalVolumelogicMod4
 
G4VPhysicalVolumephysiMod4
 
G4double pi
 
G4int StepNumbers
 
G4doubleWeight
 
G4doubleStepThickness
 
G4doubleStartingAngle
 
G4doubleSpanningAngle
 
G4ThreeVectorPositionMod
 
G4Tubs ** solidMod
 
G4LogicalVolume ** logicMod
 
G4VPhysicalVolume ** physiMod
 
G4RotationMatrixrm
 
G4String FileName
 
HadrontherapyModulatorMessengerModulatorMessenger
 
G4double innerRadiusOfTheTube
 
G4double outerRadiusOfTheTube
 

Detailed Description

Definition at line 50 of file HadrontherapyModulator.hh.

View newest version in sPHENIX GitHub at line 50 of file HadrontherapyModulator.hh

Constructor & Destructor Documentation

HadrontherapyModulator::HadrontherapyModulator ( )

Definition at line 57 of file HadrontherapyModulator.cc.

View newest version in sPHENIX GitHub at line 57 of file HadrontherapyModulator.cc

References deg, logicMod, ModulatorDefaultProperties(), ModulatorMessenger, phi, physiMod, pi, PositionMod, rm, solidMod, SpanningAngle, StartingAngle, StepNumbers, StepThickness, and Weight.

+ Here is the call graph for this function:

HadrontherapyModulator::~HadrontherapyModulator ( )

Definition at line 102 of file HadrontherapyModulator.cc.

View newest version in sPHENIX GitHub at line 102 of file HadrontherapyModulator.cc

References logicMod, ModulatorMessenger, physiMod, PositionMod, rm, solidMod, SpanningAngle, StartingAngle, StepThickness, and Weight.

Member Function Documentation

void HadrontherapyModulator::BuildModulator ( G4VPhysicalVolume motherVolume)

Definition at line 247 of file HadrontherapyModulator.cc.

View newest version in sPHENIX GitHub at line 247 of file HadrontherapyModulator.cc

References BuildSteps(), cm, G4NistManager::FindOrBuildMaterial(), innerRadiusOfTheTube, G4NistManager::Instance(), logicMotherMod, mm, Mod0Mater, ModMater, outerRadiusOfTheTube, physiMotherMod, and rm.

+ Here is the call graph for this function:

void HadrontherapyModulator::BuildSteps ( )

Definition at line 277 of file HadrontherapyModulator.cc.

View newest version in sPHENIX GitHub at line 277 of file HadrontherapyModulator.cc

References cm, deg, pyG4RunManager::GeometryHasBeenModified, G4VisAttributes::GetInvisible(), G4RunManager::GetRunManager(), innerRadiusOfTheTube, logicMod, logicMod1, logicMod2, logicMod3, logicMod4, logicMotherMod, Mod0Mater, ModMater, outerRadiusOfTheTube, physiMod, physiMod1, physiMod2, physiMod3, physiMod4, PositionMod, rm3, CLHEP::HepRotation::rotateZ(), G4LogicalVolume::SetVisAttributes(), solidMod, solidMod1, solidMod2, solidMod3, solidMod4, SpanningAngle, StartingAngle, StepNumbers, and StepThickness.

Referenced by BuildModulator(), and ModulatorPropertiesFromFile().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void HadrontherapyModulator::GetDataFromFile ( G4String  value)

Definition at line 566 of file HadrontherapyModulator.cc.

View newest version in sPHENIX GitHub at line 566 of file HadrontherapyModulator.cc

References FileName, G4cout, G4endl, ModulatorPropertiesFromFile(), and configureMap::Name.

Referenced by HadrontherapyModulatorMessenger::SetNewValue().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void HadrontherapyModulator::GetStepInformation ( )

Definition at line 211 of file HadrontherapyModulator.cc.

View newest version in sPHENIX GitHub at line 211 of file HadrontherapyModulator.cc

References deg, pi, PositionMod, SpanningAngle, StartingAngle, StepNumbers, StepThickness, and Weight.

Referenced by ModulatorDefaultProperties(), and ModulatorPropertiesFromFile().

+ Here is the caller graph for this function:

void HadrontherapyModulator::ModulatorDefaultProperties ( )

Definition at line 117 of file HadrontherapyModulator.cc.

View newest version in sPHENIX GitHub at line 117 of file HadrontherapyModulator.cc

References GetStepInformation(), StepThickness, and Weight.

Referenced by HadrontherapyModulator().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void HadrontherapyModulator::ModulatorPropertiesFromFile ( G4String  Name)

Definition at line 149 of file HadrontherapyModulator.cc.

View newest version in sPHENIX GitHub at line 149 of file HadrontherapyModulator.cc

References BuildSteps(), FatalException, File, G4cout, G4endl, G4Exception(), GetStepInformation(), in, logicMod, logicMod1, logicMod2, logicMod3, logicMod4, physiMod, physiMod1, physiMod2, physiMod3, physiMod4, PositionMod, solidMod, solidMod1, solidMod2, solidMod3, solidMod4, SpanningAngle, StartingAngle, StepNumbers, StepThickness, and Weight.

Referenced by GetDataFromFile().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void HadrontherapyModulator::SetModulatorAngle ( G4double  angle)

Definition at line 487 of file HadrontherapyModulator.cc.

View newest version in sPHENIX GitHub at line 487 of file HadrontherapyModulator.cc

References angle, deg, G4cout, G4endl, pyG4RunManager::GeometryHasBeenModified, G4RunManager::GetRunManager(), physiMotherMod, and rm.

+ Here is the call graph for this function:

void HadrontherapyModulator::SetModulatorInnerRadius ( G4double  newvalue)

Definition at line 537 of file HadrontherapyModulator.cc.

View newest version in sPHENIX GitHub at line 537 of file HadrontherapyModulator.cc

References G4cout, G4endl, pyG4RunManager::GeometryHasBeenModified, G4RunManager::GetRunManager(), mm, solidMod, solidMod1, solidMod2, solidMod3, solidMod4, and StepNumbers.

+ Here is the call graph for this function:

void HadrontherapyModulator::SetModulatorMaterial ( G4String  Material)

Definition at line 498 of file HadrontherapyModulator.cc.

View newest version in sPHENIX GitHub at line 498 of file HadrontherapyModulator.cc

References G4cout, G4endl, pyG4RunManager::GeometryHasBeenModified, G4RunManager::GetRunManager(), G4NistManager::Instance(), logicMod, EmPlot::SetMaterial(), and StepNumbers.

+ Here is the call graph for this function:

void HadrontherapyModulator::SetModulatorOuterRadius ( G4double  newvalue)

Definition at line 552 of file HadrontherapyModulator.cc.

View newest version in sPHENIX GitHub at line 552 of file HadrontherapyModulator.cc

References G4cout, G4endl, pyG4RunManager::GeometryHasBeenModified, G4RunManager::GetRunManager(), mm, solidMod, solidMod1, solidMod2, solidMod3, solidMod4, and StepNumbers.

+ Here is the call graph for this function:

void HadrontherapyModulator::SetModulatorPosition ( G4ThreeVector  Pos)

Definition at line 527 of file HadrontherapyModulator.cc.

View newest version in sPHENIX GitHub at line 527 of file HadrontherapyModulator.cc

References G4cout, G4endl, pyG4RunManager::GeometryHasBeenModified, G4RunManager::GetRunManager(), mm, and physiMotherMod.

+ Here is the call graph for this function:

Member Data Documentation

std::ifstream HadrontherapyModulator::File
private

Definition at line 70 of file HadrontherapyModulator.hh.

View newest version in sPHENIX GitHub at line 70 of file HadrontherapyModulator.hh

Referenced by ModulatorPropertiesFromFile().

G4String HadrontherapyModulator::FileName
private

Definition at line 107 of file HadrontherapyModulator.hh.

View newest version in sPHENIX GitHub at line 107 of file HadrontherapyModulator.hh

Referenced by GetDataFromFile().

G4double HadrontherapyModulator::innerRadiusOfTheTube
private

Definition at line 109 of file HadrontherapyModulator.hh.

View newest version in sPHENIX GitHub at line 109 of file HadrontherapyModulator.hh

Referenced by BuildModulator(), and BuildSteps().

G4LogicalVolume** HadrontherapyModulator::logicMod
private

Definition at line 102 of file HadrontherapyModulator.hh.

View newest version in sPHENIX GitHub at line 102 of file HadrontherapyModulator.hh

Referenced by BuildSteps(), HadrontherapyModulator(), ModulatorPropertiesFromFile(), SetModulatorMaterial(), and ~HadrontherapyModulator().

G4LogicalVolume* HadrontherapyModulator::logicMod1
private

Definition at line 79 of file HadrontherapyModulator.hh.

View newest version in sPHENIX GitHub at line 79 of file HadrontherapyModulator.hh

Referenced by BuildSteps(), and ModulatorPropertiesFromFile().

G4LogicalVolume* HadrontherapyModulator::logicMod2
private

Definition at line 83 of file HadrontherapyModulator.hh.

View newest version in sPHENIX GitHub at line 83 of file HadrontherapyModulator.hh

Referenced by BuildSteps(), and ModulatorPropertiesFromFile().

G4LogicalVolume* HadrontherapyModulator::logicMod3
private

Definition at line 87 of file HadrontherapyModulator.hh.

View newest version in sPHENIX GitHub at line 87 of file HadrontherapyModulator.hh

Referenced by BuildSteps(), and ModulatorPropertiesFromFile().

G4LogicalVolume* HadrontherapyModulator::logicMod4
private

Definition at line 91 of file HadrontherapyModulator.hh.

View newest version in sPHENIX GitHub at line 91 of file HadrontherapyModulator.hh

Referenced by BuildSteps(), and ModulatorPropertiesFromFile().

G4LogicalVolume* HadrontherapyModulator::logicMotherMod
private

Definition at line 72 of file HadrontherapyModulator.hh.

View newest version in sPHENIX GitHub at line 72 of file HadrontherapyModulator.hh

Referenced by BuildModulator(), and BuildSteps().

G4Material* HadrontherapyModulator::Mod0Mater
private

Definition at line 75 of file HadrontherapyModulator.hh.

View newest version in sPHENIX GitHub at line 75 of file HadrontherapyModulator.hh

Referenced by BuildModulator(), and BuildSteps().

G4Material* HadrontherapyModulator::ModMater
private

Definition at line 76 of file HadrontherapyModulator.hh.

View newest version in sPHENIX GitHub at line 76 of file HadrontherapyModulator.hh

Referenced by BuildModulator(), and BuildSteps().

HadrontherapyModulatorMessenger* HadrontherapyModulator::ModulatorMessenger
private

Definition at line 108 of file HadrontherapyModulator.hh.

View newest version in sPHENIX GitHub at line 108 of file HadrontherapyModulator.hh

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

G4double HadrontherapyModulator::outerRadiusOfTheTube
private

Definition at line 110 of file HadrontherapyModulator.hh.

View newest version in sPHENIX GitHub at line 110 of file HadrontherapyModulator.hh

Referenced by BuildModulator(), and BuildSteps().

G4VPhysicalVolume** HadrontherapyModulator::physiMod
private

Definition at line 103 of file HadrontherapyModulator.hh.

View newest version in sPHENIX GitHub at line 103 of file HadrontherapyModulator.hh

Referenced by BuildSteps(), HadrontherapyModulator(), ModulatorPropertiesFromFile(), and ~HadrontherapyModulator().

G4VPhysicalVolume* HadrontherapyModulator::physiMod1
private

Definition at line 80 of file HadrontherapyModulator.hh.

View newest version in sPHENIX GitHub at line 80 of file HadrontherapyModulator.hh

Referenced by BuildSteps(), and ModulatorPropertiesFromFile().

G4VPhysicalVolume* HadrontherapyModulator::physiMod2
private

Definition at line 84 of file HadrontherapyModulator.hh.

View newest version in sPHENIX GitHub at line 84 of file HadrontherapyModulator.hh

Referenced by BuildSteps(), and ModulatorPropertiesFromFile().

G4VPhysicalVolume* HadrontherapyModulator::physiMod3
private

Definition at line 88 of file HadrontherapyModulator.hh.

View newest version in sPHENIX GitHub at line 88 of file HadrontherapyModulator.hh

Referenced by BuildSteps(), and ModulatorPropertiesFromFile().

G4VPhysicalVolume* HadrontherapyModulator::physiMod4
private

Definition at line 92 of file HadrontherapyModulator.hh.

View newest version in sPHENIX GitHub at line 92 of file HadrontherapyModulator.hh

Referenced by BuildSteps(), and ModulatorPropertiesFromFile().

G4VPhysicalVolume* HadrontherapyModulator::physiMotherMod
private

Definition at line 73 of file HadrontherapyModulator.hh.

View newest version in sPHENIX GitHub at line 73 of file HadrontherapyModulator.hh

Referenced by BuildModulator(), SetModulatorAngle(), and SetModulatorPosition().

G4double HadrontherapyModulator::pi
private

Definition at line 94 of file HadrontherapyModulator.hh.

View newest version in sPHENIX GitHub at line 94 of file HadrontherapyModulator.hh

Referenced by GetStepInformation(), and HadrontherapyModulator().

G4ThreeVector* HadrontherapyModulator::PositionMod
private

Definition at line 100 of file HadrontherapyModulator.hh.

View newest version in sPHENIX GitHub at line 100 of file HadrontherapyModulator.hh

Referenced by BuildSteps(), GetStepInformation(), HadrontherapyModulator(), ModulatorPropertiesFromFile(), and ~HadrontherapyModulator().

G4RotationMatrix* HadrontherapyModulator::rm
private

Definition at line 105 of file HadrontherapyModulator.hh.

View newest version in sPHENIX GitHub at line 105 of file HadrontherapyModulator.hh

Referenced by BuildModulator(), HadrontherapyModulator(), SetModulatorAngle(), and ~HadrontherapyModulator().

G4Tubs** HadrontherapyModulator::solidMod
private
G4Tubs* HadrontherapyModulator::solidMod1
private

Definition at line 78 of file HadrontherapyModulator.hh.

View newest version in sPHENIX GitHub at line 78 of file HadrontherapyModulator.hh

Referenced by BuildSteps(), ModulatorPropertiesFromFile(), SetModulatorInnerRadius(), and SetModulatorOuterRadius().

G4Tubs* HadrontherapyModulator::solidMod2
private

Definition at line 82 of file HadrontherapyModulator.hh.

View newest version in sPHENIX GitHub at line 82 of file HadrontherapyModulator.hh

Referenced by BuildSteps(), ModulatorPropertiesFromFile(), SetModulatorInnerRadius(), and SetModulatorOuterRadius().

G4Tubs* HadrontherapyModulator::solidMod3
private

Definition at line 86 of file HadrontherapyModulator.hh.

View newest version in sPHENIX GitHub at line 86 of file HadrontherapyModulator.hh

Referenced by BuildSteps(), ModulatorPropertiesFromFile(), SetModulatorInnerRadius(), and SetModulatorOuterRadius().

G4Tubs* HadrontherapyModulator::solidMod4
private

Definition at line 90 of file HadrontherapyModulator.hh.

View newest version in sPHENIX GitHub at line 90 of file HadrontherapyModulator.hh

Referenced by BuildSteps(), ModulatorPropertiesFromFile(), SetModulatorInnerRadius(), and SetModulatorOuterRadius().

G4double* HadrontherapyModulator::SpanningAngle
private

Definition at line 99 of file HadrontherapyModulator.hh.

View newest version in sPHENIX GitHub at line 99 of file HadrontherapyModulator.hh

Referenced by BuildSteps(), GetStepInformation(), HadrontherapyModulator(), ModulatorPropertiesFromFile(), and ~HadrontherapyModulator().

G4double* HadrontherapyModulator::StartingAngle
private

Definition at line 98 of file HadrontherapyModulator.hh.

View newest version in sPHENIX GitHub at line 98 of file HadrontherapyModulator.hh

Referenced by BuildSteps(), GetStepInformation(), HadrontherapyModulator(), ModulatorPropertiesFromFile(), and ~HadrontherapyModulator().

G4int HadrontherapyModulator::StepNumbers
private
G4double* HadrontherapyModulator::StepThickness
private
G4double* HadrontherapyModulator::Weight
private

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