|
ACTS
Experiment-independent tracking
|
A collection of brute force surface finders, callable by index. More...
#include <detray/navigation/accelerators/brute_force.hpp>
Classes | |
| struct | brute_forcer |
| A nested surface finder that returns all surfaces in a range (brute force). More... | |
Public Types | |
| using | buffer_type |
| Buffer type used to transfer offsets and stored descriptors. | |
| using | const_view_type |
| Const view type for offsets and stored surface descriptors. | |
| using | size_type = dindex |
| Index type used for collection sizes and volume slots. | |
| using | value_type = brute_forcer |
| Query result representing a volume's brute-force surface range. | |
| template<typename T> | |
| using | vector_type = typename container_t::template vector_type<T> |
| Device/host vector type used to store values. | |
| using | view_type = dmulti_view<dvector_view<size_type>, dvector_view<value_t>> |
| View type for offsets and stored surface descriptors. | |
Public Member Functions | |
| constexpr | brute_force_collection () |
| Default constructor. | |
| template<concepts::device_view coll_view_t> | |
| brute_force_collection (coll_view_t &view) | |
| Device-side construction from a vecmem based view type. | |
| constexpr | brute_force_collection (vecmem::memory_resource &resource) |
| Constructor from memory resource. | |
| constexpr | brute_force_collection (vecmem::memory_resource *resource) |
| Constructor from memory resource. | |
| auto | all () -> vector_type< value_t > & |
| auto | all () const -> const vector_type< value_t > & |
| constexpr auto | empty () const noexcept -> bool |
| auto | erase (typename vector_type< value_t >::iterator pos) noexcept(false) |
| Remove surface from collection. | |
| constexpr auto | get_data () const noexcept -> const_view_type |
| constexpr auto | get_data () noexcept -> view_type |
| auto & | offsets () |
| const auto & | offsets () const |
| auto | operator[] (const size_type i) -> value_type |
| Create brute force surface finder from surface container - const. | |
| auto | operator[] (const size_type i) const -> value_type |
| Create brute force surface finder from surface container - const. | |
| template<detray::ranges::range sf_container_t> requires std::is_same_v<typename sf_container_t::value_type, value_t> | |
| auto | push_back (const sf_container_t &surfaces) noexcept(false) -> void |
| Add a new surface collection. | |
| constexpr auto | size () const noexcept -> size_type |
A collection of brute force surface finders, callable by index.
This class fulfills all criteria to be used in the detector multi_store .
| value_t | the entry type in the collection (e.g. surface descriptors). |
| container_t | the types of underlying containers to be used. |
| using detray::brute_force_collection< value_t, container_t >::buffer_type |
Buffer type used to transfer offsets and stored descriptors.
| using detray::brute_force_collection< value_t, container_t >::const_view_type |
Const view type for offsets and stored surface descriptors.
|
explicitconstexpr |
Constructor from memory resource.
| resource | Resource used to allocate offsets and surface storage. |
|
explicitconstexpr |
Constructor from memory resource.
| resource | Resource used to allocate offsets and surface storage. |
|
explicit |
Device-side construction from a vecmem based view type.
| view | View containing the offsets and surface descriptors. |
| auto detray::brute_force_collection< value_t, container_t >::all | ( | ) | ->vector_type< value_t > & |
| auto detray::brute_force_collection< value_t, container_t >::all | ( | ) | const->constvector_type< value_t > & |
|
constexprnoexcept |
|
noexcept |
Remove surface from collection.
| pos | Iterator to the surface descriptor to remove. |
|
constexprnoexcept |
|
constexprnoexcept |
| auto & detray::brute_force_collection< value_t, container_t >::offsets | ( | ) |
| const auto & detray::brute_force_collection< value_t, container_t >::offsets | ( | ) | const |
| auto detray::brute_force_collection< value_t, container_t >::operator[] | ( | const size_type | i | ) | ->value_type |
Create brute force surface finder from surface container - const.
| i | Volume index whose surface range is requested. |
| auto detray::brute_force_collection< value_t, container_t >::operator[] | ( | const size_type | i | ) | const->value_type |
Create brute force surface finder from surface container - const.
| i | Volume index whose surface range is requested. |
| auto detray::brute_force_collection< value_t, container_t >::push_back | ( | const sf_container_t & | surfaces | ) | ->void |
Add a new surface collection.
| surfaces | Surface descriptors to append as one volume's range. |
|
constexprnoexcept |