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

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

#include <fun4all_eicdetectors/blob/master/simulation/g4simulation/g4lblvtx/G4LBLVtxDetector.h>

+ Inheritance diagram for G4LBLVtxDetector:
+ Collaboration diagram for G4LBLVtxDetector:

Public Member Functions

 G4LBLVtxDetector (PHG4Subsystem *subsys, PHCompositeNode *Node, const std::string &dnam, PHParameters *parameters)
 
virtual ~G4LBLVtxDetector ()
 
void ConstructMe (G4LogicalVolume *world)
 construct
 
int IsInDetector (G4VPhysicalVolume *) const
 
void SuperDetector (const std::string &name)
 
const std::string SuperDetector () const
 
void Print (const std::string &what="ALL") const
 
- 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 G4UserSteppingActionGetSteppingAction ()
 
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 SetActiveVolumes (G4VPhysicalVolume *physvol)
 

Private Attributes

G4LBLVtxDisplayActionm_DisplayAction
 
std::string m_GDMPath
 
std::string m_TopVolName
 
std::set< G4VPhysicalVolume * > m_ActivePhysVolumeMap
 
std::set< G4VPhysicalVolume * > m_PassivePhysVolumeMap
 
std::set< std::string > m_ActiveVolName
 
double m_placeX
 
double m_placeY
 
double m_placeZ
 
double m_rotationX
 
double m_rotationY
 
double m_rotationZ
 
int m_Active
 
int m_AbsorberActive
 
std::string m_SuperDetector
 

Additional Inherited Members

- Static Public Member Functions inherited from PHG4Detector
static G4MaterialGetDetectorMaterial (const std::string &name, const bool quit=true)
 
static G4ElementGetDetectorElement (const std::string &name, const bool quit=true)
 

Detailed Description

G4LBLVtxDetector is a generic detector built from a GDML import.

Definition at line 24 of file G4LBLVtxDetector.h.

View newest version in sPHENIX GitHub at line 24 of file G4LBLVtxDetector.h

Constructor & Destructor Documentation

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

Definition at line 28 of file G4LBLVtxDetector.cc.

View newest version in sPHENIX GitHub at line 28 of file G4LBLVtxDetector.cc

References m_ActiveVolName.

G4LBLVtxDetector::~G4LBLVtxDetector ( )
virtual

Definition at line 46 of file G4LBLVtxDetector.cc.

View newest version in sPHENIX GitHub at line 46 of file G4LBLVtxDetector.cc

Member Function Documentation

void G4LBLVtxDetector::ConstructMe ( G4LogicalVolume world)
virtual

construct

Implements PHG4Detector.

Definition at line 61 of file G4LBLVtxDetector.cc.

View newest version in sPHENIX GitHub at line 61 of file G4LBLVtxDetector.cc

References PHG4Detector::GetMySubsystem(), PHG4Detector::GetName(), G4GDMLReadStructure::GetVolume(), m_GDMPath, m_placeX, m_placeY, m_placeZ, m_rotationX, m_rotationY, m_rotationZ, m_TopVolName, PHG4Detector::OverlapCheck(), Print(), CLHEP::HepRotation::rotateX(), CLHEP::HepRotation::rotateY(), CLHEP::HepRotation::rotateZ(), SetActiveVolumes(), PHG4Subsystem::SetLogicalVolume(), G4GDMLParser::SetOverlapCheck(), and PHG4Detector::Verbosity().

+ Here is the call graph for this function:

int G4LBLVtxDetector::IsInDetector ( G4VPhysicalVolume physvol) const

Definition at line 139 of file G4LBLVtxDetector.cc.

View newest version in sPHENIX GitHub at line 139 of file G4LBLVtxDetector.cc

References m_AbsorberActive, m_Active, m_ActivePhysVolumeMap, and m_PassivePhysVolumeMap.

Referenced by G4LBLVtxSteppingAction::UserSteppingAction().

+ Here is the caller graph for this function:

void G4LBLVtxDetector::Print ( const std::string &  what = "ALL") const
virtual

Reimplemented from PHG4Detector.

Definition at line 50 of file G4LBLVtxDetector.cc.

View newest version in sPHENIX GitHub at line 50 of file G4LBLVtxDetector.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 G4LBLVtxSubsystem::Print().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4LBLVtxDetector::SetActiveVolumes ( G4VPhysicalVolume physvol)
private

Definition at line 103 of file G4LBLVtxDetector.cc.

View newest version in sPHENIX GitHub at line 103 of file G4LBLVtxDetector.cc

References G4LBLVtxDisplayAction::AddLogVolume(), G4LogicalVolume::GetDaughter(), G4VPhysicalVolume::GetLogicalVolume(), G4VPhysicalVolume::GetName(), G4LogicalVolume::GetNoDaughters(), int(), m_ActivePhysVolumeMap, m_ActiveVolName, m_DisplayAction, m_PassivePhysVolumeMap, and test().

Referenced by ConstructMe().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4LBLVtxDetector::SuperDetector ( const std::string &  name)
inline

Definition at line 36 of file G4LBLVtxDetector.h.

View newest version in sPHENIX GitHub at line 36 of file G4LBLVtxDetector.h

References m_SuperDetector.

Referenced by G4LBLVtxSubsystem::InitRunSubsystem(), and G4LBLVtxSteppingAction::SetInterfacePointers().

+ Here is the caller graph for this function:

const std::string G4LBLVtxDetector::SuperDetector ( ) const
inline

Definition at line 37 of file G4LBLVtxDetector.h.

View newest version in sPHENIX GitHub at line 37 of file G4LBLVtxDetector.h

References m_SuperDetector.

Member Data Documentation

int G4LBLVtxDetector::m_AbsorberActive
private

Definition at line 60 of file G4LBLVtxDetector.h.

View newest version in sPHENIX GitHub at line 60 of file G4LBLVtxDetector.h

Referenced by IsInDetector().

int G4LBLVtxDetector::m_Active
private

Definition at line 59 of file G4LBLVtxDetector.h.

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

Referenced by IsInDetector().

std::set<G4VPhysicalVolume*> G4LBLVtxDetector::m_ActivePhysVolumeMap
private

Definition at line 48 of file G4LBLVtxDetector.h.

View newest version in sPHENIX GitHub at line 48 of file G4LBLVtxDetector.h

Referenced by IsInDetector(), and SetActiveVolumes().

std::set<std::string> G4LBLVtxDetector::m_ActiveVolName
private

Definition at line 50 of file G4LBLVtxDetector.h.

View newest version in sPHENIX GitHub at line 50 of file G4LBLVtxDetector.h

Referenced by G4LBLVtxDetector(), and SetActiveVolumes().

G4LBLVtxDisplayAction* G4LBLVtxDetector::m_DisplayAction
private

Definition at line 44 of file G4LBLVtxDetector.h.

View newest version in sPHENIX GitHub at line 44 of file G4LBLVtxDetector.h

Referenced by SetActiveVolumes().

std::string G4LBLVtxDetector::m_GDMPath
private

Definition at line 46 of file G4LBLVtxDetector.h.

View newest version in sPHENIX GitHub at line 46 of file G4LBLVtxDetector.h

Referenced by ConstructMe(), and Print().

std::set<G4VPhysicalVolume*> G4LBLVtxDetector::m_PassivePhysVolumeMap
private

Definition at line 49 of file G4LBLVtxDetector.h.

View newest version in sPHENIX GitHub at line 49 of file G4LBLVtxDetector.h

Referenced by IsInDetector(), and SetActiveVolumes().

double G4LBLVtxDetector::m_placeX
private

Definition at line 51 of file G4LBLVtxDetector.h.

View newest version in sPHENIX GitHub at line 51 of file G4LBLVtxDetector.h

Referenced by ConstructMe(), and Print().

double G4LBLVtxDetector::m_placeY
private

Definition at line 52 of file G4LBLVtxDetector.h.

View newest version in sPHENIX GitHub at line 52 of file G4LBLVtxDetector.h

Referenced by ConstructMe(), and Print().

double G4LBLVtxDetector::m_placeZ
private

Definition at line 53 of file G4LBLVtxDetector.h.

View newest version in sPHENIX GitHub at line 53 of file G4LBLVtxDetector.h

Referenced by ConstructMe(), and Print().

double G4LBLVtxDetector::m_rotationX
private

Definition at line 55 of file G4LBLVtxDetector.h.

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

Referenced by ConstructMe(), and Print().

double G4LBLVtxDetector::m_rotationY
private

Definition at line 56 of file G4LBLVtxDetector.h.

View newest version in sPHENIX GitHub at line 56 of file G4LBLVtxDetector.h

Referenced by ConstructMe(), and Print().

double G4LBLVtxDetector::m_rotationZ
private

Definition at line 57 of file G4LBLVtxDetector.h.

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

Referenced by ConstructMe(), and Print().

std::string G4LBLVtxDetector::m_SuperDetector
private

Definition at line 62 of file G4LBLVtxDetector.h.

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

Referenced by SuperDetector().

std::string G4LBLVtxDetector::m_TopVolName
private

Definition at line 47 of file G4LBLVtxDetector.h.

View newest version in sPHENIX GitHub at line 47 of file G4LBLVtxDetector.h

Referenced by ConstructMe(), and Print().


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