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

This class creates the ePHENIX RICH volumes for Geant4 based on the geometry information in ePHENIXRICH::RICH_Geometry. More...

#include <fun4all_eicdetectors/blob/master/simulation/g4simulation/g4rich/ePHENIXRICHConstruction.h>

+ Inheritance diagram for ePHENIXRICH::ePHENIXRICHConstruction:
+ Collaboration diagram for ePHENIXRICH::ePHENIXRICHConstruction:

Public Member Functions

virtual ~ePHENIXRICHConstruction ()
 
 ePHENIXRICHConstruction (PHG4Subsystem *subsys)
 
 ePHENIXRICHConstruction (PHG4Subsystem *subsys, const RICH_Geometry &g)
 
virtual void OverlapCheck (bool check)
 
G4LogicalVolume * Construct_RICH (G4LogicalVolume *)
 
G4LogicalVolume * Construct_HBD (G4LogicalVolume *RICHSecLog)
 
G4LogicalVolume * Construct_HBD_Layers (G4LogicalVolume *RICHHBDLog, const G4String name, const G4String material, const double start_z, const double thickness)
 
int is_in_sector (G4VPhysicalVolume *) const
 
PHG4RICHDisplayActionGetDisplayAction ()
 

Public Attributes

RICH_Geometry geom
 

Protected Types

typedef std::map< G4String,
G4LogicalVolume * > 
map_log_vol_t
 
typedef std::pair< G4String,
G4int > 
phy_vol_idx_t
 
typedef std::map
< phy_vol_idx_t, G4PVPlacement * > 
map_phy_vol_t
 

Protected Member Functions

G4LogicalVolume * RegisterLogicalVolume (G4LogicalVolume *)
 
G4PVPlacement * RegisterPhysicalVolume (G4PVPlacement *)
 

Static Protected Member Functions

static G4Material * GetDetectorMaterial (const std::string &name, const bool quit=true)
 

Protected Attributes

map_log_vol_t map_log_vol
 
PHG4RICHDisplayActionm_DisplayAction
 
map_phy_vol_t map_phy_vol
 
bool overlapcheck_rich
 
std::set< G4VPhysicalVolume * > sector_vec
 

Detailed Description

This class creates the ePHENIX RICH volumes for Geant4 based on the geometry information in ePHENIXRICH::RICH_Geometry.

See Also
ePHENIXRICH::RICH_Geometry
ePHENIXRICH::ePHENIXRICHConstruction
PHG4RICHDetector
PHG4RICHSteppingAction
PHG4RICHSubsystem

Definition at line 393 of file ePHENIXRICHConstruction.h.

View newest version in sPHENIX GitHub at line 393 of file ePHENIXRICHConstruction.h

Member Typedef Documentation

typedef std::map<G4String, G4LogicalVolume*> ePHENIXRICH::ePHENIXRICHConstruction::map_log_vol_t
protected

Definition at line 430 of file ePHENIXRICHConstruction.h.

View newest version in sPHENIX GitHub at line 430 of file ePHENIXRICHConstruction.h

typedef std::map<phy_vol_idx_t, G4PVPlacement*> ePHENIXRICH::ePHENIXRICHConstruction::map_phy_vol_t
protected

Definition at line 437 of file ePHENIXRICHConstruction.h.

View newest version in sPHENIX GitHub at line 437 of file ePHENIXRICHConstruction.h

typedef std::pair<G4String, G4int> ePHENIXRICH::ePHENIXRICHConstruction::phy_vol_idx_t
protected

Definition at line 436 of file ePHENIXRICHConstruction.h.

View newest version in sPHENIX GitHub at line 436 of file ePHENIXRICHConstruction.h

Constructor & Destructor Documentation

virtual ePHENIXRICH::ePHENIXRICHConstruction::~ePHENIXRICHConstruction ( )
inlinevirtual

Definition at line 396 of file ePHENIXRICHConstruction.h.

View newest version in sPHENIX GitHub at line 396 of file ePHENIXRICHConstruction.h

ePHENIXRICHConstruction::ePHENIXRICHConstruction ( PHG4Subsystem subsys)

Definition at line 55 of file ePHENIXRICHConstruction.cc.

View newest version in sPHENIX GitHub at line 55 of file ePHENIXRICHConstruction.cc

ePHENIXRICHConstruction::ePHENIXRICHConstruction ( PHG4Subsystem subsys,
const RICH_Geometry g 
)

Definition at line 61 of file ePHENIXRICHConstruction.cc.

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

Member Function Documentation

G4LogicalVolume * ePHENIXRICHConstruction::Construct_HBD_Layers ( G4LogicalVolume *  RICHHBDLog,
const G4String  name,
const G4String  material,
const double  start_z,
const double  thickness 
)

Definition at line 400 of file ePHENIXRICHConstruction.cc.

View newest version in sPHENIX GitHub at line 400 of file ePHENIXRICHConstruction.cc

References geom, ePHENIXRICH::RICH_Geometry::get_half_angle_HBD(), ePHENIXRICH::RICH_Geometry::get_RZ_Seg1_HBD(), ePHENIXRICH::RICH_Geometry::get_RZ_Seg2_HBD(), GetDetectorMaterial(), overlapcheck_rich, pi, RegisterLogicalVolume(), and RegisterPhysicalVolume().

Referenced by Construct_HBD().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4LogicalVolume * ePHENIXRICHConstruction::Construct_RICH ( G4LogicalVolume *  WorldLog)
G4Material * ePHENIXRICHConstruction::GetDetectorMaterial ( const std::string &  name,
const bool  quit = true 
)
staticprotected

Definition at line 538 of file ePHENIXRICHConstruction.cc.

View newest version in sPHENIX GitHub at line 538 of file ePHENIXRICHConstruction.cc

References exit().

Referenced by Construct_HBD(), Construct_HBD_Layers(), and Construct_RICH().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

PHG4RICHDisplayAction* ePHENIXRICH::ePHENIXRICHConstruction::GetDisplayAction ( )
inline

Definition at line 422 of file ePHENIXRICHConstruction.h.

View newest version in sPHENIX GitHub at line 422 of file ePHENIXRICHConstruction.h

References m_DisplayAction.

Referenced by Construct_RICH().

+ Here is the caller graph for this function:

int ePHENIXRICHConstruction::is_in_sector ( G4VPhysicalVolume *  volume) const

Checks if volume is sector volume

Definition at line 529 of file ePHENIXRICHConstruction.cc.

View newest version in sPHENIX GitHub at line 529 of file ePHENIXRICHConstruction.cc

References sector_vec.

virtual void ePHENIXRICH::ePHENIXRICHConstruction::OverlapCheck ( bool  check)
inlinevirtual

Reimplemented in PHG4RICHDetector.

Definition at line 401 of file ePHENIXRICHConstruction.h.

View newest version in sPHENIX GitHub at line 401 of file ePHENIXRICHConstruction.h

References overlapcheck_rich.

G4LogicalVolume * ePHENIXRICHConstruction::RegisterLogicalVolume ( G4LogicalVolume *  v)
protected

Definition at line 68 of file ePHENIXRICHConstruction.cc.

View newest version in sPHENIX GitHub at line 68 of file ePHENIXRICHConstruction.cc

References map_log_vol, and v.

Referenced by Construct_HBD(), Construct_HBD_Layers(), and Construct_RICH().

+ Here is the caller graph for this function:

G4PVPlacement * ePHENIXRICHConstruction::RegisterPhysicalVolume ( G4PVPlacement *  v)
protected

Definition at line 87 of file ePHENIXRICHConstruction.cc.

View newest version in sPHENIX GitHub at line 87 of file ePHENIXRICHConstruction.cc

References map_phy_vol, and v.

Referenced by Construct_HBD(), Construct_HBD_Layers(), and Construct_RICH().

+ Here is the caller graph for this function:

Member Data Documentation

RICH_Geometry ePHENIXRICH::ePHENIXRICHConstruction::geom

Definition at line 416 of file ePHENIXRICHConstruction.h.

View newest version in sPHENIX GitHub at line 416 of file ePHENIXRICHConstruction.h

Referenced by Construct_HBD(), Construct_HBD_Layers(), and Construct_RICH().

PHG4RICHDisplayAction* ePHENIXRICH::ePHENIXRICHConstruction::m_DisplayAction
protected

Definition at line 439 of file ePHENIXRICHConstruction.h.

View newest version in sPHENIX GitHub at line 439 of file ePHENIXRICHConstruction.h

Referenced by GetDisplayAction().

map_log_vol_t ePHENIXRICH::ePHENIXRICHConstruction::map_log_vol
protected

Definition at line 431 of file ePHENIXRICHConstruction.h.

View newest version in sPHENIX GitHub at line 431 of file ePHENIXRICHConstruction.h

Referenced by PHG4RICHDetector::ConstructMe(), and RegisterLogicalVolume().

map_phy_vol_t ePHENIXRICH::ePHENIXRICHConstruction::map_phy_vol
protected

Definition at line 440 of file ePHENIXRICHConstruction.h.

View newest version in sPHENIX GitHub at line 440 of file ePHENIXRICHConstruction.h

Referenced by RegisterPhysicalVolume().

bool ePHENIXRICH::ePHENIXRICHConstruction::overlapcheck_rich
protected

Definition at line 442 of file ePHENIXRICHConstruction.h.

View newest version in sPHENIX GitHub at line 442 of file ePHENIXRICHConstruction.h

Referenced by Construct_HBD(), Construct_HBD_Layers(), Construct_RICH(), and OverlapCheck().

std::set<G4VPhysicalVolume*> ePHENIXRICH::ePHENIXRICHConstruction::sector_vec
protected

Set of volumes

Definition at line 447 of file ePHENIXRICHConstruction.h.

View newest version in sPHENIX GitHub at line 447 of file ePHENIXRICHConstruction.h

Referenced by Construct_RICH(), and is_in_sector().


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