Belle II Software  release-08-01-10
GeoECLCreator Class Reference

The GeoECLCreator class. More...

#include <GeoECLCreator.h>

Inheritance diagram for GeoECLCreator:
Collaboration diagram for GeoECLCreator:

Public Member Functions

 GeoECLCreator ()
 Constructor of the GeoECLCreator class.
 
 ~GeoECLCreator ()
 The destructor of the GeoECLCreator class.
 
virtual void create (const GearDir &content, G4LogicalVolume &topVolume, geometry::GeometryTypes type) override
 Function to actually create the geometry, has to be overridden by derived classes. More...
 
virtual void createFromDB (const std::string &name, G4LogicalVolume &topVolume, geometry::GeometryTypes type) override
 Function to create the geometry from the Database. More...
 
virtual void createPayloads (const GearDir &content, const IntervalOfValidity &iov) override
 Function to create the geometry database. More...
 
 BELLE2_DEFINE_EXCEPTION (DBNotImplemented, "Cannot create geometry from Database.")
 Exception that will be thrown in createFromDB if member is not yet implemented by creator.
 

Private Member Functions

void barrel (G4LogicalVolume &)
 Make the ECL barrel and then place elements inside it.
 
void backward (G4LogicalVolume &)
 Place elements inside the backward endcap.
 
void forward (G4LogicalVolume &)
 Place elements inside the forward endcap.
 
G4LogicalVolume * wrapped_crystal (const shape_t *s, const std::string &endcap, double wrapthickness)
 Wrapped crystal.
 
void defineVisAttributes ()
 Define visual attributes.
 
const G4VisAttributes * att (const std::string &n) const
 Define visual attributes. More...
 
G4LogicalVolume * get_preamp () const
 Get Logical volume of preamplifier.
 
double get_pa_box_height () const
 Getter for preamplifier box height (hard-coded to be 2)
 

Private Attributes

const ECLCrystalsShapeAndPositionm_sap
 pointer to a storage with crystal shapes and positions
 
Simulation::SensitiveDetectorBasem_sensitive
 Sensitive detector.
 
Simulation::SensitiveDetectorBasem_sensediode
 Sensitive diode.
 
std::map< std::string, G4VisAttributes * > m_atts
 Vector of background-Sensitive detectors.
 
int m_overlap
 overlap
 

Detailed Description

The GeoECLCreator class.

The creator for the ECL geometry of the Belle II detector.

Definition at line 34 of file GeoECLCreator.h.

Member Function Documentation

◆ att()

const G4VisAttributes * att ( const std::string &  n) const
private

Define visual attributes.

Parameters
nAttribute name

Definition at line 141 of file GeoECLCreator.cc.

142 {
143  auto p = m_atts.find(n);
144  assert(p != m_atts.end());
145  return p->second;
146 }
std::map< std::string, G4VisAttributes * > m_atts
Vector of background-Sensitive detectors.
Definition: GeoECLCreator.h:98

◆ create()

void create ( const GearDir content,
G4LogicalVolume &  topVolume,
geometry::GeometryTypes  type 
)
overridevirtual

Function to actually create the geometry, has to be overridden by derived classes.

Parameters
contentGearDir pointing to the parameters which should be used for construction
topVolumeTop volume in which the geometry has to be placed
typeType of geometry to be build

Implements CreatorBase.

Definition at line 77 of file GeoECLCreator.cc.

◆ createFromDB()

void createFromDB ( const std::string &  name,
G4LogicalVolume &  topVolume,
geometry::GeometryTypes  type 
)
overridevirtual

Function to create the geometry from the Database.

Parameters
namename of the component in the database, could be used to disambiguate multiple components created with the same creator
topVolumeTop volume in which the geometry has to be placed
typeType of geometry to be build

Reimplemented from CreatorBase.

Definition at line 57 of file GeoECLCreator.cc.

◆ createPayloads()

void createPayloads ( const GearDir content,
const IntervalOfValidity iov 
)
overridevirtual

Function to create the geometry database.

This function should be implemented to convert Gearbox parameters to one ore more database payloads

Parameters
contentGearDir pointing to the parameters which should be used for construction
iovinterval of validity to use when generating payloads

Reimplemented from CreatorBase.

Definition at line 71 of file GeoECLCreator.cc.


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