ATLAS Offline Software
HGTD_ClusterOnTrack.h
Go to the documentation of this file.
1 
14 #ifndef HGTD_CLUSTERONTRACK_H
15 #define HGTD_CLUSTERONTRACK_H
16 
21 #include <memory>
22 
23 namespace Trk {
24 class LocalParameters;
25 }
26 
28 
29 public:
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 
119 private:
120  virtual void setValues(const Trk::TrkDetElementBase* det_el,
121  const Trk::PrepRawData* prd) override final;
122 
123 protected:
126  const InDetDD::SolidStateDetectorElementBase* m_det_el;
127 
131 
134 
135 private:
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 
158  return m_det_el;
159 }
160 
161 inline float HGTD_ClusterOnTrack::time() const { return m_calibrated_time; }
162 
165 }
166 
167 #endif // HGTD_CLUSTERONTRACK_H
Trk::LocalParameters
Definition: LocalParameters.h:98
HGTD_ClusterOnTrack::clone
virtual HGTD_ClusterOnTrack * clone() const override final
Pseudo-constructor : needed to avoid excessive RTTI.
Definition: HGTD_ClusterOnTrack.h:145
HGTD_ClusterOnTrack::m_rio
ElementLink< HGTD_ClusterContainer > m_rio
Definition: HGTD_ClusterOnTrack.h:140
HGTD_ClusterOnTrack::setValues
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...
Definition: HGTD_ClusterOnTrack.cxx:89
Amg::MatrixX
Eigen::Matrix< double, Eigen::Dynamic, Eigen::Dynamic > MatrixX
Dynamic Matrix - dynamic allocation.
Definition: EventPrimitives.h:29
HGTD_ClusterOnTrack::timeResolution
virtual float timeResolution() const
Definition: HGTD_ClusterOnTrack.h:163
InDetDD::SolidStateDetectorElementBase
Definition: SolidStateDetectorElementBase.h:132
HGTD_ClusterOnTrack::HGTD_ClusterOnTrack
HGTD_ClusterOnTrack(const HGTD_ClusterOnTrack &)=default
python.AthDsoLogger.out
out
Definition: AthDsoLogger.py:71
Surface
Definition: Trigger/TrigAccel/TrigCudaFitter/src/Surface.h:7
HGTD_ClusterOnTrack::time
virtual float time() const
Definition: HGTD_ClusterOnTrack.h:161
Trk::RIO_OnTrack
Definition: RIO_OnTrack.h:70
HGTD_ClusterOnTrack::HGTD_ClusterOnTrack
HGTD_ClusterOnTrack(HGTD_ClusterOnTrack &&)=default
HGTD_ClusterOnTrack::m_calibrated_time
float m_calibrated_time
Definition: HGTD_ClusterOnTrack.h:136
const
bool const RAWDATA *ch2 const
Definition: LArRodBlockPhysicsV0.cxx:562
HGTD_ClusterOnTrack::m_calibrated_time_resolution
float m_calibrated_time_resolution
Definition: HGTD_ClusterOnTrack.h:138
protected
#define protected
Definition: DetDescrConditionsDict_dict_fixes.cxx:14
HGTD_Cluster.h
Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration.
Trk::RIO_OnTrack::type
virtual bool type(MeasurementBaseType::Type type) const override final
Extended method checking the type.
Definition: RIO_OnTrack.h:110
HGTD_Cluster
Definition: HGTD_Cluster.h:35
HGTD_ClusterOnTrack::dump
virtual MsgStream & dump(MsgStream &out) const override final
returns some information about this RIO_OnTrack.
Definition: HGTD_ClusterOnTrack.cxx:65
HGTD_ClusterOnTrack::detectorElement
virtual const InDetDD::SolidStateDetectorElementBase * detectorElement() const override final
returns the detector element, assoicated with the PRD of this class
Definition: HGTD_ClusterOnTrack.h:157
HGTD_ClusterOnTrack::associatedSurface
virtual const Trk::Surface & associatedSurface() const override final
returns the surface for the local to global transformation
Definition: HGTD_ClusterOnTrack.cxx:57
Trk::RIO_OnTrackType::HGTD_Cluster
@ HGTD_Cluster
Definition: RIO_OnTrack.h:63
xAODType
Definition: ObjectType.h:13
Trk
Ensure that the ATLAS eigen extensions are properly loaded.
Definition: FakeTrackBuilder.h:9
Amg
Definition of ATLAS Math & Geometry primitives (Amg)
Definition: AmgStringHelpers.h:19
private
#define private
Definition: DetDescrConditionsDict_dict_fixes.cxx:13
RIO_OnTrack.h
IdentifierHash.h
HGTD_ClusterOnTrack
Definition: HGTD_ClusterOnTrack.h:27
Amg::Vector3D
Eigen::Matrix< double, 3, 1 > Vector3D
Definition: GeoPrimitives.h:47
HGTD_ClusterOnTrack::m_id_hash
IdentifierHash m_id_hash
The IdentifierHash - needed to comply with RIO_OnTrack interface, currently not used.
Definition: HGTD_ClusterOnTrack.h:130
Trk::PrepRawDataContainer
Definition: PrepRawDataContainer.h:26
InDetDD
Message Stream Member.
Definition: FakeTrackBuilder.h:8
HGTD_ClusterOnTrack::m_global_position
Amg::Vector3D m_global_position
The global position, managed by the cluster on track.
Definition: HGTD_ClusterOnTrack.h:133
HGTD_ClusterOnTrack::idDE
virtual IdentifierHash idDE() const override final
returns the DE hashID*
Definition: HGTD_ClusterOnTrack.h:143
HGTD_ClusterOnTrack::prepRawData
virtual const HGTD_Cluster * prepRawData() const override final
returns the PrepRawData - is a SiCluster in this scope
Definition: HGTD_ClusterOnTrack.h:149
HGTD_ClusterOnTrack::rioType
virtual bool rioType(Trk::RIO_OnTrackType::Type type) const override final
Method checking the Rio On Track type.
Definition: HGTD_ClusterOnTrack.h:86
IdentifierHash
Definition: IdentifierHash.h:38
HGTD_ClusterOnTrack::operator=
HGTD_ClusterOnTrack & operator=(HGTD_ClusterOnTrack &&)=default
HGTD_ClusterOnTrack::operator=
HGTD_ClusterOnTrack & operator=(const HGTD_ClusterOnTrack &)=default
HGTD_ClusterOnTrack::HGTD_ClusterOnTrack
HGTD_ClusterOnTrack()
Definition: HGTD_ClusterOnTrack.cxx:17
HGTD_ClusterContainer.h
Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration.
HGTD_ClusterOnTrack::globalPosition
virtual const Amg::Vector3D & globalPosition() const override final
returns global position (gathered through Surface constraint)
Definition: HGTD_ClusterOnTrack.cxx:61
HGTD_ClusterOnTrack::m_det_el
const InDetDD::SolidStateDetectorElementBase * m_det_el
Detector element associated to this cluster on track.
Definition: HGTD_ClusterOnTrack.h:126