File PlaneLayer.hpp

namespace Acts

Note

This file is foreseen for the Geometry module to replace Extent

class PlaneLayer : public virtual Acts::PlaneSurface, public Acts::Layer
#include <Acts/Geometry/PlaneLayer.hpp>

Class to describe a planar detector layer for tracking, it inhertis from both, Layer base class and PlaneSurface class.

Public Functions

PlaneLayer() = delete
PlaneLayer(const PlaneLayer &pla) = delete
~PlaneLayer() override = default
PlaneLayer &operator=(const PlaneLayer&) = delete
virtual const PlaneSurface &surfaceRepresentation() const override

Transforms the layer into a Surface representation for extrapolation.

Returns

returns a reference to a PlaneSurface

virtual PlaneSurface &surfaceRepresentation() override

Public Static Functions

static inline MutableLayerPtr create(const Transform3 &transform, std::shared_ptr<const PlanarBounds> pbounds, std::unique_ptr<SurfaceArray> surfaceArray = nullptr, double thickness = 0., std::unique_ptr<ApproachDescriptor> ad = nullptr, LayerType laytyp = Acts::active)

Factory for a shared plane layer.

Parameters
  • transform – which places the layer in the global frame

  • pbounds – the planar bounds that define the layer dimensions

  • surfaceArray – is the surface array that holds the sensitive surfaces

  • thickness – is the thickness of the layer (normal direction to plane)

  • ad – is the approach descriptor for describing the approach surface

  • laytyp – is the layer type

Returns

shared pointer to a PlaneLayer

Protected Functions

PlaneLayer(const Transform3 &transform, std::shared_ptr<const PlanarBounds> &pbounds, std::unique_ptr<SurfaceArray> surfaceArray = nullptr, double thickness = 0., std::unique_ptr<ApproachDescriptor> ades = nullptr, LayerType laytyp = Acts::active)

Private constructor for a PlaneLayer is called by create(args*)

Parameters
  • transform – which places the layer in the global frame

  • pbounds – the planar bounds that define the layer dimensions

  • surfaceArray – is the surface array that holds the sensitive surfaces

  • thickness – is the thickness of the layer (normal direction to plane)

  • ades – is the approach descriptor for describing the approach surface

  • laytyp – is the layer type

PlaneLayer(const PlaneLayer &pla, const Transform3 &shift)

Private constructor for a PlaneLayer, is called by create(arge*.

Parameters
  • pla – is the plain layer to be coped

  • shift – is the additional shift applied after copying

Private Functions

void buildApproachDescriptor()

private helper method to build approach surfaces