![]() |
trout
Phlex-based reconstruction framework for the SHiP experiment.
|
Namespaces | |
| namespace | detail |
Classes | |
| struct | GeometryIdMultisetAccessor |
| The accessor for the GeometryIdMultiset container. More... | |
| class | Range |
| A wrapper around a pair of iterators to simplify range-based loops. More... | |
Typedefs | |
| template<typename T> | |
| using | GeometryIdMultiset = boost::container::flat_multiset<T, detail::CompareGeometryId> |
| Store elements that know their detector geometry id, e.g. | |
| using | Index = std::uint32_t |
| Index type to reference elements in a container. | |
Functions | |
| template<typename T> | |
| Range< typename GeometryIdMultiset< T >::const_iterator > | selectModule (const GeometryIdMultiset< T > &container, Acts::GeometryIdentifier geoId) |
| Select all elements for the given module / sensitive surface. | |
| template<typename T> | |
| auto | selectModule (const GeometryIdMultiset< T > &container, Acts::GeometryIdentifier::Value volume, Acts::GeometryIdentifier::Value layer, Acts::GeometryIdentifier::Value sensitive) |
| Select all elements for the given module / sensitive surface. | |
| template<typename Iterator> | |
| Range< Iterator > | makeRange (const Iterator &begin, const Iterator &end) |
| template<typename Iterator> | |
| Range< Iterator > | makeRange (const std::pair< Iterator, Iterator > &range) |
| using ActsExamples::GeometryIdMultiset = boost::container::flat_multiset<T, detail::CompareGeometryId> |
Store elements that know their detector geometry id, e.g.
simulation hits.
| T | type to be stored, must be compatible with CompareGeometryId |
The container stores an arbitrary number of elements for any geometry id. Elements can be retrieved via the geometry id; elements can be selected for a specific geometry id or for a larger range, e.g. a volume or a layer within the geometry hierarchy using the helper functions below. Elements can also be accessed by index that uniquely identifies each element regardless of geometry id.
| using ActsExamples::Index = std::uint32_t |
Index type to reference elements in a container.
We do not expect to have more than 2^32 elements in any given container so a fixed sized integer type is sufficient.
| Range< Iterator > ActsExamples::makeRange | ( | const Iterator & | begin, |
| const Iterator & | end ) |
| Range< Iterator > ActsExamples::makeRange | ( | const std::pair< Iterator, Iterator > & | range | ) |
|
inline |
Select all elements for the given module / sensitive surface.
|
inline |
Select all elements for the given module / sensitive surface.