EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
ActsExamples::Generic::ProtoLayerCreatorT< detector_element_t > Class Template Reference

#include <acts/blob/sPHENIX/Examples/Detectors/GenericDetector/include/ActsExamples/GenericDetector/ProtoLayerCreatorT.hpp>

+ Collaboration diagram for ActsExamples::Generic::ProtoLayerCreatorT< detector_element_t >:

Classes

struct  Config
 

Public Types

using LayerStore = std::vector< std::shared_ptr< detector_element_t >>
 
using DetectorStore = std::vector< LayerStore >
 

Public Member Functions

 ProtoLayerCreatorT (const Config &glbConfig, std::unique_ptr< const Acts::Logger > logger=Acts::getDefaultLogger("ProtoLayerCreatorT", Acts::Logging::INFO))
 
std::vector< ProtoLayerSurfacesnegativeProtoLayers (const Acts::GeometryContext &gctx, DetectorStore &detectorStore) const
 construct the negative side layers
 
std::vector< ProtoLayerSurfacescentralProtoLayers (const Acts::GeometryContext &gctx, DetectorStore &detectorStore) const
 construct the central layers
 
std::vector< ProtoLayerSurfacespositiveProtoLayers (const Acts::GeometryContext &gctx, DetectorStore &detectorStore) const
 construct the positive side layers
 

Private Member Functions

std::vector< ProtoLayerSurfacescreateProtoLayers (const Acts::GeometryContext &gctx, DetectorStore &detectorStore, int side) const
 private helper method to create the proto layers on the left respectively right side
 
const Acts::Loggerlogger () const
 Private access to the logging instance.
 

Private Attributes

Config m_cfg
 Configuration member.
 
std::unique_ptr< const
Acts::Logger
m_logger
 the logging instance
 

Detailed Description

template<typename detector_element_t>
class ActsExamples::Generic::ProtoLayerCreatorT< detector_element_t >

The ProtoLayerCreatorT is the first setp in creating a geometry from code input, it creates the ProtoLayer and returns the created detector elements for the DetectorStore emulation

Definition at line 62 of file ProtoLayerCreatorT.hpp.

View newest version in sPHENIX GitHub at line 62 of file ProtoLayerCreatorT.hpp

Member Typedef Documentation

template<typename detector_element_t >
using ActsExamples::Generic::ProtoLayerCreatorT< detector_element_t >::DetectorStore = std::vector<LayerStore>

Definition at line 66 of file ProtoLayerCreatorT.hpp.

View newest version in sPHENIX GitHub at line 66 of file ProtoLayerCreatorT.hpp

template<typename detector_element_t >
using ActsExamples::Generic::ProtoLayerCreatorT< detector_element_t >::LayerStore = std::vector<std::shared_ptr<detector_element_t>>

Definition at line 64 of file ProtoLayerCreatorT.hpp.

View newest version in sPHENIX GitHub at line 64 of file ProtoLayerCreatorT.hpp

Constructor & Destructor Documentation

template<typename detector_element_t >
ActsExamples::Generic::ProtoLayerCreatorT< detector_element_t >::ProtoLayerCreatorT ( const Config glbConfig,
std::unique_ptr< const Acts::Logger logger = Acts::getDefaultLogger("ProtoLayerCreatorT< detector_element_t >",                                                Acts::Logging::INFO) 
)

Constructor

Parameters
glbConfigis the configuration class
loggeris the logging class for screen output

Definition at line 395 of file ProtoLayerCreatorT.hpp.

View newest version in sPHENIX GitHub at line 395 of file ProtoLayerCreatorT.hpp

Member Function Documentation

template<typename detector_element_t >
std::vector< ProtoLayerSurfaces > ActsExamples::Generic::ProtoLayerCreatorT< detector_element_t >::centralProtoLayers ( const Acts::GeometryContext gctx,
DetectorStore detectorStore 
) const

construct the central layers

Parameters
gctxThe geometry context for this construction call
detectorStoreThe reference store for the detector elements
Returns
the protolayers and surfaces on the central detector side

Definition at line 201 of file ProtoLayerCreatorT.hpp.

View newest version in sPHENIX GitHub at line 201 of file ProtoLayerCreatorT.hpp

References ACTS_DEBUG, ACTS_VERBOSE, ACTS_WARNING, Acts::binR, Acts::binZ, boost::const_pointer_cast(), cos(), Acts::ProtoLayer::envelope, Acts::Test::moduleBounds, and phi.

+ Here is the call graph for this function:

template<typename detector_element_t >
std::vector< ProtoLayerSurfaces > ActsExamples::Generic::ProtoLayerCreatorT< detector_element_t >::createProtoLayers ( const Acts::GeometryContext gctx,
DetectorStore detectorStore,
int  side 
) const
private

private helper method to create the proto layers on the left respectively right side

Parameters
gctxThe geometry context for this construction call
detectorStoreThe reference store for the detector elements
sideis the indiciator whether to build on negative/positive
Returns
the protolayers and surfaces on the neg/pos detector side

this is the loop over th elayer positions

some preparation work

Definition at line 402 of file ProtoLayerCreatorT.hpp.

View newest version in sPHENIX GitHub at line 402 of file ProtoLayerCreatorT.hpp

References ACTS_DEBUG, ACTS_VERBOSE, Acts::binR, Acts::binZ, boost::const_pointer_cast(), cos(), Acts::ProtoLayer::envelope, Acts::Test::moduleBounds, and phi.

+ Here is the call graph for this function:

template<typename detector_element_t >
const Acts::Logger& ActsExamples::Generic::ProtoLayerCreatorT< detector_element_t >::logger ( ) const
inlineprivate

Private access to the logging instance.

Definition at line 196 of file ProtoLayerCreatorT.hpp.

View newest version in sPHENIX GitHub at line 196 of file ProtoLayerCreatorT.hpp

References ActsExamples::Generic::ProtoLayerCreatorT< detector_element_t >::m_logger.

template<typename detector_element_t >
std::vector< ProtoLayerSurfaces > ActsExamples::Generic::ProtoLayerCreatorT< detector_element_t >::negativeProtoLayers ( const Acts::GeometryContext gctx,
DetectorStore detectorStore 
) const

construct the negative side layers

Parameters
gctxThe geometry context for this construction call
detectorStoreThe reference store for the detector elements
Returns
the protolayers and surfaces on the negative detector side

Definition at line 382 of file ProtoLayerCreatorT.hpp.

View newest version in sPHENIX GitHub at line 382 of file ProtoLayerCreatorT.hpp

template<typename detector_element_t >
std::vector< ProtoLayerSurfaces > ActsExamples::Generic::ProtoLayerCreatorT< detector_element_t >::positiveProtoLayers ( const Acts::GeometryContext gctx,
DetectorStore detectorStore 
) const

construct the positive side layers

Parameters
gctxThe geometry context for this construction call
detectorStoreThe reference store for the detector elements
Returns
the protolayers and surfaces on the positive detector side

Definition at line 389 of file ProtoLayerCreatorT.hpp.

View newest version in sPHENIX GitHub at line 389 of file ProtoLayerCreatorT.hpp

Member Data Documentation

template<typename detector_element_t >
Config ActsExamples::Generic::ProtoLayerCreatorT< detector_element_t >::m_cfg
private

Configuration member.

Definition at line 190 of file ProtoLayerCreatorT.hpp.

View newest version in sPHENIX GitHub at line 190 of file ProtoLayerCreatorT.hpp

template<typename detector_element_t >
std::unique_ptr<const Acts::Logger> ActsExamples::Generic::ProtoLayerCreatorT< detector_element_t >::m_logger
private

the logging instance

Definition at line 193 of file ProtoLayerCreatorT.hpp.

View newest version in sPHENIX GitHub at line 193 of file ProtoLayerCreatorT.hpp

Referenced by ActsExamples::Generic::ProtoLayerCreatorT< detector_element_t >::logger().


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