|
ACTS
Experiment-independent tracking
|
An N-dimensional spatial grid for geometry object searches. More...
#include <detray/navigation/accelerators/spatial_grid.hpp>
Public Types | |
| using | mask_type |
| Mask type used for the grid's virtual reference surface. | |
| using | query_type = typename base_grid::point_type |
| Coordinate type used to query bins. | |
| template<bool is_owning> | |
| using | type = spatial_grid_impl<typename grid_t::template type<is_owning>> |
| Find the corresponding (non-)owning grid type. | |
| using | value_type = typename base_grid::value_type |
| Value type stored in the grid bins. | |
Public Member Functions | |
| template<concepts::scalar... Args> | |
| constexpr | spatial_grid_impl (base_grid &&gr, Args &&...mask_values) |
| Construct from existing grid - move. | |
| constexpr | spatial_grid_impl (base_grid &&gr, const mask_type &mask) |
| Construct from existing base grid and mask - copy. | |
| template<concepts::scalar... Args> | |
| constexpr | spatial_grid_impl (base_grid &gr, Args &&...mask_values) |
| Construct from existing base grid - copy. | |
| query_type | local_point_of_intersection (const detray::detail::ray< algebra_t > &tangential, const dtransform3D< algebra_t > &trf) const |
| Straight line intersection with the grid. | |
| constexpr const mask_type & | mask () const |
| constexpr void | mask (const mask_type &m) |
| Replace the mask of the virtual reference surface. | |
| template<concepts::detector detector_t, typename track_t, concepts::arithmetic window_size_t> | |
| auto | search (const detector_t &det, const typename detector_t::volume_type &volume, const track_t &track, const search_window< window_size_t, 2 > &win_size, const typename detector_t::geometry_context &ctx) const |
| Interface for the navigator. | |
| decltype(auto) | search (const query_type &p) |
| Find the value of a single bin. | |
| decltype(auto) | search (const query_type &p) const |
| Find the value of a single bin - const. | |
| template<concepts::arithmetic window_size_t> | |
| auto | search (const query_type &p, const search_window< window_size_t, 2 > &win_size) const |
| Return a neighborhood of values from the grid. | |
An N-dimensional spatial grid for geometry object searches.
| using detray::spatial_grid_impl< grid_t >::mask_type |
Mask type used for the grid's virtual reference surface.
|
explicitconstexpr |
Construct from existing grid - move.
| mask_values | additional mask boundary values that cannot be inferred from the axis spans, e.g. the concentric cylinder radius |
| gr | Grid whose axes and bins are moved into this accelerator. |
|
explicitconstexpr |
Construct from existing base grid - copy.
| gr | Grid whose axes and bins are copied into this accelerator. |
| mask_values | Additional boundary values needed to form the reference mask. |
|
constexpr |
Construct from existing base grid and mask - copy.
| gr | Grid whose axes and bins are moved into this accelerator. |
| mask | Reference-surface mask to retain with the grid. |
| query_type detray::spatial_grid_impl< grid_t >::local_point_of_intersection | ( | const detray::detail::ray< algebra_t > & | tangential, |
| const dtransform3D< algebra_t > & | trf ) const |
Straight line intersection with the grid.
| tangential | Ray tangent to the propagated track. |
| trf | Transform placing the grid in global coordinates. |
|
constexpr |
|
constexpr |
Replace the mask of the virtual reference surface.
| m | New reference-surface mask. |
| auto detray::spatial_grid_impl< grid_t >::search | ( | const detector_t & | det, |
| const typename detector_t::volume_type & | volume, | ||
| const track_t & | track, | ||
| const search_window< window_size_t, 2 > & | win_size, | ||
| const typename detector_t::geometry_context & | ctx ) const |
Interface for the navigator.
| det | Detector providing the volume placement. |
| volume | Volume whose grid is queried. |
| track | Track used to determine the query position. |
| win_size | Search extent around the projected track position. |
| ctx | Geometry context used to resolve the volume transform. |
| decltype(auto) detray::spatial_grid_impl< grid_t >::search | ( | const query_type & | p | ) |
Find the value of a single bin.
| p | is point in the local (bound) frame |
| decltype(auto) detray::spatial_grid_impl< grid_t >::search | ( | const query_type & | p | ) | const |
Find the value of a single bin - const.
| p | is point in the local (bound) frame |
| auto detray::spatial_grid_impl< grid_t >::search | ( | const query_type & | p, |
| const search_window< window_size_t, 2 > & | win_size ) const |
Return a neighborhood of values from the grid.
The lookup is done with a search window around the bin
Return the values in bins intersecting the search window.
| p | is point in the local frame |
| win_size | size of the binned/scalar search window |