ACTS
Experiment-independent tracking
Loading...
Searching...
No Matches
detray::caching_navigator< detector_t, k_cache_capacity, inspector_t, intersection_t > Class Template Reference

Navigation class which caches a 'road' through the detector. More...

#include <detray/navigation/caching_navigator.hpp>

Inheritance diagram for detray::caching_navigator< detector_t, k_cache_capacity, inspector_t, intersection_t >:
[legend]
Collaboration diagram for detray::caching_navigator< detector_t, k_cache_capacity, inspector_t, intersection_t >:
[legend]

Classes

class  state
 Navigation state that contains a cache of candidates. More...

Public Types

using context_type = typename detector_type::geometry_context
 Geometry context expected by the detector.
using detector_type = detector_t
 Detector whose surfaces are navigated.
using inspector_type = inspector_t
 Policy used to expose navigation diagnostics.
using intersection_type = intersection_t
 Intersection result type associated with a surface descriptor.

Additional Inherited Members

Public Member Functions inherited from detray::navigator_base< navigator_impl_t >
template<typename track_t, typename nav_state_t, typename context_t>
constexpr void init (const track_t &track, nav_state_t &navigation, const navigation::config &cfg, const context_t &ctx, const bool resolve_overstepping=false) const
 Helper method to initialize a volume.
template<typename track_t, typename nav_state_t, typename context_t>
constexpr bool update (const track_t &track, nav_state_t &navigation, const navigation::config &cfg, const context_t &ctx) const
 Complete update of the navigation flow.

Detailed Description

template<concepts::detector detector_t, std::size_t k_cache_capacity = navigation::default_cache_size, typename inspector_t = navigation::void_inspector, typename intersection_t = intersection2D< typename detector_t::surface_type, typename detector_t::algebra_type, !intersection::contains_pos>>
class detray::caching_navigator< detector_t, k_cache_capacity, inspector_t, intersection_t >

Navigation class which caches a 'road' through the detector.

This navigator applies a trust level based update of its candidate (intersection) cache, which is kept in the naviagtor's state. The trust level, and with it the appropriate update policy, must be set by an actor, otherwise no update will be performed.

Template Parameters
detector_tthe detector to navigate
k_cache_capacitythe capacity of the candidate cache
inspector_tis a validation inspector that can record information about the navigation state at different points of the nav. flow.
intersection_tcandidate type