ATLAS Offline Software
Loading...
Searching...
No Matches
HGTD_ClusterOnTrack Class Reference

#include <HGTD_ClusterOnTrack.h>

Inheritance diagram for HGTD_ClusterOnTrack:
Collaboration diagram for HGTD_ClusterOnTrack:

Public Member Functions

 HGTD_ClusterOnTrack ()
 HGTD_ClusterOnTrack (const HGTD_ClusterOnTrack &)=default
HGTD_ClusterOnTrackoperator= (const HGTD_ClusterOnTrack &)=default
 HGTD_ClusterOnTrack (HGTD_ClusterOnTrack &&)=default
HGTD_ClusterOnTrackoperator= (HGTD_ClusterOnTrack &&)=default
 HGTD_ClusterOnTrack (const HGTD_Cluster *rio, Trk::LocalParameters &&locpars, Amg::MatrixX &&locerr, const float calib_time, const float calib_time_res, const IdentifierHash &id_hash)
 Constructor with parameters.
 HGTD_ClusterOnTrack (const HGTD_Cluster *rio, Trk::LocalParameters &&locpars, Amg::MatrixX &&locerr, const float calib_time, const float calib_time_res, const IdentifierHash &idDE, const Amg::Vector3D &global_position)
 Constructor with parameters.
virtual HGTD_ClusterOnTrackclone () const override final
 Pseudo-constructor : needed to avoid excessive RTTI.
virtual const Trk::SurfaceassociatedSurface () const override final
 returns the surface for the local to global transformation
virtual bool rioType (Trk::RIO_OnTrackType::Type type) const override final
 Method checking the Rio On Track type.
virtual const InDetDD::SolidStateDetectorElementBasedetectorElement () const override final
 returns the detector element, assoicated with the PRD of this class
virtual const HGTD_ClusterprepRawData () const override final
 returns the PrepRawData - is a SiCluster in this scope
virtual const Amg::Vector3DglobalPosition () const override final
 returns global position (gathered through Surface constraint)
virtual IdentifierHash idDE () const override final
 returns the DE hashID*
virtual MsgStream & dump (MsgStream &out) const override final
 returns some information about this RIO_OnTrack.
virtual std::ostream & dump (std::ostream &out) const override final
 returns some information about this RIO_OnTrack.
virtual float time () const
virtual float timeResolution () const
std::unique_ptr< RIO_OnTrackuniqueClone () const
 NVI clone returning unique_ptr.
virtual bool type (MeasurementBaseType::Type type) const override final
 Extended method checking the type.
Identifier identify () const
 return the identifier -extends MeasurementBase
const LocalParameters & localParameters () const
 Interface method to get the LocalParameters.
const Amg::MatrixXlocalCovariance () const
 Interface method to get the localError.

Static Public Member Functions

static std::size_t numberOfInstantiations ()

Static Public Attributes

static std::atomic_size_t s_numberOfInstantiations

Protected Attributes

const InDetDD::SolidStateDetectorElementBasem_det_el
 Detector element associated to this cluster on track.
IdentifierHash m_id_hash
 The IdentifierHash - needed to comply with RIO_OnTrack interface, currently not used.
Amg::Vector3D m_global_position
 The global position, managed by the cluster on track.
Identifier m_identifier {}
 Identifier of the RIO_OnTrack (comes from the associated Trk::PrepRawData)
LocalParameters m_localParams
Amg::MatrixX m_localCovariance

Private Member Functions

virtual void setValues (const Trk::TrkDetElementBase *det_el, const Trk::PrepRawData *prd) override final
 ONLY for use in custom convertor Allows the custom convertor to reset values when persistying/reading back RoTs.

Private Attributes

float m_calibrated_time
float m_calibrated_time_resolution
ElementLink< HGTD_ClusterContainerm_rio

Detailed Description

Definition at line 27 of file HGTD_ClusterOnTrack.h.

Constructor & Destructor Documentation

◆ HGTD_ClusterOnTrack() [1/5]

HGTD_ClusterOnTrack::HGTD_ClusterOnTrack ( )

Definition at line 17 of file HGTD_ClusterOnTrack.cxx.

18 : RIO_OnTrack(),
19 m_det_el(nullptr),
20 m_id_hash(),
IdentifierHash m_id_hash
The IdentifierHash - needed to comply with RIO_OnTrack interface, currently not used.
Amg::Vector3D m_global_position
The global position, managed by the cluster on track.
const InDetDD::SolidStateDetectorElementBase * m_det_el
Detector element associated to this cluster on track.
RIO_OnTrack()=default
Default Constructor for POOL.

◆ HGTD_ClusterOnTrack() [2/5]

HGTD_ClusterOnTrack::HGTD_ClusterOnTrack ( const HGTD_ClusterOnTrack & )
default

◆ HGTD_ClusterOnTrack() [3/5]

HGTD_ClusterOnTrack::HGTD_ClusterOnTrack ( HGTD_ClusterOnTrack && )
default

◆ HGTD_ClusterOnTrack() [4/5]

HGTD_ClusterOnTrack::HGTD_ClusterOnTrack ( const HGTD_Cluster * rio,
Trk::LocalParameters && locpars,
Amg::MatrixX && locerr,
const float calib_time,
const float calib_time_res,
const IdentifierHash & id_hash )

Constructor with parameters.

The time and time resolution are not the time and time resolution of the HGTD_Cluster, but calibrated using information from the track the hit got assigned to.

Parameters
[in]rioCluster in HGTD associated to the tack.
[in]locparsLocal track parameters.
[in]locerrTrack parameter ovariance matrix.
[in]calib_timeCalibrated time measured in HGTD.
[in]calib_time_resTime resolution including propagated impact parameter resolution.
[in]id_hashHash identifier of the HGTD_Cluster. Needed to fullfill the Trk::RIO_OnTrack interface.

Definition at line 26 of file HGTD_ClusterOnTrack.cxx.

32 : RIO_OnTrack(std::move(locpars), std::move(locerr), rio->identify()),
34 m_id_hash(id_hash),
35 m_calibrated_time(calib_time),
36 m_calibrated_time_resolution(calib_time_res) {
37 m_rio.setElement(rio);
38}
ElementLink< HGTD_ClusterContainer > m_rio
virtual const InDetDD::SolidStateDetectorElementBase * detectorElement() const override
return the detector element corresponding to this PRD The pointer will be zero if the det el is not d...
Identifier identify() const
return the identifier

◆ HGTD_ClusterOnTrack() [5/5]

HGTD_ClusterOnTrack::HGTD_ClusterOnTrack ( const HGTD_Cluster * rio,
Trk::LocalParameters && locpars,
Amg::MatrixX && locerr,
const float calib_time,
const float calib_time_res,
const IdentifierHash & idDE,
const Amg::Vector3D & global_position )

Constructor with parameters.

The time and time resolution are not the time and time resolution of the HGTD_Cluster, but calibrated using information from the track the hit got assigned to.

Parameters
[in]rioCluster in HGTD associated to the tack.
[in]locparsLocal track parameters.
[in]locerrTrack parameter ovariance matrix.
[in]calib_timeCalibrated time measured in HGTD.
[in]calib_time_resTime resolution including propagated impact parameter resolution.
[in]id_hashHash identifier of the HGTD_Cluster. Needed to fullfill the Trk::RIO_OnTrack interface.

Definition at line 41 of file HGTD_ClusterOnTrack.cxx.

48 : RIO_OnTrack(std::move(locpars), std::move(locerr), rio->identify()),
50 m_id_hash(id_hash),
51 m_global_position(global_position),
52 m_calibrated_time(calib_time),
53 m_calibrated_time_resolution(calib_time_res) {
54 m_rio.setElement(rio);
55}

Member Function Documentation

◆ associatedSurface()

const Trk::Surface & HGTD_ClusterOnTrack::associatedSurface ( ) const
finaloverridevirtual

returns the surface for the local to global transformation

Implements Trk::RIO_OnTrack.

Definition at line 57 of file HGTD_ClusterOnTrack.cxx.

57 {
58 return (detectorElement()->surface());
59}
virtual const InDetDD::SolidStateDetectorElementBase * detectorElement() const override final
returns the detector element, assoicated with the PRD of this class

◆ clone()

HGTD_ClusterOnTrack * HGTD_ClusterOnTrack::clone ( ) const
inlinefinaloverridevirtual

Pseudo-constructor : needed to avoid excessive RTTI.

Implements Trk::RIO_OnTrack.

Definition at line 145 of file HGTD_ClusterOnTrack.h.

145 {
146 return new HGTD_ClusterOnTrack(*this);
147}

◆ detectorElement()

const InDetDD::SolidStateDetectorElementBase * HGTD_ClusterOnTrack::detectorElement ( ) const
inlinefinaloverridevirtual

returns the detector element, assoicated with the PRD of this class

Implements Trk::RIO_OnTrack.

Definition at line 157 of file HGTD_ClusterOnTrack.h.

157 {
158 return m_det_el;
159}

◆ dump() [1/2]

MsgStream & HGTD_ClusterOnTrack::dump ( MsgStream & out) const
finaloverridevirtual

returns some information about this RIO_OnTrack.

Reimplemented from Trk::RIO_OnTrack.

Definition at line 65 of file HGTD_ClusterOnTrack.cxx.

65 {
66 sl << "HGTD_ClusterOnTrack {" << endmsg;
67
69
70 sl << "Global position (x,y,z) = (";
71 sl << this->globalPosition().x() << ", " << this->globalPosition().y()
72 << ", " << this->globalPosition().z() << ")" << endmsg;
73 sl << "}" << endmsg;
74 return sl;
75}
#define endmsg
virtual const Amg::Vector3D & globalPosition() const override final
returns global position (gathered through Surface constraint)
virtual MsgStream & dump(MsgStream &out) const override
returns the some information about this RIO_OnTrack.

◆ dump() [2/2]

std::ostream & HGTD_ClusterOnTrack::dump ( std::ostream & out) const
finaloverridevirtual

returns some information about this RIO_OnTrack.

Reimplemented from Trk::RIO_OnTrack.

Definition at line 77 of file HGTD_ClusterOnTrack.cxx.

77 {
78 sl << "HGTD_ClusterOnTrack {" << std::endl;
79
81
82 sl << "Global position (x,y,z) = (";
83 sl << this->globalPosition().x() << ", " << this->globalPosition().y()
84 << ", " << this->globalPosition().z() << ")" << std::endl;
85 sl << "}" << std::endl;
86 return sl;
87}

◆ globalPosition()

const Amg::Vector3D & HGTD_ClusterOnTrack::globalPosition ( ) const
finaloverridevirtual

returns global position (gathered through Surface constraint)

Implements Trk::RIO_OnTrack.

Definition at line 61 of file HGTD_ClusterOnTrack.cxx.

61 {
62 return m_global_position;
63}

◆ idDE()

IdentifierHash HGTD_ClusterOnTrack::idDE ( ) const
inlinefinaloverridevirtual

returns the DE hashID*

Implements Trk::RIO_OnTrack.

Definition at line 143 of file HGTD_ClusterOnTrack.h.

143{ return m_id_hash; }

◆ identify()

Identifier Trk::RIO_OnTrack::identify ( ) const
inlineinherited

return the identifier -extends MeasurementBase

Definition at line 152 of file RIO_OnTrack.h.

153 { return m_identifier; }
Identifier m_identifier
Identifier of the RIO_OnTrack (comes from the associated Trk::PrepRawData)

◆ localCovariance()

const Amg::MatrixX & Trk::MeasurementBase::localCovariance ( ) const
inlineinherited

Interface method to get the localError.

Definition at line 138 of file MeasurementBase.h.

139{
140 return m_localCovariance;
141}
Amg::MatrixX m_localCovariance

◆ localParameters()

const Trk::LocalParameters & Trk::MeasurementBase::localParameters ( ) const
inlineinherited

Interface method to get the LocalParameters.

Definition at line 132 of file MeasurementBase.h.

133{
134 return m_localParams;
135}
LocalParameters m_localParams

◆ numberOfInstantiations()

std::size_t Trk::ObjectCounter< Trk::RIO_OnTrack >::numberOfInstantiations ( )
inlinestaticinherited

Definition at line 25 of file TrkObjectCounter.h.

26 {
27#ifndef NDEBUG
28 return s_numberOfInstantiations.load();
29#endif
30 return 0;
31 }
Helper to enable counting number of instantiations in debug builds.

◆ operator=() [1/2]

HGTD_ClusterOnTrack & HGTD_ClusterOnTrack::operator= ( const HGTD_ClusterOnTrack & )
default

◆ operator=() [2/2]

HGTD_ClusterOnTrack & HGTD_ClusterOnTrack::operator= ( HGTD_ClusterOnTrack && )
default

◆ prepRawData()

const HGTD_Cluster * HGTD_ClusterOnTrack::prepRawData ( ) const
inlinefinaloverridevirtual

returns the PrepRawData - is a SiCluster in this scope

Implements Trk::RIO_OnTrack.

Definition at line 149 of file HGTD_ClusterOnTrack.h.

149 {
150 if (m_rio.isValid())
151 return m_rio.cachedElement();
152 else
153 return nullptr;
154}

◆ rioType()

virtual bool HGTD_ClusterOnTrack::rioType ( Trk::RIO_OnTrackType::Type type) const
inlinefinaloverridevirtual

Method checking the Rio On Track type.

Implements Trk::RIO_OnTrack.

Definition at line 86 of file HGTD_ClusterOnTrack.h.

87 {
89 }
virtual bool type(MeasurementBaseType::Type type) const =0
Interface method checking the type.

◆ setValues()

void HGTD_ClusterOnTrack::setValues ( const Trk::TrkDetElementBase * detEl,
const Trk::PrepRawData * prd )
finaloverrideprivatevirtual

ONLY for use in custom convertor Allows the custom convertor to reset values when persistying/reading back RoTs.

Implements Trk::RIO_OnTrack.

Definition at line 89 of file HGTD_ClusterOnTrack.cxx.

90 {
91 m_det_el =
92 dynamic_cast<const InDetDD::SolidStateDetectorElementBase*>(det_el);
93}

◆ time()

float HGTD_ClusterOnTrack::time ( ) const
inlinevirtual

Definition at line 161 of file HGTD_ClusterOnTrack.h.

161{ return m_calibrated_time; }

◆ timeResolution()

float HGTD_ClusterOnTrack::timeResolution ( ) const
inlinevirtual

Definition at line 163 of file HGTD_ClusterOnTrack.h.

163 {
165}

◆ type()

virtual bool Trk::RIO_OnTrack::type ( MeasurementBaseType::Type type) const
inlinefinaloverridevirtualinherited

Extended method checking the type.

Implements Trk::MeasurementBase.

Definition at line 110 of file RIO_OnTrack.h.

111 {
113 }
virtual bool type(MeasurementBaseType::Type type) const override final
Extended method checking the type.

◆ uniqueClone()

std::unique_ptr< RIO_OnTrack > Trk::RIO_OnTrack::uniqueClone ( ) const
inlineinherited

NVI clone returning unique_ptr.

Definition at line 97 of file RIO_OnTrack.h.

97 {
98 return std::unique_ptr<RIO_OnTrack>(clone());
99 };
virtual RIO_OnTrack * clone() const override=0
Pseudo-constructor, needed to avoid excessive RTTI.

Member Data Documentation

◆ m_calibrated_time

float HGTD_ClusterOnTrack::m_calibrated_time
private

Definition at line 136 of file HGTD_ClusterOnTrack.h.

◆ m_calibrated_time_resolution

float HGTD_ClusterOnTrack::m_calibrated_time_resolution
private

Definition at line 138 of file HGTD_ClusterOnTrack.h.

◆ m_det_el

const InDetDD::SolidStateDetectorElementBase* HGTD_ClusterOnTrack::m_det_el
protected

Detector element associated to this cluster on track.

The COT does not manage the object!

Definition at line 126 of file HGTD_ClusterOnTrack.h.

◆ m_global_position

Amg::Vector3D HGTD_ClusterOnTrack::m_global_position
protected

The global position, managed by the cluster on track.

Definition at line 133 of file HGTD_ClusterOnTrack.h.

◆ m_id_hash

IdentifierHash HGTD_ClusterOnTrack::m_id_hash
protected

The IdentifierHash - needed to comply with RIO_OnTrack interface, currently not used.

Definition at line 130 of file HGTD_ClusterOnTrack.h.

◆ m_identifier

Identifier Trk::RIO_OnTrack::m_identifier {}
protectedinherited

Identifier of the RIO_OnTrack (comes from the associated Trk::PrepRawData)

Definition at line 149 of file RIO_OnTrack.h.

149{};

◆ m_localCovariance

Amg::MatrixX Trk::MeasurementBase::m_localCovariance
protectedinherited

Definition at line 112 of file MeasurementBase.h.

◆ m_localParams

LocalParameters Trk::MeasurementBase::m_localParams
protectedinherited

Definition at line 111 of file MeasurementBase.h.

◆ m_rio

ElementLink<HGTD_ClusterContainer> HGTD_ClusterOnTrack::m_rio
private

Definition at line 140 of file HGTD_ClusterOnTrack.h.

◆ s_numberOfInstantiations

std::atomic_size_t Trk::ObjectCounter< Trk::RIO_OnTrack >::s_numberOfInstantiations
inlinestaticinherited

Definition at line 22 of file TrkObjectCounter.h.


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