Struct Acts::Experimental::IndexedGridFiller

struct IndexedGridFiller

A helper class that fills surfaces into predefined grids.

Public Functions

template<typename index_grid, typename indices>
inline void assignToAll(index_grid &iGrid, const indices &idcs) const

Helper method to fill a dedicated list of indices into the entire grid.

This is useful if e.g. certain objects are to be attempted in any case, regardless of their binning.

template<typename index_grid, typename indexed_objects, typename reference_generator>
inline void fill(const GeometryContext &gctx, index_grid &iGrid, const indexed_objects &iObjects, const reference_generator &rGenerator, const typename index_grid::grid_type::value_type &aToAll = {}) const

This method takes a collection of objects and fills them into an index grid - it uses a reference generator for grid query points and then completes the bins in between.

It also allows for expanding the fill view.

Note

as this is a Detector module, the objects within the indexed_objects container are assumed to have pointer semantics

Template Parameters
  • index_grid – the type of the index grid

  • indexed_objects – the type of the object container

  • reference_generator – the generator for reference points to be filled

Parameters
  • gctx – the geometry context of the operation

  • iGrid – [in,out] the index grid object to be filled

  • iObjects – the object container to be indexed

  • rGenerator – the reference point generator for position queries

  • aToAll – the indices that are assigned to all bins

inline const Logger &logger() const

Access to the logger.

Returns

a const reference to the logger

Public Members

std::vector<std::size_t> binExpansion = {}

Bin expansion where needed.

std::unique_ptr<const Logger> oLogger = getDefaultLogger("IndexedGridFiller", Logging::INFO)

Screen output logger.