Geant4
10.03
|
#include <HadrontherapyDetectorConstruction.hh>
Public Member Functions | |
HadrontherapyDetectorConstruction (G4VPhysicalVolume *) | |
~HadrontherapyDetectorConstruction () | |
void | InitializeDetectorROGeometry (HadrontherapyDetectorROGeometry *, G4ThreeVector detectorToWorldPosition) |
G4ThreeVector | GetDetectorToWorldPosition () |
G4ThreeVector | GetDetectorToPhantomPosition () |
void | SetDetectorPosition () |
bool | IsInside (G4double detectorX, G4double detectorY, G4double detectorZ, G4double phantomX, G4double phantomY, G4double phantomZ, G4ThreeVector pos) |
G4bool | SetPhantomMaterial (G4String material) |
void | SetVoxelSize (G4double sizeX, G4double sizeY, G4double sizeZ) |
void | SetDetectorSize (G4double sizeX, G4double sizeY, G4double sizeZ) |
void | SetPhantomSize (G4double sizeX, G4double sizeY, G4double sizeZ) |
void | SetPhantomPosition (G4ThreeVector) |
void | SetDetectorToPhantomPosition (G4ThreeVector DetectorToPhantomPosition) |
void | UpdateGeometry () |
void | PrintParameters () |
G4LogicalVolume * | GetDetectorLogicalVolume () |
Static Public Member Functions | |
static HadrontherapyDetectorConstruction * | GetInstance () |
Public Attributes | |
G4VPhysicalVolume * | motherPhys |
HadrontherapyDetectorSD * | detectorSD |
Private Member Functions | |
void | ConstructPhantom () |
void | ConstructDetector () |
void | ParametersCheck () |
void | CheckOverlaps () |
Static Private Attributes | |
static HadrontherapyDetectorConstruction * | instance = 0 |
Definition at line 48 of file HadrontherapyDetectorConstruction.hh.
HadrontherapyDetectorConstruction::HadrontherapyDetectorConstruction | ( | G4VPhysicalVolume * | physicalTreatmentRoom | ) |
Definition at line 62 of file HadrontherapyDetectorConstruction.cc.
References cm, detectorMessenger, HadrontherapyAnalysisManager::GetInstance(), SetDetectorPosition(), SetDetectorSize(), SetDetectorToPhantomPosition(), SetPhantomMaterial(), SetPhantomPosition(), SetPhantomSize(), sizeOfVoxelAlongX, sizeOfVoxelAlongY, sizeOfVoxelAlongZ, um, and UpdateGeometry().
HadrontherapyDetectorConstruction::~HadrontherapyDetectorConstruction | ( | ) |
Definition at line 102 of file HadrontherapyDetectorConstruction.cc.
References detectorMessenger, detectorROGeometry, and matrix.
|
private |
Definition at line 410 of file HadrontherapyDetectorConstruction.cc.
References G4cout, G4endl, and G4PhysicalVolumeStore::GetInstance().
|
private |
Definition at line 170 of file HadrontherapyDetectorConstruction.cc.
References aRegion, detector, detectorLogicalVolume, detectorMaterial, detectorPhysicalVolume, detectorPosition, detectorSizeX, detectorSizeY, detectorSizeZ, phantomPhysicalVolume, and skyBlue.
Referenced by UpdateGeometry().
|
private |
Definition at line 119 of file HadrontherapyDetectorConstruction.cc.
References motherPhys, phantom, phantomLogicalVolume, phantomMaterial, phantomPhysicalVolume, phantomPosition, phantomSizeX, phantomSizeY, phantomSizeZ, and red.
Referenced by UpdateGeometry().
|
inline |
Definition at line 160 of file HadrontherapyDetectorConstruction.hh.
References detectorLogicalVolume.
|
inline |
Definition at line 78 of file HadrontherapyDetectorConstruction.hh.
References detectorPosition, detectorSizeX, detectorSizeY, detectorSizeZ, phantomSizeX, phantomSizeY, and phantomSizeZ.
|
inline |
Definition at line 72 of file HadrontherapyDetectorConstruction.hh.
References detectorPosition, and phantomPosition.
Referenced by PassiveCarbonBeamLine::Construct(), PassiveProtonBeamLine::Construct(), LaserDrivenBeamLine::Construct(), and UpdateGeometry().
|
static |
Definition at line 110 of file HadrontherapyDetectorConstruction.cc.
References instance.
void HadrontherapyDetectorConstruction::InitializeDetectorROGeometry | ( | HadrontherapyDetectorROGeometry * | RO, |
G4ThreeVector | detectorToWorldPosition | ||
) |
Definition at line 213 of file HadrontherapyDetectorConstruction.cc.
References detectorSizeX, detectorSizeY, detectorSizeZ, HadrontherapyDetectorROGeometry::Initialize(), numberOfVoxelsAlongX, numberOfVoxelsAlongY, and numberOfVoxelsAlongZ.
Referenced by PassiveCarbonBeamLine::Construct(), PassiveProtonBeamLine::Construct(), and LaserDrivenBeamLine::Construct().
|
inline |
Definition at line 99 of file HadrontherapyDetectorConstruction.hh.
References G4cout, and G4endl.
Referenced by ParametersCheck().
|
private |
Definition at line 228 of file HadrontherapyDetectorConstruction.cc.
References detectorSizeX, detectorSizeY, detectorSizeZ, detectorToPhantomPosition, FatalException, G4Exception(), IsInside(), phantomSizeX, phantomSizeY, phantomSizeZ, sizeOfVoxelAlongX, sizeOfVoxelAlongY, and sizeOfVoxelAlongZ.
Referenced by UpdateGeometry().
void HadrontherapyDetectorConstruction::PrintParameters | ( | ) |
Definition at line 426 of file HadrontherapyDetectorConstruction.cc.
References detector, G4BestUnit, G4cout, G4endl, numberOfVoxelsAlongX, numberOfVoxelsAlongY, numberOfVoxelsAlongZ, phantom, phantomPosition, sizeOfVoxelAlongX, sizeOfVoxelAlongY, and sizeOfVoxelAlongZ.
Referenced by UpdateGeometry().
|
inline |
Definition at line 88 of file HadrontherapyDetectorConstruction.hh.
References detectorPosition, detectorSizeX, detectorSizeY, detectorSizeZ, detectorToPhantomPosition, phantomSizeX, phantomSizeY, and phantomSizeZ.
Referenced by HadrontherapyDetectorConstruction(), and UpdateGeometry().
void HadrontherapyDetectorConstruction::SetDetectorSize | ( | G4double | sizeX, |
G4double | sizeY, | ||
G4double | sizeZ | ||
) |
Definition at line 291 of file HadrontherapyDetectorConstruction.cc.
References detectorSizeX, detectorSizeY, detectorSizeZ, SetVoxelSize(), sizeOfVoxelAlongX, sizeOfVoxelAlongY, and sizeOfVoxelAlongZ.
Referenced by HadrontherapyDetectorConstruction().
void HadrontherapyDetectorConstruction::SetDetectorToPhantomPosition | ( | G4ThreeVector | DetectorToPhantomPosition | ) |
Definition at line 314 of file HadrontherapyDetectorConstruction.cc.
References detectorToPhantomPosition.
Referenced by HadrontherapyDetectorConstruction().
Definition at line 255 of file HadrontherapyDetectorConstruction.cc.
References detectorLogicalVolume, detectorMaterial, G4cout, G4endl, pyG4RunManager::GeometryHasBeenModified, G4RunManager::GetRunManager(), G4NistManager::Instance(), phantomLogicalVolume, and phantomMaterial.
Referenced by HadrontherapyDetectorConstruction().
void HadrontherapyDetectorConstruction::SetPhantomPosition | ( | G4ThreeVector | pos | ) |
Definition at line 308 of file HadrontherapyDetectorConstruction.cc.
References phantomPosition, and pos.
Referenced by HadrontherapyDetectorConstruction().
void HadrontherapyDetectorConstruction::SetPhantomSize | ( | G4double | sizeX, |
G4double | sizeY, | ||
G4double | sizeZ | ||
) |
Definition at line 283 of file HadrontherapyDetectorConstruction.cc.
References phantomSizeX, phantomSizeY, and phantomSizeZ.
Referenced by HadrontherapyDetectorConstruction().
void HadrontherapyDetectorConstruction::SetVoxelSize | ( | G4double | sizeX, |
G4double | sizeY, | ||
G4double | sizeZ | ||
) |
Definition at line 300 of file HadrontherapyDetectorConstruction.cc.
References sizeOfVoxelAlongX, sizeOfVoxelAlongY, and sizeOfVoxelAlongZ.
Referenced by SetDetectorSize().
void HadrontherapyDetectorConstruction::UpdateGeometry | ( | ) |
Definition at line 320 of file HadrontherapyDetectorConstruction.cc.
References ConstructDetector(), ConstructPhantom(), detector, detectorMaterial, detectorPhysicalVolume, detectorPosition, detectorSizeX, detectorSizeY, detectorSizeZ, G4lrint(), pyG4RunManager::GeometryHasBeenModified, GetDetectorToWorldPosition(), HadrontherapyAnalysisManager::GetInstance(), HadrontherapyMatrix::GetInstance(), HadrontherapyLet::GetInstance(), G4GeometryManager::GetInstance(), G4VUserDetectorConstruction::GetParallelWorld(), G4RunManager::GetRunManager(), G4RunManager::GetUserDetectorConstruction(), HadrontherapyDetectorROGeometry::Initialize(), Initialize(), let, massOfVoxel, matrix, numberOfVoxelsAlongX, numberOfVoxelsAlongY, numberOfVoxelsAlongZ, ParametersCheck(), phantom, phantomPhysicalVolume, phantomPosition, phantomSizeX, phantomSizeY, phantomSizeZ, PrintParameters(), SetDetectorPosition(), sizeOfVoxelAlongX, sizeOfVoxelAlongY, sizeOfVoxelAlongZ, HadrontherapyDetectorROGeometry::UpdateROGeometry(), and volumeOfVoxel.
Referenced by HadrontherapyDetectorConstruction().
|
private |
Definition at line 198 of file HadrontherapyDetectorConstruction.hh.
Referenced by ConstructDetector().
|
private |
Definition at line 173 of file HadrontherapyDetectorConstruction.hh.
Referenced by ConstructDetector(), PrintParameters(), and UpdateGeometry().
|
private |
Definition at line 174 of file HadrontherapyDetectorConstruction.hh.
Referenced by ConstructDetector(), GetDetectorLogicalVolume(), and SetPhantomMaterial().
|
private |
Definition at line 197 of file HadrontherapyDetectorConstruction.hh.
Referenced by ConstructDetector(), SetPhantomMaterial(), and UpdateGeometry().
|
private |
Definition at line 164 of file HadrontherapyDetectorConstruction.hh.
Referenced by HadrontherapyDetectorConstruction(), and ~HadrontherapyDetectorConstruction().
|
private |
Definition at line 175 of file HadrontherapyDetectorConstruction.hh.
Referenced by ConstructDetector(), and UpdateGeometry().
|
private |
Definition at line 185 of file HadrontherapyDetectorConstruction.hh.
Referenced by ConstructDetector(), GetDetectorToPhantomPosition(), GetDetectorToWorldPosition(), SetDetectorPosition(), and UpdateGeometry().
|
private |
Definition at line 169 of file HadrontherapyDetectorConstruction.hh.
Referenced by ~HadrontherapyDetectorConstruction().
HadrontherapyDetectorSD* HadrontherapyDetectorConstruction::detectorSD |
Definition at line 61 of file HadrontherapyDetectorConstruction.hh.
|
private |
Definition at line 181 of file HadrontherapyDetectorConstruction.hh.
Referenced by ConstructDetector(), GetDetectorToPhantomPosition(), InitializeDetectorROGeometry(), ParametersCheck(), SetDetectorPosition(), SetDetectorSize(), and UpdateGeometry().
|
private |
Definition at line 182 of file HadrontherapyDetectorConstruction.hh.
Referenced by ConstructDetector(), GetDetectorToPhantomPosition(), InitializeDetectorROGeometry(), ParametersCheck(), SetDetectorPosition(), SetDetectorSize(), and UpdateGeometry().
|
private |
Definition at line 183 of file HadrontherapyDetectorConstruction.hh.
Referenced by ConstructDetector(), GetDetectorToPhantomPosition(), InitializeDetectorROGeometry(), ParametersCheck(), SetDetectorPosition(), SetDetectorSize(), and UpdateGeometry().
|
private |
Definition at line 185 of file HadrontherapyDetectorConstruction.hh.
Referenced by ParametersCheck(), SetDetectorPosition(), and SetDetectorToPhantomPosition().
|
staticprivate |
Definition at line 163 of file HadrontherapyDetectorConstruction.hh.
Referenced by GetInstance().
|
private |
Definition at line 171 of file HadrontherapyDetectorConstruction.hh.
Referenced by UpdateGeometry().
|
private |
Definition at line 195 of file HadrontherapyDetectorConstruction.hh.
Referenced by UpdateGeometry().
|
private |
Definition at line 170 of file HadrontherapyDetectorConstruction.hh.
Referenced by UpdateGeometry(), and ~HadrontherapyDetectorConstruction().
G4VPhysicalVolume* HadrontherapyDetectorConstruction::motherPhys |
Definition at line 60 of file HadrontherapyDetectorConstruction.hh.
Referenced by ConstructPhantom().
|
private |
Definition at line 191 of file HadrontherapyDetectorConstruction.hh.
Referenced by InitializeDetectorROGeometry(), PrintParameters(), and UpdateGeometry().
|
private |
Definition at line 192 of file HadrontherapyDetectorConstruction.hh.
Referenced by InitializeDetectorROGeometry(), PrintParameters(), and UpdateGeometry().
|
private |
Definition at line 193 of file HadrontherapyDetectorConstruction.hh.
Referenced by InitializeDetectorROGeometry(), PrintParameters(), and UpdateGeometry().
|
private |
Definition at line 173 of file HadrontherapyDetectorConstruction.hh.
Referenced by ConstructPhantom(), PrintParameters(), and UpdateGeometry().
|
private |
Definition at line 174 of file HadrontherapyDetectorConstruction.hh.
Referenced by ConstructPhantom(), and SetPhantomMaterial().
|
private |
Definition at line 197 of file HadrontherapyDetectorConstruction.hh.
Referenced by ConstructPhantom(), and SetPhantomMaterial().
|
private |
Definition at line 175 of file HadrontherapyDetectorConstruction.hh.
Referenced by ConstructDetector(), ConstructPhantom(), and UpdateGeometry().
|
private |
Definition at line 185 of file HadrontherapyDetectorConstruction.hh.
Referenced by ConstructPhantom(), GetDetectorToWorldPosition(), PrintParameters(), SetPhantomPosition(), and UpdateGeometry().
|
private |
Definition at line 177 of file HadrontherapyDetectorConstruction.hh.
Referenced by ConstructPhantom(), GetDetectorToPhantomPosition(), ParametersCheck(), SetDetectorPosition(), SetPhantomSize(), and UpdateGeometry().
|
private |
Definition at line 178 of file HadrontherapyDetectorConstruction.hh.
Referenced by ConstructPhantom(), GetDetectorToPhantomPosition(), ParametersCheck(), SetDetectorPosition(), SetPhantomSize(), and UpdateGeometry().
|
private |
Definition at line 179 of file HadrontherapyDetectorConstruction.hh.
Referenced by ConstructPhantom(), GetDetectorToPhantomPosition(), ParametersCheck(), SetDetectorPosition(), SetPhantomSize(), and UpdateGeometry().
|
private |
Definition at line 167 of file HadrontherapyDetectorConstruction.hh.
Referenced by ConstructPhantom().
|
private |
Definition at line 187 of file HadrontherapyDetectorConstruction.hh.
Referenced by HadrontherapyDetectorConstruction(), ParametersCheck(), PrintParameters(), SetDetectorSize(), SetVoxelSize(), and UpdateGeometry().
|
private |
Definition at line 188 of file HadrontherapyDetectorConstruction.hh.
Referenced by HadrontherapyDetectorConstruction(), ParametersCheck(), PrintParameters(), SetDetectorSize(), SetVoxelSize(), and UpdateGeometry().
|
private |
Definition at line 189 of file HadrontherapyDetectorConstruction.hh.
Referenced by HadrontherapyDetectorConstruction(), ParametersCheck(), PrintParameters(), SetDetectorSize(), SetVoxelSize(), and UpdateGeometry().
|
private |
Definition at line 166 of file HadrontherapyDetectorConstruction.hh.
Referenced by ConstructDetector().
|
private |
Definition at line 195 of file HadrontherapyDetectorConstruction.hh.
Referenced by UpdateGeometry().