Struct SurfaceArray::ISurfaceGridLookup¶
Defined in File SurfaceArray.hpp
Nested Relationships¶
This struct is a nested type of Class SurfaceArray.
Inheritance Relationships¶
Derived Types¶
public Acts::SurfaceArray::SingleElementLookup
(Struct SurfaceArray::SingleElementLookup)public Acts::SurfaceArray::SurfaceGridLookup< Axes >
(Template Struct SurfaceArray::SurfaceGridLookup)
Struct Documentation¶
-
struct
Acts::SurfaceArray
::
ISurfaceGridLookup
Base interface for all surface lookups.
Subclassed by Acts::SurfaceArray::SingleElementLookup, Acts::SurfaceArray::SurfaceGridLookup< Axes >
Public Functions
-
~ISurfaceGridLookup
() = 0 Pure virtual destructor.
-
std::vector<BinningValue>
binningValues
() const The binning values described by this surface grid lookup They are in order of the axes (optional) and empty for eingle lookups.
-
size_t
completeBinning
(const GeometryContext &gctx, const SurfaceVector &surfaces) = 0 Attempts to fix sub-optimal binning by filling closest Surfaces into empty bin.
- Return
number of bins that were filled
- Parameters
gctx
: The current geometry context object, e.g. alignmentsurfaces
: The surface pointers to fill
-
size_t
dimensions
() const = 0 Get the number of dimensions of the grid.
- Return
number of dimensions
-
void
fill
(const GeometryContext &gctx, const SurfaceVector &surfaces) = 0 Fill provided surfaces into the contained
Grid
.- Parameters
gctx
: The current geometry context object, e.g. alignmentsurfaces
: Input surface pointers
-
std::vector<const IAxis*>
getAxes
() const = 0 Returns copies of the axes used in the grid as
AnyAxis
.- Return
The axes
- Note
This returns copies. Use for introspection and querying.
-
Vector3
getBinCenter
(size_t bin) const = 0 Gets the center position of bin
bin
in global coordinates.- Return
The bin center
- Parameters
bin
: the global bin index
-
bool
isValidBin
(size_t bin) const = 0 Checks if global bin is valid.
- Return
bool if the bin is valid
- Note
Valid means that the index points to a bin which is not a under or overflow bin or out of range in any axis.
- Parameters
bin
: the global bin index
-
SurfaceVector &
lookup
(const Vector3 &position) = 0 Performs lookup at
pos
and returns bin content as reference.- Return
SurfaceVector
at given bin- Parameters
position
: Lookup position
-
const SurfaceVector &
lookup
(const Vector3 &position) const = 0 Performs lookup at
pos
and returns bin content as const reference.- Return
SurfaceVector
at given bin- Parameters
position
: Lookup position
-
SurfaceVector &
lookup
(size_t bin) = 0 Performs lookup at global bin and returns bin content as reference.
- Return
SurfaceVector
at given bin- Parameters
bin
: Global lookup bin
-
const SurfaceVector &
lookup
(size_t bin) const = 0 Performs lookup at global bin and returns bin content as const reference.
- Return
SurfaceVector
at given bin- Parameters
bin
: Global lookup bin
-
const SurfaceVector &
neighbors
(const Vector3 &position) const = 0 Performs a lookup at
pos
, but returns neighbors as well.- Return
SurfaceVector
at given bin. Copy of all bins selected- Parameters
position
: Lookup position
-
size_t
size
() const = 0 Returns the total size of the grid (including under/overflow bins)
- Return
Size of the grid data structure
-