|
ACTS
Experiment-independent tracking
|
Class to be used for gaps in Volumes as a navigational link. More...
#include <Acts/Geometry/NavigationLayer.hpp>
Public Member Functions | |
| NavigationLayer ()=delete | |
| Default Constructor - deleted. | |
| NavigationLayer (const NavigationLayer &)=delete | |
| Copy Constructor - deleted. | |
| ~NavigationLayer () override | |
| Destructor. | |
| bool | isOnLayer (const GeometryContext &gctx, const Vector3 &gp, const BoundaryTolerance &boundaryTolerance=BoundaryTolerance::None()) const final |
| Geometric isOnLayer() method using isOnSurface() with Layer specific tolerance. | |
| NavigationLayer & | operator= (const NavigationLayer &)=delete |
| Assignment operator - deleted. | |
| Vector3 | referencePosition (const GeometryContext &gctx, AxisDirection aDir) const final |
| The binning position method. | |
| bool | resolve (bool resolveSensitive, bool resolveMaterial, bool resolvePassive) const final |
| Accept layer according to the following collection directives. | |
| const Surface & | surfaceRepresentation () const final |
| Transforms the layer into a Surface representation for extrapolation In general, extrapolation to a surface should be avoided. | |
| Surface & | surfaceRepresentation () final |
| Non-const version of surface representation access. | |
| Public Member Functions inherited from Acts::Layer | |
| ~Layer () noexcept override | |
| Destructor. | |
| ApproachDescriptor * | approachDescriptor () |
| Non-const version of the approach descriptor. | |
| const ApproachDescriptor * | approachDescriptor () const |
| Return method for the approach descriptor, can be nullptr. | |
| boost::container::small_vector< NavigationTarget, 10 > | compatibleSurfaces (const GeometryContext &gctx, const Vector3 &position, const Vector3 &direction, const NavigationOptions< Surface > &options) const |
| Decompose Layer into (compatible) surfaces. | |
| double | layerThickness () const |
| Return the Thickness of the Layer this is by definition along the normal vector of the surfaceRepresentation. | |
| LayerType | layerType () const |
| return the LayerType | |
| const Layer * | nextLayer (const GeometryContext &gctx, const Vector3 &position, const Vector3 &direction) const |
| Fast navigation to next layer. | |
| const Volume * | representingVolume () const |
| Return the abstract volume that represents the layer. | |
| template<typename options_t> | |
| bool | resolve (const options_t &options) const |
| Accept layer according to the following collection directives. | |
| SurfaceArray * | surfaceArray () |
| Non-const version. | |
| const SurfaceArray * | surfaceArray () const |
| Return the entire SurfaceArray, returns a nullptr if no SurfaceArray. | |
| NavigationTarget | surfaceOnApproach (const GeometryContext &gctx, const Vector3 &position, const Vector3 &direction, const NavigationOptions< Layer > &options) const |
| Surface seen on approach for layers without sub structure, this is the surfaceRepresentation for layers with sub structure, this is the approachSurface. | |
| const TrackingVolume * | trackingVolume () const |
| Get the confining TrackingVolume. | |
| Public Member Functions inherited from Acts::GeometryObject | |
| GeometryObject ()=default | |
| Defaulted constructor. | |
| GeometryObject (const GeometryIdentifier &geometryId) | |
| Constructor from a value. | |
| GeometryObject (const GeometryObject &)=default | |
| Defaulted copy constructor. | |
| virtual | ~GeometryObject () noexcept=default |
| void | assignGeometryId (const GeometryIdentifier &geometryId) |
| Set the value. | |
| GeometryIdentifier | geometryId () const |
| virtual double | referencePositionValue (const GeometryContext &gctx, AxisDirection aDir) const |
| Implement the binningValue. | |
Static Public Member Functions | |
| static LayerPtr | create (std::shared_ptr< const Surface > sRepresentation, double thickness=0.) |
| Factory Constructor - the surface representation is given by pointer (ownership passed). | |
Protected Member Functions | |
| NavigationLayer (std::shared_ptr< const Surface > surfaceRepresentation, double thickness) | |
| Private Constructor. | |
| Protected Member Functions inherited from Acts::Layer | |
| Layer (std::unique_ptr< SurfaceArray > surfaceArray, double thickness=0., std::unique_ptr< ApproachDescriptor > ades=nullptr, LayerType laytyp=passive) | |
| Constructor with pointer to SurfaceArray (passing ownership). | |
| void | encloseTrackingVolume (const TrackingVolume &tvol) |
| private method to set enclosing TrackingVolume, called by friend class only optionally, the layer can be resized to the dimensions of the TrackingVolume | |
Protected Attributes | |
| std::shared_ptr< const Surface > | m_surfaceRepresentation |
| for the navigation Volume the surface | |
| Protected Attributes inherited from Acts::Layer | |
| std::unique_ptr< const ApproachDescriptor > | m_approachDescriptor |
| descriptor for surface on approach | |
| double | m_layerThickness = 0 |
| Thickness of the Layer. | |
| LayerType | m_layerType |
| make a passive/active either way | |
| NextLayers | m_nextLayers |
| the previous Layer according to BinGenUtils | |
| const BinUtility * | m_nextLayerUtility = nullptr |
| A binutility to find the next layer. | |
| std::unique_ptr< Volume > | m_representingVolume |
| Representing Volume can be used as approach surface sources. | |
| int | m_ssApproachSurfaces = 0 |
| Substructure flag indicating approach surface configuration. | |
| int | m_ssRepresentingSurface = 0 |
| sub structure indication Substructure flag indicating representing surface configuration | |
| int | m_ssSensitiveSurfaces = 0 |
| Substructure flag indicating sensitive surface configuration. | |
| std::unique_ptr< const SurfaceArray > | m_surfaceArray |
| SurfaceArray on this layer Surface. | |
| const TrackingVolume * | m_trackingVolume = nullptr |
| the enclosing TrackingVolume | |
| Protected Attributes inherited from Acts::GeometryObject | |
| GeometryIdentifier | m_geometryId |
| Unique geometry identifier for this object. | |
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.
|
override |
Destructor.
|
delete |
Default Constructor - deleted.
|
delete |
Copy Constructor - deleted.
|
protected |
Private Constructor.
| surfaceRepresentation | is the surface of the layer |
| thickness | ithe layer thickness |
|
static |
Factory Constructor - the surface representation is given by pointer (ownership passed).
| sRepresentation | is the representation for extrapolation |
| thickness | is the thickness for the binning |
|
finalvirtual |
Geometric isOnLayer() method using isOnSurface() with Layer specific tolerance.
| gctx | The current geometry context object, e.g. alignment |
| gp | is the global position for the check |
| boundaryTolerance | is the boundary check directive |
Reimplemented from Acts::Layer.
|
delete |
Assignment operator - deleted.
|
finalvirtual |
The binning position method.
| gctx | The current geometry context object, e.g. alignment |
| aDir | is the axis direction for which the reference position is requested
|
Implements Acts::GeometryObject.
|
finalvirtual |
Accept layer according to the following collection directives.
| 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 |
Reimplemented from Acts::Layer.
|
finalvirtual |
Transforms the layer into a Surface representation for extrapolation In general, extrapolation to a surface should be avoided.
Implements Acts::Layer.
|
finalvirtual |
Non-const version of surface representation access.
Implements Acts::Layer.
|
protected |
for the navigation Volume the surface
We will need to mutate this surface during the geometry building process, but the C++ type system has no const-correct way of expressing this.