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

#include <fun4all_eicdetectors/blob/master/simulation/g4simulation/g4eiccalos/PHG4CrystalCalorimeterDetector.h>

+ Inheritance diagram for PHG4CrystalCalorimeterDetector:
+ Collaboration diagram for PHG4CrystalCalorimeterDetector:

Classes

struct  towerposition
 

Public Member Functions

 PHG4CrystalCalorimeterDetector (PHG4Subsystem *subsys, PHCompositeNode *Node, PHParameters *parameters, const std::string &dnam)
 constructor
 
virtual ~PHG4CrystalCalorimeterDetector ()
 destructor
 
virtual void ConstructMe (G4LogicalVolume *world)
 construct
 
virtual int IsInCrystalCalorimeter (G4VPhysicalVolume *) const
 check if volume is in this calorimeter
 
void SuperDetector (const std::string &name)
 
const std::string SuperDetector () const
 
int get_DetectorId () const
 
void DetectorId (const int i)
 
PHParametersGetParams ()
 
- 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 G4UserSteppingAction * GetSteppingAction ()
 
virtual std::string GetName () const
 
virtual void OverlapCheck (const bool chk)
 
virtual bool OverlapCheck () const
 
virtual void Print (const std::string &="ALL") 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 ()
 

Protected Member Functions

PHG4CrystalCalorimeterDisplayActionGetDisplayAction ()
 
G4Material * GetCarbonFiber ()
 
virtual int GetCaloType () const
 

Private Member Functions

G4LogicalVolume * ConstructTower ()
 
int PlaceTower (G4LogicalVolume *envelope, G4LogicalVolume *tower)
 
int ParseParametersFromTable ()
 

Private Attributes

int m_DetectorId = 0
 
std::string m_SuperDetector
 
PHParametersm_Params = nullptr
 
PHG4CrystalCalorimeterDisplayActionm_DisplayAction = nullptr
 
std::string _towerlogicnameprefix
 
std::map< std::string, G4double > _map_global_parameter
 
std::map< std::string,
towerposition
_map_tower
 
std::set< G4VPhysicalVolume * > m_ActiveVolumeSet
 
std::set< G4VPhysicalVolume * > m_PassiveVolumeSet
 
int m_IsActive
 
int m_AbsorberActive
 

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

Definition at line 28 of file PHG4CrystalCalorimeterDetector.h.

View newest version in sPHENIX GitHub at line 28 of file PHG4CrystalCalorimeterDetector.h

Constructor & Destructor Documentation

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

constructor

Definition at line 40 of file PHG4CrystalCalorimeterDetector.cc.

View newest version in sPHENIX GitHub at line 40 of file PHG4CrystalCalorimeterDetector.cc

virtual PHG4CrystalCalorimeterDetector::~PHG4CrystalCalorimeterDetector ( )
inlinevirtual

destructor

Definition at line 35 of file PHG4CrystalCalorimeterDetector.h.

View newest version in sPHENIX GitHub at line 35 of file PHG4CrystalCalorimeterDetector.h

Member Function Documentation

void PHG4CrystalCalorimeterDetector::ConstructMe ( G4LogicalVolume *  world)
virtual
G4LogicalVolume * PHG4CrystalCalorimeterDetector::ConstructTower ( )
private

Definition at line 127 of file PHG4CrystalCalorimeterDetector.cc.

View newest version in sPHENIX GitHub at line 127 of file PHG4CrystalCalorimeterDetector.cc

References _towerlogicnameprefix, PHG4CrystalCalorimeterDisplayAction::AddVolume(), Acts::UnitConstants::cm, PHParameters::get_double_param(), PHParameters::get_string_param(), PHFlag::get_StringFlag(), GetCarbonFiber(), PHG4Detector::GetDetectorMaterial(), GetDisplayAction(), recoConsts::instance(), m_ActiveVolumeSet, m_Params, m_PassiveVolumeSet, Acts::UnitConstants::mm, PHG4Detector::OverlapCheck(), PHG4Detector::Verbosity(), and G4WORLD::WorldMaterial.

Referenced by ConstructMe().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void PHG4CrystalCalorimeterDetector::DetectorId ( const int  i)
inline

Definition at line 49 of file PHG4CrystalCalorimeterDetector.h.

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

References m_DetectorId.

Referenced by PHG4CrystalCalorimeterSubsystem::InitRunSubsystem().

+ Here is the caller graph for this function:

int PHG4CrystalCalorimeterDetector::get_DetectorId ( ) const
inline

Definition at line 48 of file PHG4CrystalCalorimeterDetector.h.

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

References m_DetectorId.

Referenced by PHG4CrystalCalorimeterSteppingAction::UserSteppingAction().

+ Here is the caller graph for this function:

virtual int PHG4CrystalCalorimeterDetector::GetCaloType ( ) const
inlineprotectedvirtual

Reimplemented in PHG4ProjCrystalCalorimeterDetector.

Definition at line 58 of file PHG4CrystalCalorimeterDetector.h.

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

References PHG4CrystalCalorimeterDefs::nonprojective.

Referenced by IsInCrystalCalorimeter().

+ Here is the caller graph for this function:

G4Material * PHG4CrystalCalorimeterDetector::GetCarbonFiber ( )
protected

Definition at line 430 of file PHG4CrystalCalorimeterDetector.cc.

View newest version in sPHENIX GitHub at line 430 of file PHG4CrystalCalorimeterDetector.cc

References Acts::UnitConstants::cm3, g(), and PHG4Detector::GetDetectorMaterial().

Referenced by ConstructTower(), PHG4ProjCrystalCalorimeterDetector::Fill4x4Unit(), and PHG4ProjCrystalCalorimeterDetector::FillSpecialUnit().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

PHG4CrystalCalorimeterDisplayAction* PHG4CrystalCalorimeterDetector::GetDisplayAction ( )
inlineprotected

Definition at line 56 of file PHG4CrystalCalorimeterDetector.h.

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

References m_DisplayAction.

Referenced by PHG4ProjCrystalCalorimeterDetector::ConstructMe(), ConstructMe(), PHG4ProjCrystalCalorimeterDetector::ConstructProjectiveCrystals(), ConstructTower(), PHG4ProjCrystalCalorimeterDetector::Fill4x4Unit(), and PHG4ProjCrystalCalorimeterDetector::FillSpecialUnit().

+ Here is the caller graph for this function:

PHParameters* PHG4CrystalCalorimeterDetector::GetParams ( )
inline

Definition at line 53 of file PHG4CrystalCalorimeterDetector.h.

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

References m_Params.

Referenced by PHG4ProjCrystalCalorimeterDetector::ConstructMe(), PHG4ProjCrystalCalorimeterDetector::ConstructProjectiveCrystals(), PHG4ProjCrystalCalorimeterDetector::Fill4x4Unit(), and PHG4ProjCrystalCalorimeterDetector::FillSpecialUnit().

+ Here is the caller graph for this function:

int PHG4CrystalCalorimeterDetector::IsInCrystalCalorimeter ( G4VPhysicalVolume *  volume) const
virtual

check if volume is in this calorimeter

Reimplemented in PHG4ProjCrystalCalorimeterDetector.

Definition at line 52 of file PHG4CrystalCalorimeterDetector.cc.

View newest version in sPHENIX GitHub at line 52 of file PHG4CrystalCalorimeterDetector.cc

References GetCaloType(), m_AbsorberActive, m_ActiveVolumeSet, m_IsActive, and m_PassiveVolumeSet.

Referenced by PHG4CrystalCalorimeterSteppingAction::UserSteppingAction().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

int PHG4CrystalCalorimeterDetector::ParseParametersFromTable ( )
private

Definition at line 262 of file PHG4CrystalCalorimeterDetector.cc.

View newest version in sPHENIX GitHub at line 262 of file PHG4CrystalCalorimeterDetector.cc

References _map_global_parameter, _map_tower, _towerlogicnameprefix, Acts::UnitConstants::cm, PHParameters::get_string_param(), getline, PHG4CrystalCalorimeterDetector::towerposition::idx_j, PHG4CrystalCalorimeterDetector::towerposition::idx_k, m_Params, Acts::UnitConstants::rad, PHParameters::set_double_param(), G4CTD::size_z, PHG4Detector::Verbosity(), PHG4CrystalCalorimeterDetector::towerposition::x, PHG4CrystalCalorimeterDetector::towerposition::y, and PHG4CrystalCalorimeterDetector::towerposition::z.

Referenced by ConstructMe().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

int PHG4CrystalCalorimeterDetector::PlaceTower ( G4LogicalVolume *  envelope,
G4LogicalVolume *  tower 
)
private

Definition at line 238 of file PHG4CrystalCalorimeterDetector.cc.

View newest version in sPHENIX GitHub at line 238 of file PHG4CrystalCalorimeterDetector.cc

References _map_tower, PHG4Detector::OverlapCheck(), and PHG4Detector::Verbosity().

Referenced by ConstructMe().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

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

Definition at line 45 of file PHG4CrystalCalorimeterDetector.h.

View newest version in sPHENIX GitHub at line 45 of file PHG4CrystalCalorimeterDetector.h

References m_SuperDetector, and name.

Referenced by PHG4CrystalCalorimeterSubsystem::InitRunSubsystem(), and PHG4CrystalCalorimeterSteppingAction::SetInterfacePointers().

+ Here is the caller graph for this function:

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

Definition at line 46 of file PHG4CrystalCalorimeterDetector.h.

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

References m_SuperDetector.

Member Data Documentation

std::map<std::string, G4double> PHG4CrystalCalorimeterDetector::_map_global_parameter
private

Definition at line 84 of file PHG4CrystalCalorimeterDetector.h.

View newest version in sPHENIX GitHub at line 84 of file PHG4CrystalCalorimeterDetector.h

Referenced by ParseParametersFromTable().

std::map<std::string, towerposition> PHG4CrystalCalorimeterDetector::_map_tower
private

Definition at line 85 of file PHG4CrystalCalorimeterDetector.h.

View newest version in sPHENIX GitHub at line 85 of file PHG4CrystalCalorimeterDetector.h

Referenced by ParseParametersFromTable(), and PlaceTower().

std::string PHG4CrystalCalorimeterDetector::_towerlogicnameprefix
private

Definition at line 82 of file PHG4CrystalCalorimeterDetector.h.

View newest version in sPHENIX GitHub at line 82 of file PHG4CrystalCalorimeterDetector.h

Referenced by ConstructMe(), ConstructTower(), and ParseParametersFromTable().

int PHG4CrystalCalorimeterDetector::m_AbsorberActive
private

Definition at line 92 of file PHG4CrystalCalorimeterDetector.h.

View newest version in sPHENIX GitHub at line 92 of file PHG4CrystalCalorimeterDetector.h

Referenced by IsInCrystalCalorimeter().

std::set<G4VPhysicalVolume *> PHG4CrystalCalorimeterDetector::m_ActiveVolumeSet
private

Definition at line 86 of file PHG4CrystalCalorimeterDetector.h.

View newest version in sPHENIX GitHub at line 86 of file PHG4CrystalCalorimeterDetector.h

Referenced by ConstructTower(), and IsInCrystalCalorimeter().

int PHG4CrystalCalorimeterDetector::m_DetectorId = 0
private

Definition at line 74 of file PHG4CrystalCalorimeterDetector.h.

View newest version in sPHENIX GitHub at line 74 of file PHG4CrystalCalorimeterDetector.h

Referenced by DetectorId(), and get_DetectorId().

PHG4CrystalCalorimeterDisplayAction* PHG4CrystalCalorimeterDetector::m_DisplayAction = nullptr
private

Definition at line 80 of file PHG4CrystalCalorimeterDetector.h.

View newest version in sPHENIX GitHub at line 80 of file PHG4CrystalCalorimeterDetector.h

Referenced by GetDisplayAction().

int PHG4CrystalCalorimeterDetector::m_IsActive
private

Definition at line 91 of file PHG4CrystalCalorimeterDetector.h.

View newest version in sPHENIX GitHub at line 91 of file PHG4CrystalCalorimeterDetector.h

Referenced by IsInCrystalCalorimeter().

PHParameters* PHG4CrystalCalorimeterDetector::m_Params = nullptr
private

Definition at line 78 of file PHG4CrystalCalorimeterDetector.h.

View newest version in sPHENIX GitHub at line 78 of file PHG4CrystalCalorimeterDetector.h

Referenced by ConstructMe(), ConstructTower(), GetParams(), and ParseParametersFromTable().

std::set<G4VPhysicalVolume *> PHG4CrystalCalorimeterDetector::m_PassiveVolumeSet
private

Definition at line 87 of file PHG4CrystalCalorimeterDetector.h.

View newest version in sPHENIX GitHub at line 87 of file PHG4CrystalCalorimeterDetector.h

Referenced by ConstructTower(), and IsInCrystalCalorimeter().

std::string PHG4CrystalCalorimeterDetector::m_SuperDetector
private

Definition at line 76 of file PHG4CrystalCalorimeterDetector.h.

View newest version in sPHENIX GitHub at line 76 of file PHG4CrystalCalorimeterDetector.h

Referenced by SuperDetector().


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