9#ifndef TRKGEOMETRY_SUBTRACTEDCYLINDERLAYER_H
10#define TRKGEOMETRY_SUBTRACTEDCYLINDERLAYER_H
46 std::unique_ptr<OverlapDescriptor> od =
nullptr,
89 double)
override final {}
Eigen::Affine3d Transform3D
Class for a CylinderSurface in the ATLAS detector.
This virtual base class encapsulates the logics to build pre/post/full update material for Layer stru...
Layer()=default
Default Constructor.
double thickness() const
Return the Thickness of the Layer.
BaseClass to be overloaded for describing overlaps and next-by elements for the sub-detector implemen...
virtual const SubtractedCylinderSurface & surfaceRepresentation() const override final
Transforms the layer into a Surface representation for extrapolation.
virtual void resizeAndRepositionLayer(const VolumeBounds &, const Amg::Vector3D &, double) override final
Resize the layer to the tracking volume - not implemented.
SubtractedCylinderLayer & operator=(const SubtractedCylinderLayer &)
Assignment operator.
virtual ~SubtractedCylinderLayer() override
Destructor.
virtual double preUpdateMaterialFactor(const Trk::TrackParameters &par, Trk::PropDirection dir) const override final
getting the MaterialProperties back - for pre-update
virtual void resizeLayer(const VolumeBounds &, double) override final
Resize the layer to the tracking volume - not implemented.
virtual bool insideBounds(const Amg::Vector2D &locpos, double tol1=0., double tol2=0.) const override
use the base class insideBounds (Vector2d, BoundaryCheck)
SubtractedCylinderLayer()
Default Constructor.
virtual double postUpdateMaterialFactor(const Trk::TrackParameters &par, Trk::PropDirection dir) const override final
getting the MaterialProperties back - for post-update
virtual void moveLayer(Amg::Transform3D &shift) override final
move the Layer
SubtractedCylinderLayer(const SubtractedCylinderLayer &cla)
Copy constructor.
Class for a cylinder subtracted/shared surface in the ATLAS detector.
SubtractedCylinderSurface()=default
Defaults.
Pure Absract Base Class for Volume bounds.
Definition of ATLAS Math & Geometry primitives (Amg)
Eigen::Affine3d Transform3D
Eigen::Matrix< double, 3, 1 > Vector3D
Ensure that the ATLAS eigen extensions are properly loaded.
PropDirection
PropDirection, enum for direction of the propagation.
ParametersBase< TrackParametersDim, Charged > TrackParameters