ACTS
Experiment-independent tracking
Loading...
Searching...
No Matches
Acts::IndexGridNavigationPolicy< GridType > Class Template Reference

A navigation policy that uses grid based navigation for indexed surfaces Navigate through a multilayer structure by creating an artificial path on the grid. More...

#include <Acts/Navigation/IndexGridNavigationPolicy.hpp>

Inheritance diagram for Acts::IndexGridNavigationPolicy< GridType >:
[legend]
Collaboration diagram for Acts::IndexGridNavigationPolicy< GridType >:
[legend]

Public Types

using IndexGridType = IndexGrid<GridType>

Public Member Functions

 IndexGridNavigationPolicy (const GeometryContext &gctx, const TrackingVolume &volume, const Logger &logger, const IndexGridNavigationConfig &config, const IndexGridType &grid)
 Main constructor, which expects the grid and will fill it with the surfaces from the volume passed.
void connect (NavigationDelegate &delegate) const override
 Connect this policy with a navigation delegate.
const IndexGridTypeindexGrid () const
 Give const access to the index grid.
void initializeCandidates (const GeometryContext &gctx, const NavigationArguments &args, AppendOnlyNavigationStream &stream, const Logger &logger) const
 Update the navigation state from the surface array.
Public Member Functions inherited from Acts::INavigationPolicy
virtual ~INavigationPolicy ()=default
 Virtual destructor so policies can be held through this base class.
virtual void visit (const std::function< void(const INavigationPolicy &)> &visitor) const
 Convenience function to walk over all navigation policies.

Additional Inherited Members

Static Public Member Functions inherited from Acts::INavigationPolicy
static void noopInitializeCandidates (const GeometryContext &, const NavigationArguments &, const AppendOnlyNavigationStream &, const Logger &)
 Noop update function that is suitable as a default for default navigation delegates.
Protected Member Functions inherited from Acts::INavigationPolicy
template<NavigationPolicyConcept T>
void connectDefault (NavigationDelegate &delegate) const
 Internal helper function for derived classes that conform to the concept and have a conventional updateState method.

Detailed Description

template<typename GridType>
class Acts::IndexGridNavigationPolicy< GridType >

A navigation policy that uses grid based navigation for indexed surfaces Navigate through a multilayer structure by creating an artificial path on the grid.

Member Typedef Documentation

◆ IndexGridType

template<typename GridType>
using Acts::IndexGridNavigationPolicy< GridType >::IndexGridType = IndexGrid<GridType>

Constructor & Destructor Documentation

◆ IndexGridNavigationPolicy()

template<typename GridType>
Acts::IndexGridNavigationPolicy< GridType >::IndexGridNavigationPolicy ( const GeometryContext & gctx,
const TrackingVolume & volume,
const Logger & logger,
const IndexGridNavigationConfig & config,
const IndexGridType & grid )
explicit

Main constructor, which expects the grid and will fill it with the surfaces from the volume passed.

Note
Expects that the grid is defined but not filled - it will be filled here with the surfaces assigned to the volume
Parameters
gctxThe geometrycontext object
volumeThe tracking volume holding the surfaces that will be the indexed objects
loggerA logging instance
configThe configuration of the Navigation Policy
gridThe index grid to use for navigation

Member Function Documentation

◆ connect()

template<typename GridType>
void Acts::IndexGridNavigationPolicy< GridType >::connect ( NavigationDelegate & delegate) const
overridevirtual

Connect this policy with a navigation delegate.

Parameters
delegateThe navigation delegate to connect to

Implements Acts::INavigationPolicy.

◆ indexGrid()

template<typename GridType>
const IndexGridType & Acts::IndexGridNavigationPolicy< GridType >::indexGrid ( ) const

Give const access to the index grid.

Returns

◆ initializeCandidates()

template<typename GridType>
void Acts::IndexGridNavigationPolicy< GridType >::initializeCandidates ( const GeometryContext & gctx,
const NavigationArguments & args,
AppendOnlyNavigationStream & stream,
const Logger & logger ) const

Update the navigation state from the surface array.

Parameters
gctxthe geometry context
argsThe navigation arguments
streamThe navigation stream to update
loggerThe logger