|
ACTS
Experiment-independent tracking
|
Navigator that visits an externally supplied sequence of surfaces in order. More...
#include <detray/navigation/direct_navigator.hpp>
Classes | |
| class | state |
| Mutable state for traversing the external surface sequence. More... | |
Public Types | |
| using | context_type = detector_type::geometry_context |
| Geometry context expected by the detector. | |
| using | detector_type = detector_t |
| Detector whose surfaces are navigated. | |
| using | inspector_type = navigation::void_inspector |
| Inspector policy used by the direct navigation flow. | |
| using | intersection_type |
| Intersection record stored in the navigation state. | |
| using | surface_sequence_type |
| Range containing the surfaces visited by this navigator. | |
| using | surface_type = detray::ranges::range_value_t<surface_sequence_type> |
| Descriptor type stored in the surface sequence. | |
Public Member Functions | |
| template<typename track_t> | |
| void | init (const track_t &track, state &navigation, const navigation::config &cfg, const context_type &ctx) const |
| Initialize the direct navigation flow on the first/last external surface. | |
| template<typename track_t> | |
| bool | update (const track_t &track, state &navigation, const navigation::config &cfg, const context_type &ctx={}) const |
| Update the navigation status on the current next external and switch to the following external surface if the current one was reached. | |
Navigator that visits an externally supplied sequence of surfaces in order.
| detector_t | Detector providing the geometry and algebra types. |
| surface_sequence_t | Optional range type for the ordered surfaces. |
| using detray::direct_navigator< detector_t, surface_sequence_t >::intersection_type |
Intersection record stored in the navigation state.
| using detray::direct_navigator< detector_t, surface_sequence_t >::surface_sequence_type |
Range containing the surfaces visited by this navigator.
| void detray::direct_navigator< detector_t, surface_sequence_t >::init | ( | const track_t & | track, |
| state & | navigation, | ||
| const navigation::config & | cfg, | ||
| const context_type & | ctx ) const |
Initialize the direct navigation flow on the first/last external surface.
| track | Track whose intersections will be evaluated. |
| navigation | State to initialize. |
| cfg | Navigation tolerances and policies. |
| ctx | Detector geometry context. |
| bool detray::direct_navigator< detector_t, surface_sequence_t >::update | ( | const track_t & | track, |
| state & | navigation, | ||
| const navigation::config & | cfg, | ||
| const context_type & | ctx = {} ) const |
Update the navigation status on the current next external and switch to the following external surface if the current one was reached.
| track | Track whose intersections will be evaluated. |
| navigation | State to update. |
| cfg | Navigation tolerances and policies. |
| ctx | Detector geometry context. |