ATLAS Offline Software
Loading...
Searching...
No Matches
xAOD::AuxiliaryMeasurement_v1 Class Reference

Implementation of an uncalibrated AuxiliaryMeasurement which may serve as an external constraint in the track fit. More...

#include <AuxiliaryMeasurement_v1.h>

Inheritance diagram for xAOD::AuxiliaryMeasurement_v1:
Collaboration diagram for xAOD::AuxiliaryMeasurement_v1:

Public Types

using SurfLink_t = ElementLink<xAOD::TrackSurfaceContainer>
 Surfaces are passed via xAOD::TrackSurfaces which are internally converted by the measurement class into Acts surfaces.
using SurfacePtr_t = std::shared_ptr<const Acts::Surface>
using ProjectorType = ActsTrk::detail::MeasurementCalibratorBase::ProjectorType
 Use the calibration projector.

Public Member Functions

UncalibMeasType type () const override final
 Returns the measurement type.
 AuxiliaryMeasurement_v1 ()=default
 Default constructor.
virtual unsigned numDimensions () const override final
 number of dimensions
const SurfLink_tsurfaceLink () const
 Returns the link to the associated xAOD::TrackSurface.
const SurfacePtr_tsurface () const
 Returns the reference to the Acts::Surface.
void setSurface (const SurfacePtr_t &surfPtr, SurfLink_t &&surfLink)
 Associates a surface with the Auxiliary measurement together with its persitifiable surface link.
ProjectorType calibProjector () const
 Returns the calibration projector.
void setProjector (ProjectorType proj)
 Sets the calibration projector.
Functions to get measurement properties
DetectorIDHashType identifierHash () const
 Returns the IdentifierHash of the measurement (corresponds to the detector element IdentifierHash).
DetectorIdentType identifier () const
 Returns the full Identifier of the measurement.
template<int N>
ConstVectorMap< N > localPosition () const
 Returns the local position of the measurement.
template<int N>
VectorMap< N > localPosition ()
 Returns the local position as mutable eigen map which can be assigned as well.
template<int N>
ConstMatrixMap< N > localCovariance () const
 Returns the local covariance of the measurement.
template<int N>
MatrixMap< N > localCovariance ()
 Returns the local covariance as mutable eigen map which can be assigned as well.
Functions to set measurement properties
void setIdentifierHash (const DetectorIDHashType idHash)
 Sets the IdentifierHash of the measurement (corresponds to the detector element IdentifierHash).
void setIdentifier (const DetectorIdentType measId)
 Sets the full Identifier of the measurement.
Direct method to set measurement properties
template<int N>
void setMeasurement (const DetectorIDHashType idHash, MeasVector< N > locPos, MeasMatrix< N > locCov)
 Sets IdentifierHash, local position and local covariance of the measurement.

Private Attributes

CxxUtils::CachedValue< SurfacePtr_tm_surface {}

Detailed Description

Implementation of an uncalibrated AuxiliaryMeasurement which may serve as an external constraint in the track fit.

The pseudo measurement is always expressed at the origin of the associated surface.

Definition at line 24 of file AuxiliaryMeasurement_v1.h.

Member Typedef Documentation

◆ ProjectorType

◆ SurfacePtr_t

using xAOD::AuxiliaryMeasurement_v1::SurfacePtr_t = std::shared_ptr<const Acts::Surface>

Definition at line 42 of file AuxiliaryMeasurement_v1.h.

◆ SurfLink_t

Surfaces are passed via xAOD::TrackSurfaces which are internally converted by the measurement class into Acts surfaces.

The xAOD::TrackSurfaces can be persitified later

Definition at line 37 of file AuxiliaryMeasurement_v1.h.

Constructor & Destructor Documentation

◆ AuxiliaryMeasurement_v1()

xAOD::AuxiliaryMeasurement_v1::AuxiliaryMeasurement_v1 ( )
default

Default constructor.

Member Function Documentation

◆ calibProjector()

ProjectorType xAOD::AuxiliaryMeasurement_v1::calibProjector ( ) const

Returns the calibration projector.

◆ identifier()

DetectorIdentType xAOD::UncalibratedMeasurement_v1::identifier ( ) const
inherited

Returns the full Identifier of the measurement.

◆ identifierHash()

DetectorIDHashType xAOD::UncalibratedMeasurement_v1::identifierHash ( ) const
inherited

Returns the IdentifierHash of the measurement (corresponds to the detector element IdentifierHash).

◆ localCovariance() [1/2]

template<int N>
MatrixMap< N > xAOD::UncalibratedMeasurement_v1::localCovariance ( )
inherited

Returns the local covariance as mutable eigen map which can be assigned as well.

◆ localCovariance() [2/2]

template<int N>
ConstMatrixMap< N > xAOD::UncalibratedMeasurement_v1::localCovariance ( ) const
inherited

Returns the local covariance of the measurement.

◆ localPosition() [1/2]

template<int N>
VectorMap< N > xAOD::UncalibratedMeasurement_v1::localPosition ( )
inherited

Returns the local position as mutable eigen map which can be assigned as well.

◆ localPosition() [2/2]

template<int N>
ConstVectorMap< N > xAOD::UncalibratedMeasurement_v1::localPosition ( ) const
inherited

Returns the local position of the measurement.

◆ numDimensions()

unsigned xAOD::AuxiliaryMeasurement_v1::numDimensions ( ) const
finaloverridevirtual

number of dimensions

Implements xAOD::UncalibratedMeasurement_v1.

Definition at line 18 of file AuxiliaryMeasurement_v1.cxx.

18 {
19 switch (calibProjector()){
20 using enum ProjectorType;
21 case e1DimNoTime:
22 case e1DimRotNoTime:
23 return 1;
24 case e2DimNoTime:
25 case e1DimWithTime:
26 case e1DimRotWithTime:
27 return 2;
28 case e2DimWithTime:
29 return 3;
30 };
31 return 0;
32 }
ProjectorType calibProjector() const
Returns the calibration projector.
ActsTrk::detail::MeasurementCalibratorBase::ProjectorType ProjectorType
Use the calibration projector.

◆ setIdentifier()

void xAOD::UncalibratedMeasurement_v1::setIdentifier ( const DetectorIdentType measId)
inherited

Sets the full Identifier of the measurement.

◆ setIdentifierHash()

void xAOD::UncalibratedMeasurement_v1::setIdentifierHash ( const DetectorIDHashType idHash)
inherited

Sets the IdentifierHash of the measurement (corresponds to the detector element IdentifierHash).

◆ setMeasurement()

template<int N>
void xAOD::UncalibratedMeasurement_v1::setMeasurement ( const DetectorIDHashType idHash,
MeasVector< N > locPos,
MeasMatrix< N > locCov )
inherited

Sets IdentifierHash, local position and local covariance of the measurement.

◆ setProjector()

void xAOD::AuxiliaryMeasurement_v1::setProjector ( ProjectorType proj)

Sets the calibration projector.

◆ setSurface()

void xAOD::AuxiliaryMeasurement_v1::setSurface ( const SurfacePtr_t & surfPtr,
SurfLink_t && surfLink )

Associates a surface with the Auxiliary measurement together with its persitifiable surface link.

Parameters
surfPtrPointer to the transient Acts::Surface
surfLinkLink to the persitifiable surface

Definition at line 37 of file AuxiliaryMeasurement_v1.cxx.

38 {
39 m_surface.reset();
40 acc_surfLink(*this) = std::move(link);
41 m_surface.set(surfPtr);
42 }
CxxUtils::CachedValue< SurfacePtr_t > m_surface

◆ surface()

const AuxiliaryMeasurement_v1::SurfacePtr_t & xAOD::AuxiliaryMeasurement_v1::surface ( ) const

Returns the reference to the Acts::Surface.

Surfaces associated with pseudo measurements are never alignable

Definition at line 44 of file AuxiliaryMeasurement_v1.cxx.

44 {
45 if (!m_surface.isValid()) {
46 SurfLink_t assocLink = surfaceLink();
47 assert(assocLink.isValid());
49 m_surface.set(ActsTrk::decodeSurface(*assocLink));
50 }
51 return *m_surface.ptr();
52 }
ElementLink< xAOD::TrackSurfaceContainer > SurfLink_t
Surfaces are passed via xAOD::TrackSurfaces which are internally converted by the measurement class i...
const SurfLink_t & surfaceLink() const
Returns the link to the associated xAOD::TrackSurface.
std::shared_ptr< const Acts::Surface > decodeSurface(const xAOD::TrackSurface *backend)
Creates transient Acts Surface objects given a surface backend implementation should be exact mirror ...

◆ surfaceLink()

const SurfLink_t & xAOD::AuxiliaryMeasurement_v1::surfaceLink ( ) const

Returns the link to the associated xAOD::TrackSurface.


It maybe invalid if not set before

Definition at line 34 of file AuxiliaryMeasurement_v1.cxx.

34 {
35 return acc_surfLink(*this);
36 }

◆ type()

UncalibMeasType xAOD::AuxiliaryMeasurement_v1::type ( ) const
inlinefinaloverridevirtual

Returns the measurement type.

Implements xAOD::UncalibratedMeasurement_v1.

Definition at line 27 of file AuxiliaryMeasurement_v1.h.

Member Data Documentation

◆ m_surface

CxxUtils::CachedValue<SurfacePtr_t> xAOD::AuxiliaryMeasurement_v1::m_surface {}
private

Definition at line 61 of file AuxiliaryMeasurement_v1.h.

61{};

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