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

PHG4GDMLDetector is a generic detector built from a GDML import. More...

#include <fun4all_coresoftware/blob/master/simulation/g4simulation/g4detectors/PHG4GDMLDetector.h>

+ Inheritance diagram for PHG4GDMLDetector:
+ Collaboration diagram for PHG4GDMLDetector:

Public Member Functions

 PHG4GDMLDetector (PHG4Subsystem *subsys, PHCompositeNode *Node, const std::string &dnam, PHParameters *parameters)
 
 ~PHG4GDMLDetector () override
 
void ConstructMe (G4LogicalVolume *world) override
 construct
 
G4UserSteppingAction * GetSteppingAction () override
 
void Print (const std::string &what="ALL") const override
 
- Public Member Functions inherited from PHG4Detector
 PHG4Detector ()=delete
 constructor
 
 PHG4Detector (PHG4Subsystem *subsys, PHCompositeNode *Node, const std::string &nam)
 
virtual ~PHG4Detector (void)
 destructor
 
virtual void Construct (G4LogicalVolume *world) final
 construct method
 
virtual void PostConstruction ()
 Optional PostConstruction call after all geometry is constructed.
 
virtual void Verbosity (const int v)
 
virtual int Verbosity () const
 
virtual std::string GetName () const
 
virtual void OverlapCheck (const bool chk)
 
virtual bool OverlapCheck () const
 
virtual int DisplayVolume (G4VSolid *volume, G4LogicalVolume *logvol, G4RotationMatrix *rotm=nullptr)
 
virtual int DisplayVolume (G4LogicalVolume *checksolid, G4LogicalVolume *logvol, G4RotationMatrix *rotm=nullptr)
 
virtual PHCompositeNodetopNode ()
 
virtual PHG4SubsystemGetMySubsystem ()
 

Private Member Functions

void SetDisplayProperty (G4AssemblyVolume *av)
 
void SetDisplayProperty (G4LogicalVolume *lv)
 

Private Attributes

std::string m_GDMPath
 
std::string m_TopVolName
 
G4double m_placeX
 
G4double m_placeY
 
G4double m_placeZ
 
G4double m_rotationX
 
G4double m_rotationY
 
G4double m_rotationZ
 
int m_skipDSTGeometryExport
 
PHG4GDMLConfiggdml_config
 registry for volumes that should not be exported, i.e. fibers
 

Additional Inherited Members

- Static Public Member Functions inherited from PHG4Detector
static G4Material * GetDetectorMaterial (const std::string &name, const bool quit=true)
 
static G4Element * GetDetectorElement (const std::string &name, const bool quit=true)
 

Detailed Description

PHG4GDMLDetector is a generic detector built from a GDML import.

Definition at line 33 of file PHG4GDMLDetector.h.

View newest version in sPHENIX GitHub at line 33 of file PHG4GDMLDetector.h

Constructor & Destructor Documentation

PHG4GDMLDetector::PHG4GDMLDetector ( PHG4Subsystem subsys,
PHCompositeNode Node,
const std::string &  dnam,
PHParameters parameters 
)

Definition at line 44 of file PHG4GDMLDetector.cc.

View newest version in sPHENIX GitHub at line 44 of file PHG4GDMLDetector.cc

References gdml_config, PHG4GDMLUtility::GetOrMakeConfigNode(), and m_skipDSTGeometryExport.

+ Here is the call graph for this function:

PHG4GDMLDetector::~PHG4GDMLDetector ( )
override

Definition at line 64 of file PHG4GDMLDetector.cc.

View newest version in sPHENIX GitHub at line 64 of file PHG4GDMLDetector.cc

Member Function Documentation

void PHG4GDMLDetector::ConstructMe ( G4LogicalVolume *  world)
overridevirtual

construct

Implements PHG4Detector.

Definition at line 81 of file PHG4GDMLDetector.cc.

View newest version in sPHENIX GitHub at line 81 of file PHG4GDMLDetector.cc

References PHG4GDMLConfig::exclude_physical_vol(), exit(), gdml_config, PHG4Detector::GetMySubsystem(), PHG4Detector::GetName(), G4GDMLReadStructure::GetVolume(), m_GDMPath, m_placeX, m_placeY, m_placeZ, m_rotationX, m_rotationY, m_rotationZ, m_skipDSTGeometryExport, m_TopVolName, PHG4Detector::OverlapCheck(), Print(), reader(), SetDisplayProperty(), PHG4Subsystem::SetLogicalVolume(), G4GDMLParser::SetOverlapCheck(), and PHG4Detector::Verbosity().

+ Here is the call graph for this function:

G4UserSteppingAction* PHG4GDMLDetector::GetSteppingAction ( void  )
inlineoverridevirtual

Reimplemented from PHG4Detector.

Definition at line 43 of file PHG4GDMLDetector.h.

View newest version in sPHENIX GitHub at line 43 of file PHG4GDMLDetector.h

void PHG4GDMLDetector::Print ( const std::string &  what = "ALL") const
overridevirtual

Reimplemented from PHG4Detector.

Definition at line 70 of file PHG4GDMLDetector.cc.

View newest version in sPHENIX GitHub at line 70 of file PHG4GDMLDetector.cc

References PHG4Detector::GetName(), m_GDMPath, m_placeX, m_placeY, m_placeZ, m_rotationX, m_rotationY, m_rotationZ, and m_TopVolName.

Referenced by ConstructMe(), and PHG4GDMLSubsystem::Print().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void PHG4GDMLDetector::SetDisplayProperty ( G4AssemblyVolume *  av)
private

Definition at line 136 of file PHG4GDMLDetector.cc.

View newest version in sPHENIX GitHub at line 136 of file PHG4GDMLDetector.cc

References it.

Referenced by ConstructMe(), and SetDisplayProperty().

+ Here is the caller graph for this function:

void PHG4GDMLDetector::SetDisplayProperty ( G4LogicalVolume *  lv)
private

Definition at line 154 of file PHG4GDMLDetector.cc.

View newest version in sPHENIX GitHub at line 154 of file PHG4GDMLDetector.cc

References PHG4Utils::SetColour(), SetDisplayProperty(), and PHG4Detector::Verbosity().

+ Here is the call graph for this function:

Member Data Documentation

PHG4GDMLConfig* PHG4GDMLDetector::gdml_config
private

registry for volumes that should not be exported, i.e. fibers

Definition at line 68 of file PHG4GDMLDetector.h.

View newest version in sPHENIX GitHub at line 68 of file PHG4GDMLDetector.h

Referenced by ConstructMe(), and PHG4GDMLDetector().

std::string PHG4GDMLDetector::m_GDMPath
private

Definition at line 54 of file PHG4GDMLDetector.h.

View newest version in sPHENIX GitHub at line 54 of file PHG4GDMLDetector.h

Referenced by ConstructMe(), and Print().

G4double PHG4GDMLDetector::m_placeX
private

Definition at line 57 of file PHG4GDMLDetector.h.

View newest version in sPHENIX GitHub at line 57 of file PHG4GDMLDetector.h

Referenced by ConstructMe(), and Print().

G4double PHG4GDMLDetector::m_placeY
private

Definition at line 58 of file PHG4GDMLDetector.h.

View newest version in sPHENIX GitHub at line 58 of file PHG4GDMLDetector.h

Referenced by ConstructMe(), and Print().

G4double PHG4GDMLDetector::m_placeZ
private

Definition at line 59 of file PHG4GDMLDetector.h.

View newest version in sPHENIX GitHub at line 59 of file PHG4GDMLDetector.h

Referenced by ConstructMe(), and Print().

G4double PHG4GDMLDetector::m_rotationX
private

Definition at line 61 of file PHG4GDMLDetector.h.

View newest version in sPHENIX GitHub at line 61 of file PHG4GDMLDetector.h

Referenced by ConstructMe(), and Print().

G4double PHG4GDMLDetector::m_rotationY
private

Definition at line 62 of file PHG4GDMLDetector.h.

View newest version in sPHENIX GitHub at line 62 of file PHG4GDMLDetector.h

Referenced by ConstructMe(), and Print().

G4double PHG4GDMLDetector::m_rotationZ
private

Definition at line 63 of file PHG4GDMLDetector.h.

View newest version in sPHENIX GitHub at line 63 of file PHG4GDMLDetector.h

Referenced by ConstructMe(), and Print().

int PHG4GDMLDetector::m_skipDSTGeometryExport
private

Definition at line 65 of file PHG4GDMLDetector.h.

View newest version in sPHENIX GitHub at line 65 of file PHG4GDMLDetector.h

Referenced by ConstructMe(), and PHG4GDMLDetector().

std::string PHG4GDMLDetector::m_TopVolName
private

Definition at line 55 of file PHG4GDMLDetector.h.

View newest version in sPHENIX GitHub at line 55 of file PHG4GDMLDetector.h

Referenced by ConstructMe(), and Print().


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