Class Acts::NavigationLayer

class Acts::NavigationLayer : public Acts::Layer

Class to be used for gaps in Volumes as a navigational link.

Navigation Layers have a surface representation, but should usually never be propagated to.

Public Functions

NavigationLayer() = delete

Default Constructor - deleted.

NavigationLayer(const NavigationLayer&) = delete

Copy Constructor - deleted.

~NavigationLayer() override

Destructor.

inline virtual Vector3 binningPosition(const GeometryContext &gctx, BinningValue bValue) const final

The binning position method.

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

  • bValue – is the value for which the binning position is requested

    • as default the center is given, but may be overloaded

Returns

The return vector can be used for binning in a TrackingVolume

inline virtual bool isOnLayer(const GeometryContext &gctx, const Vector3 &gp, const BoundaryCheck &bcheck = true) const final

Geometric isOnLayer() method using isOnSurface() with Layer specific tolerance.

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

  • gp – is the global position for the check

  • bcheck – is the boundary check directive

Returns

boolean that indicates if the position is on surface

NavigationLayer &operator=(const NavigationLayer&) = delete

Assignment operator - deleted.

inline virtual bool resolve(bool resolveSensitive, bool resolveMaterial, bool resolvePassive) const final

Accept layer according to the following colelction directives.

Note

navigation layers are never accepted

Parameters
  • resolveSensitive – is the prescription to find the sensitive surfaces

  • resolveMaterial – is the precription to find material surfaces

  • resolvePassive – is the prescription to find all passive surfaces

Returns

a boolean whether the layer is accepted for processing

inline virtual const Surface &surfaceRepresentation() const final

Transforms the layer into a Surface representation for extrapolation In general, extrapolation to a surface should be avoided.

inline virtual Surface &surfaceRepresentation() final

Public Static Functions

static inline LayerPtr create(std::shared_ptr<const Surface> sRepresentation, double thickness = 0.)

Factory Constructor - the surface representation is given by pointer (ownership passed)

Parameters
  • sRepresentation – is the representation for extrapolation

  • thickness – is the thickness for the binning