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

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

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

Classes

class  ContextType
 

Public Member Functions

template<typename... Args>
 AlignedDetectorElement (Args &&...args)
 
const Acts::Transform3Dtransform (const Acts::GeometryContext &gctx) const finaloverride
 
const Acts::Transform3DnominalTransform (const Acts::GeometryContext &gctx) const
 
void addAlignedTransform (std::unique_ptr< Acts::Transform3D > alignedTransform, unsigned int iov)
 
const std::vector
< std::unique_ptr
< Acts::Transform3D > > & 
alignedTransforms () const
 Return the set of alignment transforms in flight.
 
- Public Member Functions inherited from ActsExamples::Generic::GenericDetectorElement
 GenericDetectorElement (const Identifier identifier, std::shared_ptr< const Acts::Transform3D > transform, std::shared_ptr< const Acts::PlanarBounds > pBounds, double thickness, std::shared_ptr< const Acts::ISurfaceMaterial > material=nullptr, std::shared_ptr< const Acts::DigitizationModule > digitzationModule=nullptr)
 
 GenericDetectorElement (const Identifier identifier, std::shared_ptr< const Acts::Transform3D > transform, std::shared_ptr< const Acts::DiscBounds > dBounds, double thickness, std::shared_ptr< const Acts::ISurfaceMaterial > material=nullptr, std::shared_ptr< const Acts::DigitizationModule > digitzationModule=nullptr)
 
Identifier identifier () const overridefinal
 Identifier.
 
const Acts::Transform3Dtransform (const Acts::GeometryContext &gctx) const override
 
const Acts::Surfacesurface () const finaloverride
 Return surface associated with this identifier,.
 
void assignIdentifier (const Identifier &identifier)
 Set the identifier after construction (sometimes needed)
 
double thickness () const finaloverride
 The maximal thickness of the detector element wrt normal axis.
 
const std::shared_ptr< const
Acts::DigitizationModule
digitizationModule () const finaloverride
 Retrieve the DigitizationModule.
 

Private Attributes

std::vector< std::unique_ptr
< Acts::Transform3D > > 
m_alignedTransforms
 

Additional Inherited Members

- Public Types inherited from ActsExamples::Generic::GenericDetectorElement
using ContextType = Acts::GeometryContext
 Broadcast the ContextType.
 

Detailed Description

This is a lightweight type of detector element, it simply implements the base class.

The AlignedDetectorElement demonstrates how a GeometryContext can be used if it carries an intervall of validity concept

The nominal transform is only used to once create the alignment store and then in a contextual call the actual detector element position is taken internal multi component store - the latter has to be filled though from an external source

Definition at line 37 of file AlignedDetectorElement.hpp.

View newest version in sPHENIX GitHub at line 37 of file AlignedDetectorElement.hpp

Constructor & Destructor Documentation

template<typename... Args>
ActsExamples::Contextual::AlignedDetectorElement::AlignedDetectorElement ( Args &&...  args)
inline

Constructor for an alignable surface

Note
see Generic::GenericDetectorElement for documentation

Definition at line 50 of file AlignedDetectorElement.hpp.

View newest version in sPHENIX GitHub at line 50 of file AlignedDetectorElement.hpp

Member Function Documentation

void ActsExamples::Contextual::AlignedDetectorElement::addAlignedTransform ( std::unique_ptr< Acts::Transform3D alignedTransform,
unsigned int  iov 
)
inline

Return local to global transform associated with this identifier

Parameters
alignedTransformis a new transform iov is the batch for which it is meant

Definition at line 99 of file AlignedDetectorElement.hpp.

View newest version in sPHENIX GitHub at line 99 of file AlignedDetectorElement.hpp

References m_alignedTransforms.

const std::vector< std::unique_ptr< Acts::Transform3D > > & ActsExamples::Contextual::AlignedDetectorElement::alignedTransforms ( ) const
inline

Return the set of alignment transforms in flight.

Definition at line 110 of file AlignedDetectorElement.hpp.

View newest version in sPHENIX GitHub at line 110 of file AlignedDetectorElement.hpp

References m_alignedTransforms.

const Acts::Transform3D & ActsExamples::Contextual::AlignedDetectorElement::nominalTransform ( const Acts::GeometryContext gctx) const
inline

Return the nominal local to global transform

Note
the geometry context will hereby be ignored

Definition at line 94 of file AlignedDetectorElement.hpp.

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

References Acts::Test::transform.

Referenced by transform().

+ Here is the caller graph for this function:

const Acts::Transform3D & ActsExamples::Contextual::AlignedDetectorElement::transform ( const Acts::GeometryContext gctx) const
inlinefinaloverridevirtual

Return local to global transform associated with this identifier

Parameters
gctxThe current geometry context object, e.g. alignment
Note
this is called from the surface().transform(gctx)

Implements Acts::DetectorElementBase.

Definition at line 82 of file AlignedDetectorElement.hpp.

View newest version in sPHENIX GitHub at line 82 of file AlignedDetectorElement.hpp

References Acts::Test::gctx, m_alignedTransforms, and nominalTransform().

+ Here is the call graph for this function:

Member Data Documentation

std::vector<std::unique_ptr<Acts::Transform3D> > ActsExamples::Contextual::AlignedDetectorElement::m_alignedTransforms
private

Definition at line 79 of file AlignedDetectorElement.hpp.

View newest version in sPHENIX GitHub at line 79 of file AlignedDetectorElement.hpp

Referenced by addAlignedTransform(), alignedTransforms(), and transform().


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