7#include "Identifier/Identifier.h"
51 StatusCode
sc = AthAlgTool::initialize();
52 if (
sc.isFailure())
return sc;
59 return StatusCode::FAILURE;
89 ATH_MSG_ERROR(
"Type does not match known concrete type of InDet! Dumping RoT:"<<rioOnTrack);
97std::pair<const Trk::TrkDetElementBase*, const Trk::PrepRawData*>
122 <<
id<<
", in string form:"
126 return std::pair<const Trk::TrkDetElementBase*, const Trk::PrepRawData*>(detEl,prd);
132 if (
pixel!=
nullptr) {
133 prepareRIO_OnTrackElementLink<const InDet::PixelClusterContainer, InDet::PixelClusterOnTrack>(
pixel);
138 prepareRIO_OnTrackElementLink<const InDet::SCT_ClusterContainer, InDet::SCT_ClusterOnTrack>(sct);
143 prepareRIO_OnTrackElementLink<const InDet::TRT_DriftCircleContainer, InDet::TRT_DriftCircleOnTrack>(trt);
152 ELIndex_t&
index)
const
155 if (
pixel!=
nullptr) {
156 prepareRIO_OnTrackElementLink<const InDet::PixelClusterContainer, InDet::PixelClusterOnTrack>(
pixel, key,
index);
161 prepareRIO_OnTrackElementLink<const InDet::SCT_ClusterContainer, InDet::SCT_ClusterOnTrack>(sct, key,
index);
166 prepareRIO_OnTrackElementLink<const InDet::TRT_DriftCircleContainer, InDet::TRT_DriftCircleOnTrack>(trt, key,
index);
173 std::pair<const Trk::TrkDetElementBase *, const Trk::PrepRawData *>
pair =
getLinks( *RoT );
200 <<
id<<
", in string form:"
231 ATH_MSG_WARNING(
"Unknown type of ID detector from identifier :"<<
id<<
", in string form:"
245 if (!h_pixClusCont.
isValid()) {
251 const PixelClusterCollection *ptr = h_pixClusCont->indexFindPtr(idHash);
255 PixelClusterCollection::const_iterator collIt = ptr->begin();
256 PixelClusterCollection::const_iterator collItEnd = ptr->end();
258 for ( ; collIt!=collItEnd; ++collIt){
259 if ( (*collIt)->identify()==
id )
return *collIt;
274 if (!h_sctClusCont.
isValid()) {
280 const SCT_ClusterCollection *ptr = h_sctClusCont->indexFindPtr(idHash);
284 SCT_ClusterCollection::const_iterator collIt = ptr->begin();
285 SCT_ClusterCollection::const_iterator collItEnd = ptr->end();
287 for ( ; collIt!=collItEnd; ++collIt) {
288 if ( (*collIt)->identify()==
id )
return *collIt;
303 if (!h_trtDriftCircleCont.
isValid()) {
309 const TRT_DriftCircleCollection *ptr = h_trtDriftCircleCont->indexFindPtr(idHash);
313 TRT_DriftCircleCollection::const_iterator collIt = ptr->begin();
314 TRT_DriftCircleCollection::const_iterator collItEnd = ptr->end();
316 for ( ; collIt!=collItEnd; ++collIt) {
317 if ( (*collIt)->identify()==
id )
return *collIt;
326 if (not pixelDetEle.
isValid())
return nullptr;
327 return pixelDetEle->getDetectorElement(waferHash);
332 if (not sctDetEle.
isValid())
return nullptr;
333 return sctDetEle->getDetectorElement(waferHash);
339 if (not trtDetEleHandle.
isValid() or elements==
nullptr) {
#define ATH_CHECK
Evaluate an expression and check for errors.
#define ATH_MSG_VERBOSE(x)
#define ATH_MSG_WARNING(x)
This class provides an interface to generate or decode an identifier for the upper levels of the dete...
This is an Identifier helper class for the Pixel subdetector.
This is an Identifier helper class for the SCT subdetector.
This is an Identifier helper class for the TRT subdetector.
This is a "hash" representation of an Identifier.
Class to hold geometrical description of a silicon detector element.
Virtual base class of TRT readout elements.
Class to hold collection of TRT detector elements.
const TRT_BaseElement * getDetectorElement(const IdentifierHash &hash) const
Specific class to represent the pixel measurements.
Specific class to represent the SCT measurements.
Represents 'corrected' measurements from the TRT (for example, corrected for wire sag).
virtual bool isValid() override final
Can the handle be successfully dereferenced?
Class to handle RIO On Tracks ROT) for InDet and Muons, it inherits from the common MeasurementBase.
Identifier identify() const
return the identifier -extends MeasurementBase
virtual IdentifierHash idDE() const =0
returns the DE hashID
This is the base class for all tracking detector elements with read-out relevant information.
Ensure that the ATLAS eigen extensions are properly loaded.