Class DirectNavigator¶
Defined in File DirectNavigator.hpp
Nested Relationships¶
Nested Types¶
Class Documentation¶
-
class
Acts::DirectNavigator¶ DirectNavigator class.
This is a fully guided navigator that progresses through a pre-given sequence of surfaces.
This can either be used as a validation tool, for truth tracking, or track refitting
Public Types
Public Functions
-
DirectNavigator() = default¶ Defaulted Constructed.
-
template<typename
propagator_state_t, typenamestepper_t>
voidstatus(propagator_state_t &state, const stepper_t &stepper) const¶ Navigator status call.
- Template Parameters
propagator_state_t: is the type of Propagatgor statestepper_t: is the used type of the Stepper by the Propagator
- Parameters
[inout] state: is the mutable propagator state object[in] stepper: Stepper in use
-
template<typename
propagator_state_t, typenamestepper_t>
voidtarget(propagator_state_t &state, const stepper_t &stepper) const¶ Navigator target call.
- Template Parameters
propagator_state_t: is the type of Propagatgor statestepper_t: is the used type of the Stepper by the Propagator
- Parameters
[inout] state: is the mutable propagator state object[in] stepper: Stepper in use
Public Members
-
double
tolerance= s_onSurfaceTolerance¶ The tolerance used to define “surface reached”.
-
struct
Initializer¶ Nested Actor struct, called Initializer.
This is needed for the initialization of the surface sequence
Public Types
-
using
result_type= this_result¶
Public Functions
-
Initializer() = default¶ Defaulting the constructor.
-
template<typename
propagator_state_t, typenamestepper_t>
voidoperator()(propagator_state_t &state, const stepper_t&, result_type &r) const¶ Actor operator call.
- Template Parameters
statet: Type of the full propagator statestepper_t: Type of the stepper
- Parameters
state: the entire propagator stater: the result of this Actor
-
template<typename
propagator_state_t, typenamestepper_t>
voidoperator()(propagator_state_t&, const stepper_t&) const¶ Actor operator call - resultless, unused.
Public Members
-
SurfaceSequence
navSurfaces= {}¶ The Surface sequence.
-
using
-
struct
State¶ Nested State struct.
It acts as an internal state which is created for every propagation/extrapolation step and keep thread-local navigation information
Public Members
-
const Surface *
currentSurface= nullptr¶ Navigation state - external interface: the current surface.
-
const TrackingVolume *
currentVolume= nullptr¶ Navigation state: the current volume.
-
bool
navigationBreak= false¶ Navigation state - external interface: a break has been detected.
-
SurfaceIter
navSurfaceIter= navSurfaces.begin()¶ Iterator the the next surface.
-
SurfaceSequence
navSurfaces= {}¶ Externally provided surfaces - expected to be ordered along the path.
-
const TrackingVolume *
startVolume= nullptr¶ Navigation state: the start volume.
-
bool
targetReached= false¶ Navigation state - external interface: target is reached.
-
const TrackingVolume *
targetVolume= nullptr¶ Navigation state: the target volume.
-
const Surface *
-