67 : detectorType(0),mercuryGranularity(false), DeviceSizeX(0),
68 DeviceSizeY(0),DeviceThickness(0),
69 solidWorld(0),logicWorld(0),physiWorld(0),
70 solidHPGe(0),logicHPGe(0),physiHPGe(0),
71 solidScreen(0),logicScreen(0),physiScreen(0),
72 solidMercury (0),logicMercury(0),physiMercury (0),
73 solidOhmicPos(0),logicOhmicPos(0), physiOhmicPos(0),
74 solidOhmicNeg(0),logicOhmicNeg(0), physiOhmicNeg(0),
75 solidPixel(0),logicPixel(0), physiPixel(0),
76 screenMaterial(0),OhmicPosMaterial(0), OhmicNegMaterial(0),
77 pixelMaterial(0),mercuryMaterial(0),
78 defaultMaterial(0),HPGeSD(0)
122 G4String defaultDetectorType =
"sili";
129 G4cout <<
"XrayFluoMercuryDetectorConstruction created" <<
G4endl;
153 else if (type==
"hpge")
160 execp << type +
"detector type unknown";
161 G4Exception(
"XrayFluoMercuryDetectorConstruction::SetDetectorType()",
"example-xray_fluorescence05",
180 G4cout <<
"XrayFluoMercuryDetectorConstruction deleted" <<
G4endl;
496 G4cout <<
"-----------------------------------------------------------------------" 498 <<
"The mercury is a sphere whose diamter is: " 507 <<
"-------------------------------------------------------------------------" 532 G4cout <<
"New Mercury Material: " << newMaterial <<
G4endl;
void Put(const value_type &val) const
void PrintApparateParameters()
G4VPhysicalVolume * physiMercury
G4double OhmicPosThickness
XrayFluoNistMaterials * materials
std::ostringstream G4ExceptionDescription
CLHEP::Hep3Vector G4ThreeVector
HepRotation & rotateX(double delta)
XrayFluoVDetectorType * detectorType
G4double mercurySunDistance
void SetVisibility(G4bool)
XrayFluoVDetectorType * GetDetectorType() const
G4Material * GetMaterial() const
G4VPhysicalVolume * physiPixel
G4Material * OhmicNegMaterial
G4bool mercuryGranularity
void SetForceSolid(G4bool)
G4LogicalVolume * logicHPGe
static XrayFluoMercuryDetectorConstruction * GetInstance()
G4VPhysicalVolume * physiWorld
static XrayFluoNistMaterials * GetInstance()
G4VPhysicalVolume * physiHPGe
G4VPhysicalVolume * physiOhmicPos
G4Material * OhmicPosMaterial
static XrayFluoSiLiDetectorType * GetInstance()
G4Cache< XrayFluoSD * > HPGeSD
void ConstructSDandField()
G4LogicalVolume * logicOhmicNeg
G4GLOB_DLL std::ostream G4cout
G4Material * pixelMaterial
G4VPhysicalVolume * physiScreen
void SetMercuryMaterial(G4String newMaterial)
G4LogicalVolume * logicMercury
G4Material * mercuryMaterial
static const double twopi
G4Material * defaultMaterial
G4VPhysicalVolume * ConstructApparate()
G4VPhysicalVolume * physiOptic
void ComputeApparateParameters()
static G4GeometryManager * GetInstance()
G4Material * GetMaterial(G4String)
G4LogicalVolume * logicWorld
void SetSensitiveDetector(const G4String &logVolName, G4VSensitiveDetector *aSD, G4bool multi=false)
void ReinitializeGeometry(G4bool destroyFirst=false, G4bool prop=true)
void G4Exception(const char *originOfException, const char *exceptionCode, G4ExceptionSeverity severity, const char *comments)
G4VPhysicalVolume * Construct()
static G4RunManager * GetRunManager()
XrayFluoMercuryDetectorMessenger * detectorMessenger
G4RotationMatrix zRotPhiHPGe
G4Material * screenMaterial
G4LogicalVolume * logicPixel
G4LogicalVolume * logicGrain
void DefineDefaultMaterials()
static const G4VisAttributes Invisible
static XrayFluoHPGeDetectorType * GetInstance()
G4LogicalVolume * logicOhmicPos
~XrayFluoMercuryDetectorConstruction()
G4LogicalVolume * logicScreen
void OpenGeometry(G4VPhysicalVolume *vol=0)
G4LogicalVolume * logicOptic
XrayFluoMercuryDetectorConstruction()
G4double OhmicNegThickness
const G4String & GetName() const
void SetMaterial(G4Material *pMaterial)
static XrayFluoMercuryDetectorConstruction * instance
void SetDetectorType(G4String type)
G4VPhysicalVolume * physiOhmicNeg
void SetVisAttributes(const G4VisAttributes *pVA)