ACTS
Experiment-independent tracking
Loading...
Searching...
No Matches
Acts::SurfaceArray::SingleElementLookup Struct Reference

Lookup implementation which wraps one element and always returns this element when lookup is called. More...

#include <Acts/Surfaces/SurfaceArray.hpp>

Inheritance diagram for Acts::SurfaceArray::SingleElementLookup:
[legend]
Collaboration diagram for Acts::SurfaceArray::SingleElementLookup:
[legend]

Public Member Functions

 SingleElementLookup (const SurfaceVector &elements)
 Default constructor.
 SingleElementLookup (SurfaceVector::value_type element)
 Default constructor.
void fill (const GeometryContext &, const SurfaceVector &) override
 Comply with concept and provide fill method.
std::vector< const IAxis * > getAxes () const override
 Returns an empty vector of AnyAxis.
Vector3 getBinCenter (std::size_t) const override
 Gets the bin center, but always returns (0, 0, 0).
std::optional< AnyGridConstView< SurfaceVector > > getGridView () const override
 Get a view of the grid for inspection.
bool isValidBin (std::size_t) const override
 Returns if the bin is valid (it is).
const SurfaceVectorlookup (const Vector3 &, const Vector3 &) const override
 Lookup, always returns element.
const SurfaceVectorlookup (std::size_t) const override
 Lookup, always returns element.
SurfaceVectorlookup (std::size_t) override
 Lookup, always returns element.
const SurfaceVectorneighbors (const Vector3 &, const Vector3 &) const override
 Lookup, always returns element.
std::size_t size () const override
 returns 1
const SurfacesurfaceRepresentation () const override
 Get the representative surface used for this lookup.
Public Member Functions inherited from Acts::SurfaceArray::ISurfaceGridLookup
virtual ~ISurfaceGridLookup ()=0
 Pure virtual destructor.
virtual std::vector< AxisDirectionbinningValues () const
 The binning values described by this surface grid lookup They are in order of the axes (optional) and empty for eingle lookups.

Detailed Description

Lookup implementation which wraps one element and always returns this element when lookup is called.

Constructor & Destructor Documentation

◆ SingleElementLookup() [1/2]

Acts::SurfaceArray::SingleElementLookup::SingleElementLookup ( SurfaceVector::value_type element)
explicit

Default constructor.

Parameters
elementthe one and only element.

◆ SingleElementLookup() [2/2]

Acts::SurfaceArray::SingleElementLookup::SingleElementLookup ( const SurfaceVector & elements)
explicit

Default constructor.

Parameters
elementsthe surfaces that are provided through a single lookup

Member Function Documentation

◆ fill()

void Acts::SurfaceArray::SingleElementLookup::fill ( const GeometryContext & ,
const SurfaceVector &  )
overridevirtual

Comply with concept and provide fill method.

Note
Does nothing

Implements Acts::SurfaceArray::ISurfaceGridLookup.

◆ getAxes()

std::vector< const IAxis * > Acts::SurfaceArray::SingleElementLookup::getAxes ( ) const
overridevirtual

Returns an empty vector of AnyAxis.

Returns
empty vector

Implements Acts::SurfaceArray::ISurfaceGridLookup.

◆ getBinCenter()

Vector3 Acts::SurfaceArray::SingleElementLookup::getBinCenter ( std::size_t ) const
overridevirtual

Gets the bin center, but always returns (0, 0, 0).

Returns
(0, 0, 0)

Implements Acts::SurfaceArray::ISurfaceGridLookup.

◆ getGridView()

std::optional< AnyGridConstView< SurfaceVector > > Acts::SurfaceArray::SingleElementLookup::getGridView ( ) const
overridevirtual

Get a view of the grid for inspection.

Returns
Optional grid view containing surface vectors

Implements Acts::SurfaceArray::ISurfaceGridLookup.

◆ isValidBin()

bool Acts::SurfaceArray::SingleElementLookup::isValidBin ( std::size_t ) const
overridevirtual

Returns if the bin is valid (it is).

Returns
always true

Implements Acts::SurfaceArray::ISurfaceGridLookup.

◆ lookup() [1/3]

const SurfaceVector & Acts::SurfaceArray::SingleElementLookup::lookup ( const Vector3 & ,
const Vector3 &  ) const
overridevirtual

Lookup, always returns element.

Returns
reference to vector containing only element

Implements Acts::SurfaceArray::ISurfaceGridLookup.

◆ lookup() [2/3]

const SurfaceVector & Acts::SurfaceArray::SingleElementLookup::lookup ( std::size_t ) const
overridevirtual

Lookup, always returns element.

Returns
reference to vector containing only element

Implements Acts::SurfaceArray::ISurfaceGridLookup.

◆ lookup() [3/3]

SurfaceVector & Acts::SurfaceArray::SingleElementLookup::lookup ( std::size_t )
overridevirtual

Lookup, always returns element.

Returns
reference to vector containing only element

Implements Acts::SurfaceArray::ISurfaceGridLookup.

◆ neighbors()

const SurfaceVector & Acts::SurfaceArray::SingleElementLookup::neighbors ( const Vector3 & ,
const Vector3 &  ) const
overridevirtual

Lookup, always returns element.

Returns
reference to vector containing only element

Implements Acts::SurfaceArray::ISurfaceGridLookup.

◆ size()

std::size_t Acts::SurfaceArray::SingleElementLookup::size ( ) const
overridevirtual

returns 1

Returns
1

Implements Acts::SurfaceArray::ISurfaceGridLookup.

◆ surfaceRepresentation()

const Surface * Acts::SurfaceArray::SingleElementLookup::surfaceRepresentation ( ) const
overridevirtual

Get the representative surface used for this lookup.

Returns
Surface pointer

Implements Acts::SurfaceArray::ISurfaceGridLookup.