ECCE @ EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
PHG4GDMLWriteDefine Class Reference

#include <coresoftware/blob/master/simulation/g4simulation/g4gdml/PHG4GDMLWriteDefine.hh>

+ Inheritance diagram for PHG4GDMLWriteDefine:
+ Collaboration diagram for PHG4GDMLWriteDefine:

Public Member Functions

G4ThreeVector GetAngles (const G4RotationMatrix &)
 
void ScaleWrite (xercesc::DOMElement *element, const G4String &name, const G4ThreeVector &scl)
 
void RotationWrite (xercesc::DOMElement *element, const G4String &name, const G4ThreeVector &rot)
 
void PositionWrite (xercesc::DOMElement *element, const G4String &name, const G4ThreeVector &pos)
 
void FirstrotationWrite (xercesc::DOMElement *element, const G4String &name, const G4ThreeVector &rot)
 
void FirstpositionWrite (xercesc::DOMElement *element, const G4String &name, const G4ThreeVector &pos)
 
void AddPosition (const G4String &name, const G4ThreeVector &pos)
 
virtual void DefineWrite (xercesc::DOMElement *)
 
- Public Member Functions inherited from PHG4GDMLWrite
G4Transform3D Write (const G4String &filename, const G4LogicalVolume *const topLog, const G4String &schemaPath, const G4int depth, G4bool storeReferences=true)
 
void AddModule (const G4VPhysicalVolume *const topVol)
 
void AddModule (const G4int depth)
 
void AddAuxiliary (PHG4GDMLAuxStructType myaux)
 
virtual void MaterialsWrite (xercesc::DOMElement *)=0
 
virtual void SolidsWrite (xercesc::DOMElement *)=0
 
virtual void StructureWrite (xercesc::DOMElement *)=0
 
virtual G4Transform3D TraverseVolumeTree (const G4LogicalVolume *const, const G4int)=0
 
virtual void SurfacesWrite ()=0
 
virtual void SetupWrite (xercesc::DOMElement *, const G4LogicalVolume *const)=0
 
virtual void ExtensionWrite (xercesc::DOMElement *)
 
virtual void UserinfoWrite (xercesc::DOMElement *)
 
virtual void AddExtension (xercesc::DOMElement *, const G4LogicalVolume *const)
 
G4String GenerateName (const G4String &, const void *const)
 

Protected Member Functions

 PHG4GDMLWriteDefine ()
 
virtual ~PHG4GDMLWriteDefine ()
 
void Scale_vectorWrite (xercesc::DOMElement *, const G4String &, const G4String &, const G4ThreeVector &)
 
void Rotation_vectorWrite (xercesc::DOMElement *, const G4String &, const G4String &, const G4ThreeVector &)
 
void Position_vectorWrite (xercesc::DOMElement *, const G4String &, const G4String &, const G4ThreeVector &)
 
- Protected Member Functions inherited from PHG4GDMLWrite
 PHG4GDMLWrite ()
 
virtual ~PHG4GDMLWrite ()
 
VolumeMapTypeVolumeMap ()
 
xercesc::DOMAttr * NewAttribute (const G4String &, const G4String &)
 
xercesc::DOMAttr * NewAttribute (const G4String &, const G4double &)
 
xercesc::DOMElement * NewElement (const G4String &)
 
G4String Modularize (const G4VPhysicalVolume *const topvol, const G4int depth)
 
void AddAuxInfo (PHG4GDMLAuxListType *auxInfoList, xercesc::DOMElement *element)
 
G4bool FileExists (const G4String &) const
 
PhysVolumeMapTypePvolumeMap ()
 
DepthMapTypeDepthMap ()
 

Protected Attributes

xercesc::DOMElement * defineElement
 
- Protected Attributes inherited from PHG4GDMLWrite
G4String SchemaLocation
 
xercesc::DOMDocument * doc
 
xercesc::DOMElement * extElement
 
xercesc::DOMElement * userinfoElement
 
XMLCh tempStr [10000]
 
PHG4GDMLAuxListType auxList
 

Static Protected Attributes

static const G4double kRelativePrecision = DBL_EPSILON
 
static const G4double kAngularPrecision = DBL_EPSILON
 
static const G4double kLinearPrecision = DBL_EPSILON
 
- Static Protected Attributes inherited from PHG4GDMLWrite
static G4bool addPointerToName = true
 

Additional Inherited Members

- Static Public Member Functions inherited from PHG4GDMLWrite
static void SetAddPointerToName (G4bool)
 

Detailed Description

Definition at line 49 of file PHG4GDMLWriteDefine.hh.

View newest version in sPHENIX GitHub at line 49 of file PHG4GDMLWriteDefine.hh

Constructor & Destructor Documentation

PHG4GDMLWriteDefine::PHG4GDMLWriteDefine ( )
protected

Definition at line 42 of file PHG4GDMLWriteDefine.cc.

View newest version in sPHENIX GitHub at line 42 of file PHG4GDMLWriteDefine.cc

PHG4GDMLWriteDefine::~PHG4GDMLWriteDefine ( )
protectedvirtual

Definition at line 47 of file PHG4GDMLWriteDefine.cc.

View newest version in sPHENIX GitHub at line 47 of file PHG4GDMLWriteDefine.cc

Member Function Documentation

void PHG4GDMLWriteDefine::AddPosition ( const G4String name,
const G4ThreeVector pos 
)
inline

Definition at line 70 of file PHG4GDMLWriteDefine.hh.

View newest version in sPHENIX GitHub at line 70 of file PHG4GDMLWriteDefine.hh

References defineElement, and Position_vectorWrite().

Referenced by PHG4GDMLWriteSolids::TessellatedWrite(), and PHG4GDMLWriteSolids::TetWrite().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void PHG4GDMLWriteDefine::DefineWrite ( xercesc::DOMElement *  element)
virtual

Implements PHG4GDMLWrite.

Definition at line 131 of file PHG4GDMLWriteDefine.cc.

View newest version in sPHENIX GitHub at line 131 of file PHG4GDMLWriteDefine.cc

References defineElement, and PHG4GDMLWrite::NewElement().

+ Here is the call graph for this function:

void PHG4GDMLWriteDefine::FirstpositionWrite ( xercesc::DOMElement *  element,
const G4String name,
const G4ThreeVector pos 
)
inline

Definition at line 67 of file PHG4GDMLWriteDefine.hh.

View newest version in sPHENIX GitHub at line 67 of file PHG4GDMLWriteDefine.hh

References Position_vectorWrite().

Referenced by PHG4GDMLWriteSolids::BooleanWrite().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void PHG4GDMLWriteDefine::FirstrotationWrite ( xercesc::DOMElement *  element,
const G4String name,
const G4ThreeVector rot 
)
inline

Definition at line 64 of file PHG4GDMLWriteDefine.hh.

View newest version in sPHENIX GitHub at line 64 of file PHG4GDMLWriteDefine.hh

References Rotation_vectorWrite().

Referenced by PHG4GDMLWriteSolids::BooleanWrite().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4ThreeVector PHG4GDMLWriteDefine::GetAngles ( const G4RotationMatrix mtx)

Definition at line 51 of file PHG4GDMLWriteDefine.cc.

View newest version in sPHENIX GitHub at line 51 of file PHG4GDMLWriteDefine.cc

References E, mat, CLHEP::HepRotation::rectify(), x, CLHEP::HepRotation::xx(), y, CLHEP::HepRotation::yx(), CLHEP::HepRotation::yy(), CLHEP::HepRotation::yz(), z, CLHEP::HepRotation::zx(), CLHEP::HepRotation::zy(), and CLHEP::HepRotation::zz().

Referenced by PHG4GDMLWriteSolids::BooleanWrite(), PHG4GDMLWriteParamvol::ParametersWrite(), and PHG4GDMLWriteStructure::PhysvolWrite().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void PHG4GDMLWriteDefine::Position_vectorWrite ( xercesc::DOMElement *  element,
const G4String tag,
const G4String name,
const G4ThreeVector pos 
)
protected

Definition at line 115 of file PHG4GDMLWriteDefine.cc.

View newest version in sPHENIX GitHub at line 115 of file PHG4GDMLWriteDefine.cc

References kLinearPrecision, mm, PHG4GDMLWrite::NewAttribute(), PHG4GDMLWrite::NewElement(), CLHEP::Hep3Vector::x(), x, CLHEP::Hep3Vector::y(), y, CLHEP::Hep3Vector::z(), and z.

Referenced by AddPosition(), FirstpositionWrite(), and PositionWrite().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void PHG4GDMLWriteDefine::PositionWrite ( xercesc::DOMElement *  element,
const G4String name,
const G4ThreeVector pos 
)
inline

Definition at line 61 of file PHG4GDMLWriteDefine.hh.

View newest version in sPHENIX GitHub at line 61 of file PHG4GDMLWriteDefine.hh

References Position_vectorWrite().

Referenced by PHG4GDMLWriteSolids::BooleanWrite(), PHG4GDMLWriteParamvol::ParametersWrite(), and PHG4GDMLWriteStructure::PhysvolWrite().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void PHG4GDMLWriteDefine::Rotation_vectorWrite ( xercesc::DOMElement *  element,
const G4String tag,
const G4String name,
const G4ThreeVector rot 
)
protected

Definition at line 98 of file PHG4GDMLWriteDefine.cc.

View newest version in sPHENIX GitHub at line 98 of file PHG4GDMLWriteDefine.cc

References degree, kAngularPrecision, PHG4GDMLWrite::NewAttribute(), PHG4GDMLWrite::NewElement(), CLHEP::Hep3Vector::x(), x, CLHEP::Hep3Vector::y(), y, CLHEP::Hep3Vector::z(), and z.

Referenced by FirstrotationWrite(), and RotationWrite().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void PHG4GDMLWriteDefine::RotationWrite ( xercesc::DOMElement *  element,
const G4String name,
const G4ThreeVector rot 
)
inline

Definition at line 58 of file PHG4GDMLWriteDefine.hh.

View newest version in sPHENIX GitHub at line 58 of file PHG4GDMLWriteDefine.hh

References Rotation_vectorWrite().

Referenced by PHG4GDMLWriteSolids::BooleanWrite(), PHG4GDMLWriteParamvol::ParametersWrite(), and PHG4GDMLWriteStructure::PhysvolWrite().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void PHG4GDMLWriteDefine::Scale_vectorWrite ( xercesc::DOMElement *  element,
const G4String tag,
const G4String name,
const G4ThreeVector scl 
)
protected

Definition at line 79 of file PHG4GDMLWriteDefine.cc.

View newest version in sPHENIX GitHub at line 79 of file PHG4GDMLWriteDefine.cc

References kRelativePrecision, PHG4GDMLWrite::NewAttribute(), PHG4GDMLWrite::NewElement(), CLHEP::Hep3Vector::x(), x, CLHEP::Hep3Vector::y(), y, CLHEP::Hep3Vector::z(), and z.

Referenced by ScaleWrite().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void PHG4GDMLWriteDefine::ScaleWrite ( xercesc::DOMElement *  element,
const G4String name,
const G4ThreeVector scl 
)
inline

Definition at line 55 of file PHG4GDMLWriteDefine.hh.

View newest version in sPHENIX GitHub at line 55 of file PHG4GDMLWriteDefine.hh

References Scale_vectorWrite().

Referenced by PHG4GDMLWriteStructure::PhysvolWrite().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

Member Data Documentation

xercesc::DOMElement* PHG4GDMLWriteDefine::defineElement
protected

Definition at line 93 of file PHG4GDMLWriteDefine.hh.

View newest version in sPHENIX GitHub at line 93 of file PHG4GDMLWriteDefine.hh

Referenced by AddPosition(), DefineWrite(), PHG4GDMLWriteMaterials::PropertyVectorWrite(), and PHG4GDMLWriteMaterials::PropertyWrite().

const G4double PHG4GDMLWriteDefine::kAngularPrecision = DBL_EPSILON
staticprotected

Definition at line 90 of file PHG4GDMLWriteDefine.hh.

View newest version in sPHENIX GitHub at line 90 of file PHG4GDMLWriteDefine.hh

Referenced by PHG4GDMLWriteSolids::BooleanWrite(), PHG4GDMLWriteStructure::PhysvolWrite(), and Rotation_vectorWrite().

const G4double PHG4GDMLWriteDefine::kLinearPrecision = DBL_EPSILON
staticprotected

Definition at line 91 of file PHG4GDMLWriteDefine.hh.

View newest version in sPHENIX GitHub at line 91 of file PHG4GDMLWriteDefine.hh

Referenced by PHG4GDMLWriteSolids::BooleanWrite(), PHG4GDMLWriteStructure::PhysvolWrite(), and Position_vectorWrite().

const G4double PHG4GDMLWriteDefine::kRelativePrecision = DBL_EPSILON
staticprotected

Definition at line 89 of file PHG4GDMLWriteDefine.hh.

View newest version in sPHENIX GitHub at line 89 of file PHG4GDMLWriteDefine.hh

Referenced by PHG4GDMLWriteStructure::PhysvolWrite(), Scale_vectorWrite(), and PHG4GDMLWriteStructure::TraverseVolumeTree().


The documentation for this class was generated from the following files: