Class GenericApproachDescriptor

Inheritance Relationships

Base Type

Class Documentation

class Acts::GenericApproachDescriptor : public Acts::ApproachDescriptor

Class to decide and return which approaching surface to be taken, it’s a generic descriptor for n surfaces.

It is templated in order to allow for BoundarySurfaces from representing volumes of layers to be re-used

Public Functions

GenericApproachDescriptor(std::vector<std::shared_ptr<const Surface>> aSurfaces)

A generic approach descriptor for new Acts::Surface objects passing ownership.

Parameters
  • aSurfaces: are the approach surfaces

~GenericApproachDescriptor() override = default

A generic approach descriptor with n surfaces to test.

ObjectIntersection<Surface> approachSurface(const GeometryContext &gctx, const Vector3 &position, const Vector3 &direction, const BoundaryCheck &bcheck) const override

Get the aproach surface to the layer.

Return

: a SurfaceIntersection

Parameters
  • gctx: The current geometry context object, e.g. alignment

  • position: The global position to start the approach from

  • direction: The momentum vector

  • bcheck: The boundary check prescription

const std::vector<const Surface*> &containedSurfaces() const override

return all contained surfaces of this approach descriptor

std::vector<const Surface*> &containedSurfaces() override

Non-const version.

void registerLayer(const Layer &lay) override

Register the Layer to the surfaces.

Parameters
  • lay: is the layer to be registerd