ATLAS Offline Software
Public Member Functions | Static Public Member Functions | Static Public Attributes | Protected Member Functions | Protected Attributes | Friends | List of all members
Trk::RIO_OnTrack Class Referenceabstract

#include <RIO_OnTrack.h>

Inheritance diagram for Trk::RIO_OnTrack:
Collaboration diagram for Trk::RIO_OnTrack:

Public Member Functions

 RIO_OnTrack (LocalParameters &&locpars, Amg::MatrixX &&loccov, const Identifier &id)
 Constructor with parameters and without externalPrediction. More...
 
 RIO_OnTrack ()=default
 Default Constructor for POOL. More...
 
 RIO_OnTrack (const RIO_OnTrack &rot)=default
 Copy Constructor. More...
 
 RIO_OnTrack (RIO_OnTrack &&rot)=default
 
RIO_OnTrackoperator= (const RIO_OnTrack &rot)=default
 Assignment operator. More...
 
RIO_OnTrackoperator= (RIO_OnTrack &&rot)=default
 
virtual ~RIO_OnTrack ()=default
 Destructor. More...
 
virtual RIO_OnTrackclone () const override=0
 Pseudo-constructor, needed to avoid excessive RTTI. More...
 
std::unique_ptr< RIO_OnTrackuniqueClone () const
 NVI clone returning unique_ptr. More...
 
virtual const SurfaceassociatedSurface () const override=0
 returns the surface for the local to global transformation More...
 
virtual const Amg::Vector3DglobalPosition () const override=0
 Interface method to get the global Position. More...
 
virtual bool type (MeasurementBaseType::Type type) const override final
 Extended method checking the type. More...
 
virtual bool rioType (RIO_OnTrackType::Type type) const =0
 Method checking the Rio On Track type. More...
 
virtual MsgStream & dump (MsgStream &out) const override
 returns the some information about this RIO_OnTrack. More...
 
virtual std::ostream & dump (std::ostream &out) const override
 returns the some information about this RIO_OnTrack. More...
 
virtual const Trk::PrepRawDataprepRawData () const =0
 returns the PrepRawData (also known as RIO) object to which this RIO_OnTrack is associated. More...
 
virtual IdentifierHash idDE () const =0
 returns the DE hashID More...
 
virtual const TrkDetElementBasedetectorElement () const =0
 returns the detector element, assoicated with the PRD of this class More...
 
Identifier identify () const
 return the identifier -extends MeasurementBase More...
 
const LocalParameterslocalParameters () const
 Interface method to get the LocalParameters. More...
 
const Amg::MatrixXlocalCovariance () const
 Interface method to get the localError. More...
 

Static Public Member Functions

static std::size_t numberOfInstantiations ()
 

Static Public Attributes

static std::atomic_size_t s_numberOfInstantiations
 

Protected Member Functions

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

Protected Attributes

Identifier m_identifier {}
 Identifier of the RIO_OnTrack (comes from the associated Trk::PrepRawData) More...
 
LocalParameters m_localParams
 
Amg::MatrixX m_localCovariance
 

Friends

class ITrkEventCnvTool
 
class ::RIO_OnTrackCnv_p1
 
class ::RIO_OnTrackCnv_p2
 

Detailed Description

Class to handle RIO On Tracks ROT) for InDet and Muons, it inherits from the common MeasurementBase.

The Track holds a vector of TrackStateOnSurface that carry the MeasurmentBase class pointers.

Need a multimap{RIO, ROT} to go from RIO to ROT and a map{ROT, Track} to go from ROT to Track

Author
Veron.nosp@m.ique.nosp@m..Bois.nosp@m.vert.nosp@m.@cern.nosp@m..ch
Edwar.nosp@m.d.Mo.nosp@m.yse@c.nosp@m.ern..nosp@m.ch
Andre.nosp@m.as.S.nosp@m.alzbu.nosp@m.rger.nosp@m.@cern.nosp@m..ch
Christos Anastopoulos (Athena MT)

Definition at line 67 of file RIO_OnTrack.h.

Constructor & Destructor Documentation

◆ RIO_OnTrack() [1/4]

Trk::RIO_OnTrack::RIO_OnTrack ( Trk::LocalParameters &&  locpars,
Amg::MatrixX &&  loccov,
const Identifier id 
)

Constructor with parameters and without externalPrediction.

Definition at line 22 of file RIO_OnTrack.cxx.

25  : MeasurementBase(std::move(locpars), std::move(loccov))
27  , m_identifier(id)
28 {
29 }

◆ RIO_OnTrack() [2/4]

Trk::RIO_OnTrack::RIO_OnTrack ( )
default

Default Constructor for POOL.

◆ RIO_OnTrack() [3/4]

Trk::RIO_OnTrack::RIO_OnTrack ( const RIO_OnTrack rot)
default

Copy Constructor.

◆ RIO_OnTrack() [4/4]

Trk::RIO_OnTrack::RIO_OnTrack ( RIO_OnTrack &&  rot)
default

◆ ~RIO_OnTrack()

virtual Trk::RIO_OnTrack::~RIO_OnTrack ( )
virtualdefault

Destructor.

Member Function Documentation

◆ associatedSurface()

virtual const Surface& Trk::RIO_OnTrack::associatedSurface ( ) const
overridepure virtual

◆ clone()

virtual RIO_OnTrack* Trk::RIO_OnTrack::clone ( ) const
overridepure virtual

◆ detectorElement()

virtual const TrkDetElementBase* Trk::RIO_OnTrack::detectorElement ( ) const
pure virtual

◆ dump() [1/2]

MsgStream & Trk::RIO_OnTrack::dump ( MsgStream &  out) const
overridevirtual

returns the some information about this RIO_OnTrack.

Implements Trk::MeasurementBase.

Reimplemented in Muon::MdtDriftCircleOnTrack, Muon::CscClusterOnTrack, Muon::RpcClusterOnTrack, Muon::sTgcClusterOnTrack, Muon::MuonClusterOnTrack, Muon::TgcClusterOnTrack, Muon::MMClusterOnTrack, InDet::TRT_DriftCircleOnTrack, InDet::PixelClusterOnTrack, InDet::SCT_ClusterOnTrack, HGTD_ClusterOnTrack, and InDet::SiClusterOnTrack.

Definition at line 32 of file RIO_OnTrack.cxx.

33 {
34  sl << "Trk::RIO_OnTrack { "<< endmsg;
35  sl << "\t identifier = "<< identify() << endmsg;
36  sl << "\t position = ("
37  << localParameters()
38  << endmsg;
39  sl << "\t has Error Matrix: "<< endmsg;
40  sl<< localCovariance() <<"}"<< endmsg;
41 
42  if (prepRawData()!=nullptr) {
43  sl<<"PrepRawData: "<< (*prepRawData()) << endmsg;
44  }else{
45  sl<<"PrepRawData: NULL"<<endmsg;
46  }
47  return sl;
48 }

◆ dump() [2/2]

std::ostream & Trk::RIO_OnTrack::dump ( std::ostream &  out) const
overridevirtual

returns the some information about this RIO_OnTrack.

Implements Trk::MeasurementBase.

Reimplemented in Muon::MdtDriftCircleOnTrack, Muon::CscClusterOnTrack, Muon::RpcClusterOnTrack, Muon::sTgcClusterOnTrack, Muon::MuonClusterOnTrack, Muon::TgcClusterOnTrack, Muon::MMClusterOnTrack, InDet::PixelClusterOnTrack, InDet::TRT_DriftCircleOnTrack, InDet::SCT_ClusterOnTrack, HGTD_ClusterOnTrack, and InDet::SiClusterOnTrack.

Definition at line 50 of file RIO_OnTrack.cxx.

51 {
52  sl << "Trk::RIO_OnTrack { "<<std::endl;
53  sl << "\t identifier = "<< identify() << std::endl;
54  sl << "\t position = ("
55  << localParameters()
56  << std::endl;
57  sl << "\t has Error Matrix: " << std::endl;
58  sl << localCovariance() <<" }" << std::endl;
59 
60  if (prepRawData()!=nullptr) {
61  sl <<"PrepRawData: "<< (*prepRawData()) << std::endl;
62  }else{
63  sl<<"PrepRawData: NULL" << std::endl;
64  }
65  return sl;
66 }

◆ globalPosition()

virtual const Amg::Vector3D& Trk::RIO_OnTrack::globalPosition ( ) const
overridepure virtual

◆ idDE()

virtual IdentifierHash Trk::RIO_OnTrack::idDE ( ) const
pure virtual

◆ identify()

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

return the identifier -extends MeasurementBase

Definition at line 152 of file RIO_OnTrack.h.

153  { return m_identifier; }

◆ 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 }

◆ 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 }

◆ numberOfInstantiations()

static 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  }

◆ operator=() [1/2]

RIO_OnTrack& Trk::RIO_OnTrack::operator= ( const RIO_OnTrack rot)
default

Assignment operator.

◆ operator=() [2/2]

RIO_OnTrack& Trk::RIO_OnTrack::operator= ( RIO_OnTrack &&  rot)
default

◆ prepRawData()

virtual const Trk::PrepRawData* Trk::RIO_OnTrack::prepRawData ( ) const
pure virtual

returns the PrepRawData (also known as RIO) object to which this RIO_OnTrack is associated.

Can be null (in case where the Trk::PrepRawData is not persistified). Use Detector Element if possible (this is always there).

Implemented in Muon::MuonClusterOnTrack, Muon::MdtDriftCircleOnTrack, InDet::PixelClusterOnTrack, InDet::TRT_DriftCircleOnTrack, InDet::SCT_ClusterOnTrack, HGTD_ClusterOnTrack, Muon::CscClusterOnTrack, Muon::RpcClusterOnTrack, Muon::sTgcClusterOnTrack, Muon::TgcClusterOnTrack, and Muon::MMClusterOnTrack.

◆ rioType()

virtual bool Trk::RIO_OnTrack::rioType ( RIO_OnTrackType::Type  type) const
pure virtual

◆ setValues()

virtual void Trk::RIO_OnTrack::setValues ( const Trk::TrkDetElementBase detEl,
const Trk::PrepRawData prd 
)
protectedpure virtual

◆ type()

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

Extended method checking the type.

Implements Trk::MeasurementBase.

Definition at line 110 of file RIO_OnTrack.h.

111  {
113  }

◆ uniqueClone()

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

NVI clone returning unique_ptr.

Definition at line 97 of file RIO_OnTrack.h.

97  {
98  return std::unique_ptr<RIO_OnTrack>(clone());
99  };

Friends And Related Function Documentation

◆ ::RIO_OnTrackCnv_p1

friend class ::RIO_OnTrackCnv_p1
friend

Definition at line 140 of file RIO_OnTrack.h.

◆ ::RIO_OnTrackCnv_p2

friend class ::RIO_OnTrackCnv_p2
friend

Definition at line 141 of file RIO_OnTrack.h.

◆ ITrkEventCnvTool

friend class ITrkEventCnvTool
friend

Definition at line 72 of file RIO_OnTrack.h.

Member Data Documentation

◆ m_identifier

Identifier Trk::RIO_OnTrack::m_identifier {}
protected

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

Definition at line 149 of file RIO_OnTrack.h.

◆ 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.

◆ 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:
Trk::RIO_OnTrack::clone
virtual RIO_OnTrack * clone() const override=0
Pseudo-constructor, needed to avoid excessive RTTI.
Trk::MeasurementBase::MeasurementBase
MeasurementBase()=default
Default constructor - needed for POOL/SEAL.
Trk::ObjectCounter< Trk::RIO_OnTrack >
Trk::RIO_OnTrack::type
virtual bool type(MeasurementBaseType::Type type) const override final
Extended method checking the type.
Definition: RIO_OnTrack.h:110
endmsg
#define endmsg
Definition: AnalysisConfig_Ntuple.cxx:63
Trk::MeasurementBase::m_localParams
LocalParameters m_localParams
Definition: MeasurementBase.h:111
Trk::MeasurementBase::localCovariance
const Amg::MatrixX & localCovariance() const
Interface method to get the localError.
Definition: MeasurementBase.h:138
Trk::RIO_OnTrack::prepRawData
virtual const Trk::PrepRawData * prepRawData() const =0
returns the PrepRawData (also known as RIO) object to which this RIO_OnTrack is associated.
Trk::MeasurementBaseType::RIO_OnTrack
@ RIO_OnTrack
Definition: MeasurementBase.h:49
Trk::MeasurementBase::localParameters
const LocalParameters & localParameters() const
Interface method to get the LocalParameters.
Definition: MeasurementBase.h:132
Trk::MeasurementBase::m_localCovariance
Amg::MatrixX m_localCovariance
Definition: MeasurementBase.h:112
Trk::ObjectCounter< Trk::RIO_OnTrack >::s_numberOfInstantiations
static std::atomic_size_t s_numberOfInstantiations
Definition: TrkObjectCounter.h:22
Trk::RIO_OnTrack::m_identifier
Identifier m_identifier
Identifier of the RIO_OnTrack (comes from the associated Trk::PrepRawData)
Definition: RIO_OnTrack.h:149
Trk::RIO_OnTrack::identify
Identifier identify() const
return the identifier -extends MeasurementBase
Definition: RIO_OnTrack.h:152