34 #ifndef G4GDMLPARSER_HH
35 #define G4GDMLPARSER_HH 1
38 #include "G4GDMLWriteStructure.hh"
39 #include "G4STRead.hh"
40 #include "G4GDMLMessenger.hh"
41 #include "G4GDMLEvaluator.hh"
43 #include "G4TransportationManager.hh"
44 #include "G4Navigator.hh"
45 #include "G4Threading.hh"
47 #define G4GDML_DEFAULT_SCHEMALOCATION \
48 G4String("http://service-spi.web.cern.ch/service-spi/app/releases/GDML/" \
62 inline void Read(
const G4String&
filename, G4bool Validate =
true);
67 inline void ReadModule(
const G4String& filename, G4bool Validate =
true);
72 inline void Write(
const G4String& filename,
73 const G4VPhysicalVolume* pvol = 0,
74 G4bool storeReferences =
true,
83 inline void Write(
const G4String& filename,
const G4LogicalVolume* lvol,
84 G4bool storeReferences =
true,
94 inline G4LogicalVolume*
ParseST(
const G4String&
name, G4Material* medium,
104 inline G4bool
IsValid(
const G4String& name)
const;
105 inline G4double
GetConstant(
const G4String& name)
const;
106 inline G4double
GetVariable(
const G4String& name)
const;
107 inline G4double
GetQuantity(
const G4String& name)
const;
108 inline G4ThreeVector
GetPosition(
const G4String& name)
const;
109 inline G4ThreeVector
GetRotation(
const G4String& name)
const;
110 inline G4ThreeVector
GetScale(
const G4String& name)
const;
112 inline G4LogicalVolume*
GetVolume(
const G4String& name)
const;
113 inline G4VPhysicalVolume*
GetPhysVolume(
const G4String& name)
const;
114 inline G4VPhysicalVolume*
116 inline G4GDMLAuxListType
119 inline const G4GDMLAuxListType*
GetAuxList()
const;
136 inline void AddModule(
const G4VPhysicalVolume*
const physvol);
137 inline void AddModule(
const G4int depth);
140 const G4LogicalVolume*
const lvol);
158 #include "G4GDMLParser.icc"