ATLAS Offline Software
Loading...
Searching...
No Matches
HGTD_ClusterOnTrack.h
Go to the documentation of this file.
1
13
14#ifndef HGTD_CLUSTERONTRACK_H
15#define HGTD_CLUSTERONTRACK_H
16
21#include <memory>
22
23namespace Trk {
24class LocalParameters;
25}
26
28
29public:
35
51 Trk::LocalParameters&& locpars,
52 Amg::MatrixX&& locerr,
53 const float calib_time,
54 const float calib_time_res,
55 const IdentifierHash& id_hash);
56
72 Trk::LocalParameters&& locpars,
73 Amg::MatrixX&& locerr,
74 const float calib_time,
75 const float calib_time_res,
76 const IdentifierHash& idDE,
77 const Amg::Vector3D& global_position);
78
80 virtual HGTD_ClusterOnTrack* clone() const override final;
81
84 virtual const Trk::Surface& associatedSurface() const override final;
85
86 virtual bool rioType(Trk::RIO_OnTrackType::Type type) const override final
87 {
89 }
90
93 virtual const InDetDD::SolidStateDetectorElementBase* detectorElement() const override final;
94
97 virtual const HGTD_Cluster* prepRawData() const override final;
98
101 virtual const Amg::Vector3D& globalPosition() const override final;
102
105 virtual IdentifierHash idDE() const override final;
106
109 virtual MsgStream& dump(MsgStream& out) const override final;
110
113 virtual std::ostream& dump(std::ostream& out) const override final;
114
115 virtual float time() const;
116
117 virtual float timeResolution() const;
118
119private:
120 virtual void setValues(const Trk::TrkDetElementBase* det_el,
121 const Trk::PrepRawData* prd) override final;
122
126 const InDetDD::SolidStateDetectorElementBase* m_det_el;
127
131
134
135private:
137
139
141};
142
144
146 return new HGTD_ClusterOnTrack(*this);
147}
148
150 if (m_rio.isValid())
151 return m_rio.cachedElement();
152 else
153 return nullptr;
154}
155
160
161inline float HGTD_ClusterOnTrack::time() const { return m_calibrated_time; }
162
166
167#endif // HGTD_CLUSTERONTRACK_H
#define protected
Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration.
Trk::PrepRawDataContainer< HGTD_ClusterCollection > HGTD_ClusterContainer
Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration.
Eigen::Matrix< double, 3, 1 > Vector3D
ElementLink< HGTD_ClusterContainer > m_rio
IdentifierHash m_id_hash
The IdentifierHash - needed to comply with RIO_OnTrack interface, currently not used.
virtual bool rioType(Trk::RIO_OnTrackType::Type type) const override final
Method checking the Rio On Track type.
virtual const HGTD_Cluster * prepRawData() const override final
returns the PrepRawData - is a SiCluster in this scope
Amg::Vector3D m_global_position
The global position, managed by the cluster on track.
HGTD_ClusterOnTrack & operator=(HGTD_ClusterOnTrack &&)=default
virtual float timeResolution() const
const InDetDD::SolidStateDetectorElementBase * m_det_el
Detector element associated to this cluster on track.
HGTD_ClusterOnTrack(HGTD_ClusterOnTrack &&)=default
HGTD_ClusterOnTrack(const HGTD_ClusterOnTrack &)=default
virtual HGTD_ClusterOnTrack * clone() const override final
Pseudo-constructor : needed to avoid excessive RTTI.
virtual const InDetDD::SolidStateDetectorElementBase * detectorElement() const override final
returns the detector element, assoicated with the PRD of this class
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...
virtual const Trk::Surface & associatedSurface() const override final
returns the surface for the local to global transformation
HGTD_ClusterOnTrack & operator=(const HGTD_ClusterOnTrack &)=default
virtual IdentifierHash idDE() const override final
returns the DE hashID*
virtual float time() const
virtual const Amg::Vector3D & globalPosition() const override final
returns global position (gathered through Surface constraint)
This is a "hash" representation of an Identifier.
Class to hold geometrical description of a solid state detector element.
Class to handle RIO On Tracks ROT) for InDet and Muons, it inherits from the common MeasurementBase.
Definition RIO_OnTrack.h:70
virtual bool type(MeasurementBaseType::Type type) const override final
Extended method checking the type.
STL class.
Definition of ATLAS Math & Geometry primitives (Amg)
Eigen::Matrix< double, Eigen::Dynamic, Eigen::Dynamic > MatrixX
Dynamic Matrix - dynamic allocation.
Eigen::Matrix< double, 3, 1 > Vector3D
Message Stream Member.
Ensure that the ATLAS eigen extensions are properly loaded.
-event-from-file
STL namespace.
#define private