34#ifndef G4GDMLWRITESTRUCTURE_HH
35#define G4GDMLWRITESTRUCTURE_HH 1
76 void AssemblyWrite(xercesc::DOMElement*,
const int assemblyID);
94 std::map<const G4LogicalVolume*, G4GDMLAuxListType>
auxmap;
98 std::vector<const G4OpticalSurface*> opt_vec;
108 static G4int levelNo;
111 std::map<const G4VPhysicalVolume*, G4int> assemblyVolMap;
113 std::map<const G4VPhysicalVolume*, G4int> imprintsMap;
115 std::vector<G4int> addedAssemblies;
G4PVDivision(const G4String &pName, G4LogicalVolume *pLogical, G4LogicalVolume *pMother, const EAxis pAxis, const G4int nReplicas, const G4double width, const G4double offset)
G4PVDivision represents many touchable detector elements differing only in their positioning....
G4AssemblyTriplet is a helper class for placing logical or assembly volumes inside a generic containe...
virtual ~G4GDMLWriteStructure()
const G4LogicalBorderSurface * GetBorderSurface(const G4VPhysicalVolume *const)
void SetEnergyCutsExport(G4bool)
void BorderSurfaceCache(const G4LogicalBorderSurface *const)
std::vector< xercesc::DOMElement * > borderElementVec
std::map< const G4LogicalVolume *, G4GDMLAuxListType > auxmap
void AssemblyWrite(xercesc::DOMElement *, const int assemblyID)
std::vector< xercesc::DOMElement * > skinElementVec
void SkinSurfaceCache(const G4LogicalSkinSurface *const)
const G4LogicalSkinSurface * GetSkinSurface(const G4LogicalVolume *const)
void PhysvolWrite(xercesc::DOMElement *, const G4VPhysicalVolume *const topVol, const G4Transform3D &transform, const G4String &moduleName)
void ExportEnergyCuts(const G4LogicalVolume *const)
virtual void StructureWrite(xercesc::DOMElement *)
G4Transform3D TraverseVolumeTree(const G4LogicalVolume *const topVol, const G4int depth)
xercesc::DOMElement * structureElement
void ExportSD(const G4LogicalVolume *const)
void DivisionvolWrite(xercesc::DOMElement *, const G4PVDivision *const)
G4bool FindOpticalSurface(const G4SurfaceProperty *)
void AddVolumeAuxiliary(G4GDMLAuxStructType myaux, const G4LogicalVolume *const)
G4int GetMaxExportLevel() const
void SetMaxExportLevel(G4int)
void ReplicavolWrite(xercesc::DOMElement *, const G4VPhysicalVolume *const)
G4LogicalBorderSurface is a Logical Surface class for surfaces defined by the boundary of two physica...
G4LogicalSkinSurface is a Logical Surface class for the surface surrounding a single logical volume.
G4LogicalVolume represents a leaf node or unpositioned subtree in the geometry hierarchy....
G4ReflectionFactory provides functions for volumes placements with a general transfomation that can c...
G4VPhysicalVolume is an abstract base class for the representation of a positioned volume....