9#ifndef TRKRIO_ONTRACK_RIO_ONTRACK_H
10#define TRKRIO_ONTRACK_RIO_ONTRACK_H
20#include "Identifier/Identifier.h"
98 return std::unique_ptr<RIO_OnTrack>(
clone());
119 virtual MsgStream&
dump( MsgStream& out )
const override;
122 virtual std::ostream&
dump( std::ostream& out )
const override;
140 friend class ::RIO_OnTrackCnv_p1;
141 friend class ::RIO_OnTrackCnv_p2;
This is a "hash" representation of an Identifier.
RIO_OnTrack(LocalParameters &&locpars, Amg::MatrixX &&loccov, const Identifier &id)
Constructor with parameters and without externalPrediction.
MeasurementBase()=default
Default constructor - needed for POOL/SEAL.
Helper to enable counting number of instantiations in debug builds.
RIO_OnTrack(const RIO_OnTrack &rot)=default
Copy Constructor.
virtual RIO_OnTrack * clone() const override=0
Pseudo-constructor, needed to avoid excessive RTTI.
RIO_OnTrack & operator=(RIO_OnTrack &&rot)=default
virtual const TrkDetElementBase * detectorElement() const =0
returns the detector element, assoicated with the PRD of this class
virtual const Surface & associatedSurface() const override=0
returns the surface for the local to global transformation
RIO_OnTrack & operator=(const RIO_OnTrack &rot)=default
Assignment operator.
RIO_OnTrack(LocalParameters &&locpars, Amg::MatrixX &&loccov, const Identifier &id)
Constructor with parameters and without externalPrediction.
virtual const Trk::PrepRawData * prepRawData() const =0
returns the PrepRawData (also known as RIO) object to which this RIO_OnTrack is associated.
Identifier identify() const
return the identifier -extends MeasurementBase
virtual IdentifierHash idDE() const =0
returns the DE hashID
virtual bool type(MeasurementBaseType::Type type) const override final
Extended method checking the type.
std::unique_ptr< RIO_OnTrack > uniqueClone() const
NVI clone returning unique_ptr.
Identifier m_identifier
Identifier of the RIO_OnTrack (comes from the associated Trk::PrepRawData)
friend class ITrkEventCnvTool
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...
RIO_OnTrack()=default
Default Constructor for POOL.
RIO_OnTrack(RIO_OnTrack &&rot)=default
virtual const Amg::Vector3D & globalPosition() const override=0
Interface method to get the global Position.
virtual bool rioType(RIO_OnTrackType::Type type) const =0
Method checking the Rio On Track type.
virtual ~RIO_OnTrack()=default
Destructor.
Abstract Base Class for tracking surfaces.
This is the base class for all tracking detector elements with read-out relevant information.
Eigen::Matrix< double, Eigen::Dynamic, Eigen::Dynamic > MatrixX
Dynamic Matrix - dynamic allocation.
Eigen::Matrix< double, 3, 1 > Vector3D
Ensure that the ATLAS eigen extensions are properly loaded.