Geant4  10.04.p03
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
G4tgbGeometryDumper Class Reference

Public Member Functions

 ~G4tgbGeometryDumper ()
 
void DumpGeometry (const G4String &fname)
 
G4VPhysicalVolumeGetTopPhysVol ()
 
void DumpPhysVol (G4VPhysicalVolume *pv)
 
void DumpPVPlacement (G4VPhysicalVolume *pv, const G4String &lvName, G4int copyNo=-999)
 
void DumpPVParameterised (G4PVParameterised *pv)
 
void DumpPVReplica (G4PVReplica *pv, const G4String &lvName)
 
G4String DumpLogVol (G4LogicalVolume *lv, G4String extraName="", G4VSolid *solid=0, G4Material *mate=0)
 
G4String DumpMaterial (G4Material *mat)
 
void DumpElement (G4Element *ele)
 
void DumpIsotope (G4Isotope *ele)
 
G4String DumpSolid (G4VSolid *solid, const G4String &extraName="")
 
void DumpBooleanVolume (const G4String &solidType, G4VSolid *so)
 
void DumpSolidParams (G4VSolid *so)
 
std::vector< G4doubleGetSolidParams (const G4VSolid *so)
 
void DumpPolySections (G4int zPlanes, G4double *z, G4double *rmin, G4double *rmax)
 
G4String DumpRotationMatrix (G4RotationMatrix *rotm)
 

Static Public Member Functions

static G4tgbGeometryDumperGetInstance ()
 

Private Member Functions

 G4tgbGeometryDumper ()
 
std::vector< G4VPhysicalVolume * > GetPVChildren (G4LogicalVolume *lv)
 
G4String GetTGSolidType (const G4String &solidtype)
 
G4double MatDeterminant (G4RotationMatrix *ro)
 
G4double approxTo0 (G4double val)
 
G4String AddQuotes (const G4String &str)
 
G4String GetIsotopeName (G4Isotope *)
 
template<class TYP >
G4String GetObjectName (TYP *obj, std::map< G4String, TYP * > objectsDumped)
 
G4bool CheckIfLogVolExists (const G4String &name, G4LogicalVolume *pt)
 
G4bool CheckIfPhysVolExists (const G4String &name, G4VPhysicalVolume *)
 
G4String LookForExistingRotation (const G4RotationMatrix *rotm)
 
G4String SupressRefl (G4String name)
 
G4String SubstituteRefl (G4String name)
 
G4bool Same2G4Isotopes (G4Isotope *ele1, G4Isotope *ele2)
 
const G4StringFindSolidName (G4VSolid *solid)
 

Private Attributes

std::ofstream * theFile
 
std::map< G4String, G4Material * > theMaterials
 
std::map< G4String, G4Element * > theElements
 
std::map< G4String, G4Isotope * > theIsotopes
 
std::map< G4String, G4VSolid * > theSolids
 
std::map< G4String,
G4LogicalVolume * > 
theLogVols
 
std::map< G4String,
G4VPhysicalVolume * > 
thePhysVols
 
std::map< G4String,
G4RotationMatrix * > 
theRotMats
 
G4int theRotationNumber
 

Static Private Attributes

static G4ThreadLocal
G4tgbGeometryDumper
theInstance
 

Constructor & Destructor Documentation

G4tgbGeometryDumper ( )
private

Member Function Documentation

static G4tgbGeometryDumper* GetInstance ( )
static
void DumpGeometry ( const G4String fname)
G4VPhysicalVolume* GetTopPhysVol ( )
void DumpPhysVol ( G4VPhysicalVolume pv)
void DumpPVPlacement ( G4VPhysicalVolume pv,
const G4String lvName,
G4int  copyNo = -999 
)
void DumpPVParameterised ( G4PVParameterised pv)
void DumpPVReplica ( G4PVReplica pv,
const G4String lvName 
)
G4String DumpLogVol ( G4LogicalVolume lv,
G4String  extraName = "",
G4VSolid solid = 0,
G4Material mate = 0 
)
G4String DumpMaterial ( G4Material mat)
void DumpElement ( G4Element ele)
void DumpIsotope ( G4Isotope ele)
G4String DumpSolid ( G4VSolid solid,
const G4String extraName = "" 
)
void DumpBooleanVolume ( const G4String solidType,
G4VSolid so 
)
void DumpSolidParams ( G4VSolid so)
std::vector<G4double> GetSolidParams ( const G4VSolid so)
void DumpPolySections ( G4int  zPlanes,
G4double z,
G4double rmin,
G4double rmax 
)
G4String DumpRotationMatrix ( G4RotationMatrix rotm)
std::vector<G4VPhysicalVolume*> GetPVChildren ( G4LogicalVolume lv)
private
G4String GetTGSolidType ( const G4String solidtype)
private
G4double MatDeterminant ( G4RotationMatrix ro)
private
G4double approxTo0 ( G4double  val)
private
G4String AddQuotes ( const G4String str)
private
G4String GetIsotopeName ( G4Isotope )
private
G4String GetObjectName ( TYP *  obj,
std::map< G4String, TYP * >  objectsDumped 
)
private
G4bool CheckIfLogVolExists ( const G4String name,
G4LogicalVolume pt 
)
private
G4bool CheckIfPhysVolExists ( const G4String name,
G4VPhysicalVolume  
)
private
G4String LookForExistingRotation ( const G4RotationMatrix rotm)
private
G4String SupressRefl ( G4String  name)
private
G4String SubstituteRefl ( G4String  name)
private
G4bool Same2G4Isotopes ( G4Isotope ele1,
G4Isotope ele2 
)
private
const G4String& FindSolidName ( G4VSolid solid)
private

Member Data Documentation

G4ThreadLocal G4tgbGeometryDumper* theInstance
staticprivate
std::ofstream* theFile
private
std::map<G4String,G4Material*> theMaterials
private
std::map<G4String,G4Element*> theElements
private
std::map<G4String,G4Isotope*> theIsotopes
private
std::map<G4String,G4VSolid*> theSolids
private
std::map<G4String,G4LogicalVolume*> theLogVols
private
std::map<G4String,G4VPhysicalVolume*> thePhysVols
private
std::map<G4String,G4RotationMatrix*> theRotMats
private
G4int theRotationNumber
private