ATLAS Offline Software
Loading...
Searching...
No Matches
ActsTrk::detail::AnalogueClusteringToolImpl< calib_data_t, traj_t > Class Template Reference

#include <AnalogueClusteringToolImpl.h>

Inheritance diagram for ActsTrk::detail::AnalogueClusteringToolImpl< calib_data_t, traj_t >:
Collaboration diagram for ActsTrk::detail::AnalogueClusteringToolImpl< calib_data_t, traj_t >:

Public Types

using base_class = typename extends<AthAlgTool, IOnTrackCalibratorTool<traj_t>>::base_class
using Pos = typename OnTrackCalibrator<traj_t>::PixelPos
using Cov = typename OnTrackCalibrator<traj_t>::PixelCov
using TrackStateProxy = typename OnTrackCalibrator<traj_t>::TrackStateProxy

Public Member Functions

 AnalogueClusteringToolImpl (const std::string &type, const std::string &name, const IInterface *parent)
virtual StatusCode initialize () override
std::pair< Pos, Covcalibrate (const Acts::GeometryContext &, const Acts::CalibrationContext &, const xAOD::PixelCluster &, const TrackStateProxy &) const
std::pair< Pos, Covcalibrate (const Acts::GeometryContext &, const Acts::CalibrationContext &, const xAOD::PixelCluster &, const Acts::BoundTrackParameters &) const
virtual void connect (OnTrackCalibrator< traj_t > &calibrator) const override
virtual void connectPixelCalibrator (IOnBoundStateCalibratorTool::PixelCalibrator &calibrator) const override
virtual bool calibrateAfterMeasurementSelection () const override

Private Types

using error_data_t = typename std::remove_pointer_t<decltype(std::declval<calib_data_t>().getClusterErrorData())>

Private Member Functions

const InDetDD::SiDetectorElementgetDetectorElement (xAOD::DetectorIDHashType id) const
std::pair< typename AnalogueClusteringToolImpl< calib_data_t, traj_t >::Pos, typename AnalogueClusteringToolImpl< calib_data_t, traj_t >::Covcalibrate (const Acts::GeometryContext &gctx, const Acts::CalibrationContext &cctx, const xAOD::PixelCluster &cluster, const InDetDD::SiDetectorElement &detElement, const std::pair< float, float > &angles) const
std::pair< float, float > anglesOfIncidence (const InDetDD::SiDetectorElement &element, const Acts::Vector3 &direction) const
std::pair< float, float > getCentroid (const xAOD::PixelCluster &cluster, const InDetDD::SiDetectorElement &element) const
const error_data_tgetErrorData () const
std::pair< std::optional< float >, std::optional< float > > getCorrectedPosition (const xAOD::PixelCluster &cluster, const error_data_t &errorData, const InDetDD::SiDetectorElement &element, const std::pair< float, float > &angles) const
std::pair< std::optional< float >, std::optional< float > > getCorrectedError (const error_data_t &errorData, const InDetDD::SiDetectorElement &element, const std::pair< float, float > &angles, const xAOD::PixelCluster &cluster) const

Private Attributes

SG::ReadCondHandleKey< InDetDD::SiDetectorElementCollectionm_pixelDetEleCollKey
SG::ReadCondHandleKey< calib_data_t > m_clusterErrorKey
ToolHandle< ISiLorentzAngleToolm_lorentzAngleTool
Gaudi::Property< int > m_thickness {this, "PixelThickness", 250}
Gaudi::Property< bool > m_postCalibration {this, "CalibrateAfterMeasurementSelection", false}
Gaudi::Property< bool > m_correctCovariance {this, "PerformCovarianceCalibration", true}
Gaudi::Property< double > m_calibratedCovarianceLowerBound {this, "CalibratedCovarianceLowerBound", 0.}
Gaudi::Property< bool > m_useWeightedPos {this, "UseWeightedPosition", false}
Gaudi::Property< int > m_errorStrategy {this, "errorStrategy", 1, "Which error strategy to use for clusters on track: 0 - calibrated, 1 - cluster pitch, to be used only if broadClusters is used during clustering"}
const PixelIDm_pixelid {nullptr}

Detailed Description

template<typename calib_data_t, typename traj_t>
class ActsTrk::detail::AnalogueClusteringToolImpl< calib_data_t, traj_t >

Definition at line 21 of file AnalogueClusteringToolImpl.h.

Member Typedef Documentation

◆ base_class

template<typename calib_data_t, typename traj_t>
using ActsTrk::detail::AnalogueClusteringToolImpl< calib_data_t, traj_t >::base_class = typename extends<AthAlgTool, IOnTrackCalibratorTool<traj_t>>::base_class

Definition at line 24 of file AnalogueClusteringToolImpl.h.

◆ Cov

template<typename calib_data_t, typename traj_t>
using ActsTrk::detail::AnalogueClusteringToolImpl< calib_data_t, traj_t >::Cov = typename OnTrackCalibrator<traj_t>::PixelCov

Definition at line 26 of file AnalogueClusteringToolImpl.h.

◆ error_data_t

template<typename calib_data_t, typename traj_t>
using ActsTrk::detail::AnalogueClusteringToolImpl< calib_data_t, traj_t >::error_data_t = typename std::remove_pointer_t<decltype(std::declval<calib_data_t>().getClusterErrorData())>
private

Definition at line 53 of file AnalogueClusteringToolImpl.h.

◆ Pos

template<typename calib_data_t, typename traj_t>
using ActsTrk::detail::AnalogueClusteringToolImpl< calib_data_t, traj_t >::Pos = typename OnTrackCalibrator<traj_t>::PixelPos

Definition at line 25 of file AnalogueClusteringToolImpl.h.

◆ TrackStateProxy

template<typename calib_data_t, typename traj_t>
using ActsTrk::detail::AnalogueClusteringToolImpl< calib_data_t, traj_t >::TrackStateProxy = typename OnTrackCalibrator<traj_t>::TrackStateProxy

Definition at line 27 of file AnalogueClusteringToolImpl.h.

Constructor & Destructor Documentation

◆ AnalogueClusteringToolImpl()

template<typename calib_data_t, typename traj_t>
ActsTrk::detail::AnalogueClusteringToolImpl< calib_data_t, traj_t >::AnalogueClusteringToolImpl ( const std::string & type,
const std::string & name,
const IInterface * parent )

Member Function Documentation

◆ anglesOfIncidence()

template<typename calib_data_t, typename traj_t>
std::pair< float, float > ActsTrk::detail::AnalogueClusteringToolImpl< calib_data_t, traj_t >::anglesOfIncidence ( const InDetDD::SiDetectorElement & element,
const Acts::Vector3 & direction ) const
private

◆ calibrate() [1/3]

template<typename calib_data_t, typename traj_t>
std::pair< Pos, Cov > ActsTrk::detail::AnalogueClusteringToolImpl< calib_data_t, traj_t >::calibrate ( const Acts::GeometryContext & ,
const Acts::CalibrationContext & ,
const xAOD::PixelCluster & ,
const Acts::BoundTrackParameters &  ) const

◆ calibrate() [2/3]

template<typename calib_data_t, typename traj_t>
std::pair< Pos, Cov > ActsTrk::detail::AnalogueClusteringToolImpl< calib_data_t, traj_t >::calibrate ( const Acts::GeometryContext & ,
const Acts::CalibrationContext & ,
const xAOD::PixelCluster & ,
const TrackStateProxy &  ) const

◆ calibrate() [3/3]

template<typename calib_data_t, typename traj_t>
std::pair< typename AnalogueClusteringToolImpl< calib_data_t, traj_t >::Pos, typename AnalogueClusteringToolImpl< calib_data_t, traj_t >::Cov > ActsTrk::detail::AnalogueClusteringToolImpl< calib_data_t, traj_t >::calibrate ( const Acts::GeometryContext & gctx,
const Acts::CalibrationContext & cctx,
const xAOD::PixelCluster & cluster,
const InDetDD::SiDetectorElement & detElement,
const std::pair< float, float > & angles ) const
private

◆ calibrateAfterMeasurementSelection()

template<typename calib_data_t, typename traj_t>
virtual bool ActsTrk::detail::AnalogueClusteringToolImpl< calib_data_t, traj_t >::calibrateAfterMeasurementSelection ( ) const
overridevirtual

◆ connect()

template<typename calib_data_t, typename traj_t>
virtual void ActsTrk::detail::AnalogueClusteringToolImpl< calib_data_t, traj_t >::connect ( OnTrackCalibrator< traj_t > & calibrator) const
overridevirtual

◆ connectPixelCalibrator()

template<typename calib_data_t, typename traj_t>
virtual void ActsTrk::detail::AnalogueClusteringToolImpl< calib_data_t, traj_t >::connectPixelCalibrator ( IOnBoundStateCalibratorTool::PixelCalibrator & calibrator) const
overridevirtual

◆ getCentroid()

template<typename calib_data_t, typename traj_t>
std::pair< float, float > ActsTrk::detail::AnalogueClusteringToolImpl< calib_data_t, traj_t >::getCentroid ( const xAOD::PixelCluster & cluster,
const InDetDD::SiDetectorElement & element ) const
private

◆ getCorrectedError()

template<typename calib_data_t, typename traj_t>
std::pair< std::optional< float >, std::optional< float > > ActsTrk::detail::AnalogueClusteringToolImpl< calib_data_t, traj_t >::getCorrectedError ( const error_data_t & errorData,
const InDetDD::SiDetectorElement & element,
const std::pair< float, float > & angles,
const xAOD::PixelCluster & cluster ) const
private

◆ getCorrectedPosition()

template<typename calib_data_t, typename traj_t>
std::pair< std::optional< float >, std::optional< float > > ActsTrk::detail::AnalogueClusteringToolImpl< calib_data_t, traj_t >::getCorrectedPosition ( const xAOD::PixelCluster & cluster,
const error_data_t & errorData,
const InDetDD::SiDetectorElement & element,
const std::pair< float, float > & angles ) const
private

◆ getDetectorElement()

template<typename calib_data_t, typename traj_t>
const InDetDD::SiDetectorElement & ActsTrk::detail::AnalogueClusteringToolImpl< calib_data_t, traj_t >::getDetectorElement ( xAOD::DetectorIDHashType id) const
private

◆ getErrorData()

template<typename calib_data_t, typename traj_t>
const error_data_t * ActsTrk::detail::AnalogueClusteringToolImpl< calib_data_t, traj_t >::getErrorData ( ) const
private

◆ initialize()

template<typename calib_data_t, typename traj_t>
virtual StatusCode ActsTrk::detail::AnalogueClusteringToolImpl< calib_data_t, traj_t >::initialize ( )
overridevirtual

Member Data Documentation

◆ m_calibratedCovarianceLowerBound

template<typename calib_data_t, typename traj_t>
Gaudi::Property<double> ActsTrk::detail::AnalogueClusteringToolImpl< calib_data_t, traj_t >::m_calibratedCovarianceLowerBound {this, "CalibratedCovarianceLowerBound", 0.}
private

Definition at line 103 of file AnalogueClusteringToolImpl.h.

103{this, "CalibratedCovarianceLowerBound", 0.};

◆ m_clusterErrorKey

template<typename calib_data_t, typename traj_t>
SG::ReadCondHandleKey<calib_data_t> ActsTrk::detail::AnalogueClusteringToolImpl< calib_data_t, traj_t >::m_clusterErrorKey
private
Initial value:
{this, "PixelOfflineCalibData", "ITkPixelOfflineCalibData",
"Calibration data for pixel clusters"
}

Definition at line 91 of file AnalogueClusteringToolImpl.h.

91 {this, "PixelOfflineCalibData", "ITkPixelOfflineCalibData",
92 "Calibration data for pixel clusters"
93 };

◆ m_correctCovariance

template<typename calib_data_t, typename traj_t>
Gaudi::Property<bool> ActsTrk::detail::AnalogueClusteringToolImpl< calib_data_t, traj_t >::m_correctCovariance {this, "PerformCovarianceCalibration", true}
private

Definition at line 102 of file AnalogueClusteringToolImpl.h.

102{this, "PerformCovarianceCalibration", true};

◆ m_errorStrategy

template<typename calib_data_t, typename traj_t>
Gaudi::Property<int> ActsTrk::detail::AnalogueClusteringToolImpl< calib_data_t, traj_t >::m_errorStrategy {this, "errorStrategy", 1, "Which error strategy to use for clusters on track: 0 - calibrated, 1 - cluster pitch, to be used only if broadClusters is used during clustering"}
private

Definition at line 106 of file AnalogueClusteringToolImpl.h.

106{this, "errorStrategy", 1, "Which error strategy to use for clusters on track: 0 - calibrated, 1 - cluster pitch, to be used only if broadClusters is used during clustering"};

◆ m_lorentzAngleTool

template<typename calib_data_t, typename traj_t>
ToolHandle<ISiLorentzAngleTool> ActsTrk::detail::AnalogueClusteringToolImpl< calib_data_t, traj_t >::m_lorentzAngleTool
private
Initial value:
{this, "PixelLorentzAngleTool", "",
"Tool to retreive Lorentz angle"
}

Definition at line 95 of file AnalogueClusteringToolImpl.h.

95 {this, "PixelLorentzAngleTool", "",
96 "Tool to retreive Lorentz angle"
97 };

◆ m_pixelDetEleCollKey

template<typename calib_data_t, typename traj_t>
SG::ReadCondHandleKey<InDetDD::SiDetectorElementCollection> ActsTrk::detail::AnalogueClusteringToolImpl< calib_data_t, traj_t >::m_pixelDetEleCollKey
private
Initial value:
{this, "DetEleCollKey", "",
"Key of SiDetectorElementCollection for Pixel"
}

Definition at line 87 of file AnalogueClusteringToolImpl.h.

87 {this, "DetEleCollKey", "",
88 "Key of SiDetectorElementCollection for Pixel"
89 };

◆ m_pixelid

template<typename calib_data_t, typename traj_t>
const PixelID* ActsTrk::detail::AnalogueClusteringToolImpl< calib_data_t, traj_t >::m_pixelid {nullptr}
private

Definition at line 109 of file AnalogueClusteringToolImpl.h.

109{nullptr};

◆ m_postCalibration

template<typename calib_data_t, typename traj_t>
Gaudi::Property<bool> ActsTrk::detail::AnalogueClusteringToolImpl< calib_data_t, traj_t >::m_postCalibration {this, "CalibrateAfterMeasurementSelection", false}
private

Definition at line 101 of file AnalogueClusteringToolImpl.h.

101{this, "CalibrateAfterMeasurementSelection", false};

◆ m_thickness

template<typename calib_data_t, typename traj_t>
Gaudi::Property<int> ActsTrk::detail::AnalogueClusteringToolImpl< calib_data_t, traj_t >::m_thickness {this, "PixelThickness", 250}
private

Definition at line 100 of file AnalogueClusteringToolImpl.h.

100{this, "PixelThickness", 250};

◆ m_useWeightedPos

template<typename calib_data_t, typename traj_t>
Gaudi::Property<bool> ActsTrk::detail::AnalogueClusteringToolImpl< calib_data_t, traj_t >::m_useWeightedPos {this, "UseWeightedPosition", false}
private

Definition at line 104 of file AnalogueClusteringToolImpl.h.

104{this, "UseWeightedPosition", false}; // if pixel cluster use weighted local position

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