Geant4  10.01.p03
DicomPartialDetectorConstruction Class Reference

Construct a DICOM Geant4 geometry produced from the intersetion of a DICOM file and a volume. More...

#include <DicomPartialDetectorConstruction.hh>

+ Inheritance diagram for DicomPartialDetectorConstruction:
+ Collaboration diagram for DicomPartialDetectorConstruction:

Public Member Functions

 DicomPartialDetectorConstruction ()
 
 ~DicomPartialDetectorConstruction ()
 
virtual G4VPhysicalVolumeConstruct ()
 
- Public Member Functions inherited from DicomDetectorConstruction
 DicomDetectorConstruction ()
 
 ~DicomDetectorConstruction ()
 
- Public Member Functions inherited from G4VUserDetectorConstruction
 G4VUserDetectorConstruction ()
 
virtual ~G4VUserDetectorConstruction ()
 
virtual void CloneSD ()
 
virtual void CloneF ()
 
void RegisterParallelWorld (G4VUserParallelWorld *)
 
G4int ConstructParallelGeometries ()
 
void ConstructParallelSD ()
 
G4int GetNumberOfParallelWorld () const
 
G4VUserParallelWorldGetParallelWorld (G4int i) const
 

Private Member Functions

virtual void ReadPhantomData ()
 
void ReadPhantomDataFile (const G4String &fname)
 
void ConstructPhantomContainer ()
 
virtual void ConstructPhantom ()
 
void ReadVoxelDensitiesPartial (std::ifstream &fin, std::map< G4int, std::map< G4int, G4int > > ifxmin, std::map< G4int, std::map< G4int, G4int > > ifxmax)
 
std::pair< G4double, G4doubleReadVoxelDim (G4int nVoxel, std::ifstream &fin)
 
void ReadVoxelDensitiesPartial (std::ifstream &fin)
 
void SetScorer (G4LogicalVolume *voxel_logic)
 
G4MaterialBuildMaterialChangingDensity (const G4Material *origMate, float density, G4String mateName)
 

Private Attributes

G4PartialPhantomParameterisationfPartialPhantomParam
 
std::multimap< G4int, G4intfFilledIDs
 
std::map< G4int, std::map
< G4int, G4int > > 
fFilledMins
 
std::map< G4int, std::map
< G4int, G4int > > 
fFilledMaxs
 
G4int fNVoxels
 
G4double fDimX
 
G4double fDimY
 
G4double fDimZ
 
G4double fOffsetX
 
G4double fOffsetY
 
G4double fOffsetZ
 
size_t * fMateIDs
 
std::vector< G4Material * > fPhantomMaterials
 

Additional Inherited Members

- Protected Member Functions inherited from DicomDetectorConstruction
void InitialisationOfMaterials ()
 
void ReadPhantomData ()
 
void ReadPhantomDataFile (const G4String &fname)
 
void MergeZSliceHeaders ()
 
G4MaterialBuildMaterialWithChangingDensity (const G4Material *origMate, float density, G4String newMateName)
 
void ConstructPhantomContainer ()
 
void SetScorer (G4LogicalVolume *voxel_logic)
 
virtual void ConstructSDandField ()
 
- Protected Member Functions inherited from G4VUserDetectorConstruction
void SetSensitiveDetector (const G4String &logVolName, G4VSensitiveDetector *aSD, G4bool multi=false)
 
void SetSensitiveDetector (G4LogicalVolume *logVol, G4VSensitiveDetector *aSD)
 
- Protected Attributes inherited from DicomDetectorConstruction
G4MaterialfAir
 
G4BoxfWorld_solid
 
G4LogicalVolumefWorld_logic
 
G4VPhysicalVolumefWorld_phys
 
G4BoxfContainer_solid
 
G4LogicalVolumefContainer_logic
 
G4VPhysicalVolumefContainer_phys
 
G4int fNoFiles
 
std::vector< G4Material * > fOriginalMaterials
 
std::vector< G4Material * > fMaterials
 
size_t * fMateIDs
 
std::map< G4int, G4doublefDensityDiffs
 
std::vector
< DicomPhantomZSliceHeader * > 
fZSliceHeaders
 
DicomPhantomZSliceHeaderfZSliceHeaderMerged
 
G4int fNVoxelX
 
G4int fNVoxelY
 
G4int fNVoxelZ
 
G4double fVoxelHalfDimX
 
G4double fVoxelHalfDimY
 
G4double fVoxelHalfDimZ
 
DicomPhantomZSliceMergedmergedSlices
 
std::set< G4LogicalVolume * > scorers
 
G4bool fConstructed
 

Detailed Description

Construct a DICOM Geant4 geometry produced from the intersetion of a DICOM file and a volume.

Definition at line 54 of file DicomPartialDetectorConstruction.hh.

Constructor & Destructor Documentation

DicomPartialDetectorConstruction::DicomPartialDetectorConstruction ( )

Definition at line 59 of file DicomPartialDetectorConstruction.cc.

DicomPartialDetectorConstruction::~DicomPartialDetectorConstruction ( )

Definition at line 74 of file DicomPartialDetectorConstruction.cc.

Member Function Documentation

G4Material* DicomPartialDetectorConstruction::BuildMaterialChangingDensity ( const G4Material origMate,
float  density,
G4String  mateName 
)
private
G4VPhysicalVolume * DicomPartialDetectorConstruction::Construct ( void  )
virtual

Reimplemented from DicomDetectorConstruction.

Definition at line 79 of file DicomPartialDetectorConstruction.cc.

References ConstructPhantom(), ConstructPhantomContainer(), DicomDetectorConstruction::fAir, DicomDetectorConstruction::fWorld_logic, DicomDetectorConstruction::InitialisationOfMaterials(), m, and ReadPhantomData().

+ Here is the call graph for this function:

void DicomPartialDetectorConstruction::ConstructPhantomContainer ( )
private

Definition at line 402 of file DicomPartialDetectorConstruction.cc.

References deg, DicomDetectorConstruction::fAir, DicomDetectorConstruction::fContainer_logic, DicomDetectorConstruction::fContainer_phys, and DicomDetectorConstruction::fWorld_logic.

Referenced by Construct().

+ Here is the caller graph for this function:

void DicomPartialDetectorConstruction::ReadPhantomData ( )
privatevirtual

Definition at line 115 of file DicomPartialDetectorConstruction.cc.

References FatalErrorInArgument, G4Exception(), and ReadPhantomDataFile().

Referenced by Construct().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void DicomPartialDetectorConstruction::ReadPhantomDataFile ( const G4String fname)
private

Definition at line 150 of file DicomPartialDetectorConstruction.cc.

References G4UIcommand::ConvertToString(), FatalErrorInArgument, FatalException, fDimX, fDimY, fDimZ, fFilledIDs, fFilledMaxs, fFilledMins, fMateIDs, fNVoxels, DicomDetectorConstruction::fNVoxelX, DicomDetectorConstruction::fNVoxelY, DicomDetectorConstruction::fNVoxelZ, fOffsetX, fOffsetY, fOffsetZ, G4cout, G4endl, G4Exception(), iz, and ReadVoxelDensitiesPartial().

Referenced by ReadPhantomData().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void DicomPartialDetectorConstruction::ReadVoxelDensitiesPartial ( std::ifstream &  fin,
std::map< G4int, std::map< G4int, G4int > >  ifxmin,
std::map< G4int, std::map< G4int, G4int > >  ifxmax 
)
private

Referenced by ReadPhantomDataFile().

+ Here is the caller graph for this function:

std::pair<G4double,G4double> DicomPartialDetectorConstruction::ReadVoxelDim ( G4int  nVoxel,
std::ifstream &  fin 
)
private
void DicomPartialDetectorConstruction::SetScorer ( G4LogicalVolume voxel_logic)
private

Member Data Documentation

G4double DicomPartialDetectorConstruction::fDimX
private

Definition at line 89 of file DicomPartialDetectorConstruction.hh.

Referenced by ConstructPhantom(), and ReadPhantomDataFile().

G4double DicomPartialDetectorConstruction::fDimY
private

Definition at line 89 of file DicomPartialDetectorConstruction.hh.

Referenced by ConstructPhantom(), and ReadPhantomDataFile().

G4double DicomPartialDetectorConstruction::fDimZ
private

Definition at line 89 of file DicomPartialDetectorConstruction.hh.

Referenced by ConstructPhantom(), and ReadPhantomDataFile().

std::multimap<G4int,G4int> DicomPartialDetectorConstruction::fFilledIDs
private

Definition at line 85 of file DicomPartialDetectorConstruction.hh.

Referenced by ConstructPhantom(), and ReadPhantomDataFile().

std::map< G4int, std::map< G4int, G4int > > DicomPartialDetectorConstruction::fFilledMaxs
private
std::map< G4int, std::map< G4int, G4int > > DicomPartialDetectorConstruction::fFilledMins
private
size_t* DicomPartialDetectorConstruction::fMateIDs
private
G4int DicomPartialDetectorConstruction::fNVoxels
private

Definition at line 88 of file DicomPartialDetectorConstruction.hh.

Referenced by ConstructPhantom(), and ReadPhantomDataFile().

G4double DicomPartialDetectorConstruction::fOffsetX
private

Definition at line 90 of file DicomPartialDetectorConstruction.hh.

Referenced by ReadPhantomDataFile().

G4double DicomPartialDetectorConstruction::fOffsetY
private

Definition at line 90 of file DicomPartialDetectorConstruction.hh.

Referenced by ReadPhantomDataFile().

G4double DicomPartialDetectorConstruction::fOffsetZ
private

Definition at line 90 of file DicomPartialDetectorConstruction.hh.

Referenced by ReadPhantomDataFile().

G4PartialPhantomParameterisation* DicomPartialDetectorConstruction::fPartialPhantomParam
private

Definition at line 83 of file DicomPartialDetectorConstruction.hh.

Referenced by ConstructPhantom().

std::vector<G4Material*> DicomPartialDetectorConstruction::fPhantomMaterials
private

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