|
ACTS
Experiment-independent tracking
|
Base interface for all surface lookups. More...
#include <Acts/Surfaces/SurfaceArray.hpp>
Public Member Functions | |
| virtual std::span< const Surface *const > | at (std::array< std::size_t, 2 > gridIndices, std::uint8_t neighborDistance) const =0 |
| Get all surfaces in bin given by local grid indices and neighbor distance. | |
| virtual std::vector< AxisDirection > | binningValues () const |
| The binning values described by this surface grid lookup. | |
| virtual void | fill (const GeometryContext &gctx, std::span< const Surface *const > surfaces)=0 |
Fill provided surfaces into the contained Grid. | |
| virtual std::vector< const IAxis * > | getAxes () const =0 |
Returns copies of the axes used in the grid as AnyAxis. | |
| virtual Vector3 | getBinCenter (std::size_t bin) const =0 |
Gets the center position of bin bin in global coordinates. | |
| virtual bool | isValidBin (std::size_t bin) const =0 |
| Checks if global bin is valid. | |
| virtual std::span< const Surface *const > | lookup (const GeometryContext &gctx, const Vector3 &position, const Vector3 &direction) const =0 |
Performs lookup at pos and returns bin content as const reference. | |
| virtual const std::vector< const Surface * > & | lookup (const Vector3 &position, const Vector3 &direction) const =0 |
Performs lookup at pos and returns bin content as const reference. | |
| virtual const std::vector< const Surface * > & | lookup (std::size_t bin) const =0 |
| Performs lookup at global bin and returns bin content as const reference. | |
| virtual std::vector< const Surface * > & | lookup (std::size_t bin)=0 |
| Performs lookup at global bin and returns bin content as reference. | |
| virtual std::uint8_t | maxNeighborDistance () const =0 |
| Get the maximum neighbor distance that is supported by this lookup. | |
| virtual std::span< const Surface *const > | neighbors (const GeometryContext &gctx, const Vector3 &position, const Vector3 &direction) const =0 |
Performs a lookup at pos, but returns neighbors as well. | |
| virtual const std::vector< const Surface * > & | neighbors (const Vector3 &position, const Vector3 &direction) const =0 |
Performs a lookup at pos, but returns neighbors as well. | |
| virtual std::array< std::size_t, 2 > | numLocalBins () const =0 |
| Get the number of local bins in each dimension. | |
| virtual std::size_t | size () const =0 |
| Returns the total size of the grid (including under/overflow bins). | |
| virtual const Surface * | surfaceRepresentation () const =0 |
| Get the representative surface used for this lookup. | |
Base interface for all surface lookups.
|
pure virtual |
Get all surfaces in bin given by local grid indices and neighbor distance.
| gridIndices | the local grid indices |
| neighborDistance | the neighbor distance to include in the lookup |
Implemented in Acts::SurfaceArray::SingleElementLookup, and Acts::SurfaceArray::SurfaceGridLookup< Axis1, Axis2 >.
|
virtual |
The binning values described by this surface grid lookup.
They are in order of the axes (optional) and empty for eingle lookups
Reimplemented in Acts::SurfaceArray::SurfaceGridLookup< Axis1, Axis2 >.
|
pure virtual |
Fill provided surfaces into the contained Grid.
| gctx | The current geometry context object, e.g. alignment |
| surfaces | Input surface pointers |
Implemented in Acts::SurfaceArray::SingleElementLookup, and Acts::SurfaceArray::SurfaceGridLookup< Axis1, Axis2 >.
|
pure virtual |
Returns copies of the axes used in the grid as AnyAxis.
Implemented in Acts::SurfaceArray::SingleElementLookup, and Acts::SurfaceArray::SurfaceGridLookup< Axis1, Axis2 >.
|
pure virtual |
Gets the center position of bin bin in global coordinates.
| bin | the global bin index |
Implemented in Acts::SurfaceArray::SingleElementLookup, and Acts::SurfaceArray::SurfaceGridLookup< Axis1, Axis2 >.
|
pure virtual |
Checks if global bin is valid.
| bin | the global bin index |
Implemented in Acts::SurfaceArray::SingleElementLookup, and Acts::SurfaceArray::SurfaceGridLookup< Axis1, Axis2 >.
|
pure virtual |
Performs lookup at pos and returns bin content as const reference.
| gctx | The current geometry context object, e.g. alignment |
| position | Lookup position |
| direction | Lookup direction |
Implemented in Acts::SurfaceArray::SingleElementLookup, and Acts::SurfaceArray::SurfaceGridLookup< Axis1, Axis2 >.
|
pure virtual |
Performs lookup at pos and returns bin content as const reference.
| position | Lookup position |
| direction | Lookup direction |
Implemented in Acts::SurfaceArray::SingleElementLookup, and Acts::SurfaceArray::SurfaceGridLookup< Axis1, Axis2 >.
|
pure virtual |
Performs lookup at global bin and returns bin content as const reference.
| bin | Global lookup bin |
Implemented in Acts::SurfaceArray::SingleElementLookup, and Acts::SurfaceArray::SurfaceGridLookup< Axis1, Axis2 >.
|
pure virtual |
Performs lookup at global bin and returns bin content as reference.
| bin | Global lookup bin |
Implemented in Acts::SurfaceArray::SingleElementLookup, and Acts::SurfaceArray::SurfaceGridLookup< Axis1, Axis2 >.
|
pure virtual |
Get the maximum neighbor distance that is supported by this lookup.
This is used to determine how many neighbors to include in neighbor lookups.
Implemented in Acts::SurfaceArray::SingleElementLookup, and Acts::SurfaceArray::SurfaceGridLookup< Axis1, Axis2 >.
|
pure virtual |
Performs a lookup at pos, but returns neighbors as well.
| gctx | The current geometry context object, e.g. alignment |
| position | Lookup position |
| direction | Lookup direction |
Implemented in Acts::SurfaceArray::SingleElementLookup, and Acts::SurfaceArray::SurfaceGridLookup< Axis1, Axis2 >.
|
pure virtual |
Performs a lookup at pos, but returns neighbors as well.
| position | Lookup position |
| direction | Lookup direction |
Implemented in Acts::SurfaceArray::SingleElementLookup, and Acts::SurfaceArray::SurfaceGridLookup< Axis1, Axis2 >.
|
pure virtual |
Get the number of local bins in each dimension.
This is used to determine the size of the grid for neighbor lookups.
Implemented in Acts::SurfaceArray::SingleElementLookup, and Acts::SurfaceArray::SurfaceGridLookup< Axis1, Axis2 >.
|
pure virtual |
Returns the total size of the grid (including under/overflow bins).
Implemented in Acts::SurfaceArray::SingleElementLookup, and Acts::SurfaceArray::SurfaceGridLookup< Axis1, Axis2 >.
|
pure virtual |
Get the representative surface used for this lookup.
Implemented in Acts::SurfaceArray::SingleElementLookup, and Acts::SurfaceArray::SurfaceGridLookup< Axis1, Axis2 >.