16 const Acts::BoundTrackParameters& perigee_parameters,
18 std::array<unsigned int,4> expected_layer_pattern {0u,0u,0u,0u};
21 Acts::Direction::Forward(),
23 for (
const Acts::detail::Step &step :
result.first ) {
26 if (step.geoID.sensitive()) {
27 if (step.surface && step.surface->associatedDetectorElement()) {
29 actsDetEl =
dynamic_cast<const ActsDetectorElement *
>(step.surface->associatedDetectorElement());
37 return expected_layer_pattern;
50 else if (detEl->
isSCT()) {
53 unsigned int pattern_idx = detEl->
isBarrel() ? 2 : 3;
This is an Identifier helper class for the Pixel subdetector.
This is an Identifier helper class for the SCT subdetector.
const GeoVDetectorElement * upstreamDetectorElement() const
Returns the underllying GeoModel detectorelement that this one is based on.
virtual DetectorType type() const
Type of element.
Class to hold geometrical description of a silicon detector element.
virtual const SiDetectorDesign & design() const override final
access to the local description (inline):
virtual Identifier identify() const override final
identifier of this detector element (inline)
const AtlasDetectorID * getIdHelper() const
Returns the id helper (inline)
This is an Identifier helper class for the Pixel subdetector.
int layer_disk(const Identifier &id) const
This is an Identifier helper class for the SCT subdetector.
int layer_disk(const Identifier &id) const
Athena definition of the Eigen plugin.
std::array< unsigned int, 4 > expectedLayerPattern(const EventContext &ctx, const IExtrapolationTool &extrapolator, const Acts::BoundTrackParameters &perigee_parameters, double pathLimit)
Extrapolate from the perigee outwards and gather information which detector layers should have hits.
void addToExpectedLayerPattern(std::array< unsigned int, 4 > &pattern, const ActsDetectorElement &detElement)