EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
ActsExamples::Contextual::AlignmentDecorator Class Reference

A mockup service that rotates the modules in a simple tracking geometry. More...

#include <acts/blob/sPHENIX/Examples/Detectors/ContextualDetector/include/ActsExamples/ContextualDetector/AlignmentDecorator.hpp>

+ Inheritance diagram for ActsExamples::Contextual::AlignmentDecorator:
+ Collaboration diagram for ActsExamples::Contextual::AlignmentDecorator:

Classes

struct  Config
 nested configuration struct More...
 

Public Types

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

Public Member Functions

 AlignmentDecorator (const Config &cfg, std::unique_ptr< const Acts::Logger > logger=Acts::getDefaultLogger("AlignmentDecorator", Acts::Logging::INFO))
 
virtual ~AlignmentDecorator ()=default
 Virtual destructor.
 
ProcessCode decorate (AlgorithmContext &context) finaloverride
 decorates (adds, modifies) the AlgorithmContext with a geometric rotation per event
 
const std::string & name () const finaloverride
 decorator name() for screen output
 
- Public Member Functions inherited from ActsExamples::IContextDecorator
virtual ~IContextDecorator ()=default
 Virtual destructor.
 

Private Member Functions

const Acts::Loggerlogger () const
 Private access to the logging instance.
 

Private Attributes

Config m_cfg
 the configuration class
 
std::unique_ptr< const
Acts::Logger
m_logger
 
std::string m_name = "AlignmentDecorator"
 !< the logging instance
 
std::mutex m_alignmentMutex
 
std::vector< bool > m_iovStatus
 
std::vector< bool > m_flushStatus
 

Detailed Description

A mockup service that rotates the modules in a simple tracking geometry.

It acts on the PayloadDetectorElement, i.e. the geometry context carries the full transform store (payload)

Definition at line 30 of file AlignmentDecorator.hpp.

View newest version in sPHENIX GitHub at line 30 of file AlignmentDecorator.hpp

Member Typedef Documentation

Definition at line 33 of file AlignmentDecorator.hpp.

View newest version in sPHENIX GitHub at line 33 of file AlignmentDecorator.hpp

Definition at line 32 of file AlignmentDecorator.hpp.

View newest version in sPHENIX GitHub at line 32 of file AlignmentDecorator.hpp

Constructor & Destructor Documentation

ActsExamples::Contextual::AlignmentDecorator::AlignmentDecorator ( const Config cfg,
std::unique_ptr< const Acts::Logger logger = Acts::getDefaultLogger("AlignmentDecorator",                                                Acts::Logging::INFO) 
)

Constructor

Parameters
cfgConfiguration struct
loggerThe logging framework

Definition at line 15 of file AlignmentDecorator.cpp.

View newest version in sPHENIX GitHub at line 15 of file AlignmentDecorator.cpp

virtual ActsExamples::Contextual::AlignmentDecorator::~AlignmentDecorator ( )
virtualdefault

Virtual destructor.

Member Function Documentation

ActsExamples::ProcessCode ActsExamples::Contextual::AlignmentDecorator::decorate ( AlgorithmContext context)
finaloverridevirtual

decorates (adds, modifies) the AlgorithmContext with a geometric rotation per event

Note
If decorators depend on each other, they have to be added in order.
Parameters
contextthe bare (or at least non-const) Event context

Implements ActsExamples::IContextDecorator.

Definition at line 21 of file AlignmentDecorator.cpp.

View newest version in sPHENIX GitHub at line 21 of file AlignmentDecorator.cpp

References ACTS_VERBOSE, ActsExamples::AlgorithmContext::eventNumber, Acts::Test::gauss(), ActsExamples::AlgorithmContext::geoContext, and SUCCESS.

+ Here is the call graph for this function:

const Acts::Logger& ActsExamples::Contextual::AlignmentDecorator::logger ( ) const
inlineprivate

Private access to the logging instance.

Definition at line 94 of file AlignmentDecorator.hpp.

View newest version in sPHENIX GitHub at line 94 of file AlignmentDecorator.hpp

References m_logger.

const std::string& ActsExamples::Contextual::AlignmentDecorator::name ( ) const
inlinefinaloverridevirtual

decorator name() for screen output

Implements ActsExamples::IContextDecorator.

Definition at line 81 of file AlignmentDecorator.hpp.

View newest version in sPHENIX GitHub at line 81 of file AlignmentDecorator.hpp

References m_name.

Referenced by eicpy.verify.PythiaHistograms::__init__(), and eicpy.verify.DjangohHistograms::__init__().

+ Here is the caller graph for this function:

Member Data Documentation

std::mutex ActsExamples::Contextual::AlignmentDecorator::m_alignmentMutex
private

Definition at line 89 of file AlignmentDecorator.hpp.

View newest version in sPHENIX GitHub at line 89 of file AlignmentDecorator.hpp

Config ActsExamples::Contextual::AlignmentDecorator::m_cfg
private

the configuration class

Definition at line 84 of file AlignmentDecorator.hpp.

View newest version in sPHENIX GitHub at line 84 of file AlignmentDecorator.hpp

std::vector<bool> ActsExamples::Contextual::AlignmentDecorator::m_flushStatus
private

Definition at line 91 of file AlignmentDecorator.hpp.

View newest version in sPHENIX GitHub at line 91 of file AlignmentDecorator.hpp

std::vector<bool> ActsExamples::Contextual::AlignmentDecorator::m_iovStatus
private

Definition at line 90 of file AlignmentDecorator.hpp.

View newest version in sPHENIX GitHub at line 90 of file AlignmentDecorator.hpp

std::unique_ptr<const Acts::Logger> ActsExamples::Contextual::AlignmentDecorator::m_logger
private

Definition at line 85 of file AlignmentDecorator.hpp.

View newest version in sPHENIX GitHub at line 85 of file AlignmentDecorator.hpp

Referenced by logger().

std::string ActsExamples::Contextual::AlignmentDecorator::m_name = "AlignmentDecorator"
private

!< the logging instance

protect multiple alignments to be loaded at once

Definition at line 86 of file AlignmentDecorator.hpp.

View newest version in sPHENIX GitHub at line 86 of file AlignmentDecorator.hpp

Referenced by name().


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