35 #ifndef HadrontherapyDetectorConstruction_H 
   36 #define HadrontherapyDetectorConstruction_H 1 
  113             if (detectorX > phantomX) 
 
  115                     G4cout << 
"Error: Detector X dimension must be smaller or equal to the corrispondent of the phantom" << 
G4endl;
 
  118             if ( (phantomX - detectorX) < pos.getX()) 
 
  120                     G4cout << 
"Error: X dimension doesn't fit with detector to phantom relative position" << 
G4endl;
 
  126             if (detectorY > phantomY) 
 
  128                     G4cout << 
"Error: Detector Y dimension must be smaller or equal to the corrispondent of the phantom" << 
G4endl;
 
  131             if ( (phantomY - detectorY) < pos.getY()) 
 
  133                    G4cout << 
"Error: Y dimension doesn't fit with detector to phantom relative position" << 
G4endl;
 
  139             if (detectorZ > phantomZ) 
 
  141                     G4cout << 
"Error: Detector Z dimension must be smaller or equal to the corrispondent of the phantom" << 
G4endl;
 
  144             if ( (phantomZ - detectorZ) < pos.getZ()) 
 
  146                    G4cout << 
"Error: Z dimension doesn't fit with detector to phantom relative position" << 
G4endl;
 
G4double sizeOfVoxelAlongZ
 
void SetPhantomSize(G4double sizeX, G4double sizeY, G4double sizeZ)
 
G4VPhysicalVolume * motherPhys
 
static HadrontherapyDetectorConstruction * instance
 
HadrontherapyDetectorMessenger * detectorMessenger
 
CLHEP::Hep3Vector G4ThreeVector
 
G4int numberOfVoxelsAlongX
 
HadrontherapyMatrix * matrix
 
G4double sizeOfVoxelAlongX
 
HadrontherapyDetectorConstruction(G4VPhysicalVolume *)
 
static HadrontherapyDetectorConstruction * GetInstance()
 
G4LogicalVolume * GetDetectorLogicalVolume()
 
G4int numberOfVoxelsAlongZ
 
void SetDetectorSize(G4double sizeX, G4double sizeY, G4double sizeZ)
 
G4GLOB_DLL std::ostream G4cout
 
G4LogicalVolume * detectorLogicalVolume
 
G4Material * detectorMaterial
 
void SetPhantomPosition(G4ThreeVector)
 
G4double sizeOfVoxelAlongY
 
G4ThreeVector detectorPosition
 
G4ThreeVector detectorToPhantomPosition
 
void SetDetectorToPhantomPosition(G4ThreeVector DetectorToPhantomPosition)
 
HadrontherapyDetectorSD * detectorSD
 
bool IsInside(G4double detectorX, G4double detectorY, G4double detectorZ, G4double phantomX, G4double phantomY, G4double phantomZ, G4ThreeVector pos)
 
G4VisAttributes * skyBlue
 
G4VPhysicalVolume * phantomPhysicalVolume
 
HadrontherapyDetectorROGeometry * detectorROGeometry
 
G4bool SetPhantomMaterial(G4String material)
 
G4VPhysicalVolume * detectorPhysicalVolume
 
G4Material * phantomMaterial
 
G4LogicalVolume * phantomLogicalVolume
 
void SetDetectorPosition()
 
G4ThreeVector GetDetectorToPhantomPosition()
 
void InitializeDetectorROGeometry(HadrontherapyDetectorROGeometry *, G4ThreeVector detectorToWorldPosition)
 
G4ThreeVector phantomPosition
 
void SetVoxelSize(G4double sizeX, G4double sizeY, G4double sizeZ)
 
G4ThreeVector GetDetectorToWorldPosition()
 
G4int numberOfVoxelsAlongY
 
~HadrontherapyDetectorConstruction()
 
static const G4double pos