Analysis Software
Documentation for sPHENIX simulation software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Acts::Experimental::MultiLayerSurfacesUpdatorImpl< grid_t, path_generator > Class Template Reference

#include <acts/blob/sPHENIX/Core/include/Acts/Navigation/MultiLayerSurfacesUpdator.hpp>

+ Inheritance diagram for Acts::Experimental::MultiLayerSurfacesUpdatorImpl< grid_t, path_generator >:
+ Collaboration diagram for Acts::Experimental::MultiLayerSurfacesUpdatorImpl< grid_t, path_generator >:

Public Types

using grid_type = grid_t
 Broadcast the grid type.
 

Public Member Functions

 MultiLayerSurfacesUpdatorImpl (grid_type &&igrid, const std::array< BinningValue, grid_type::DIM > &icasts, const Transform3 &itr=Transform3::Identity())
 Constructor for a grid based surface attacher.
 
 MultiLayerSurfacesUpdatorImpl ()=delete
 
void update (const GeometryContext &gctx, NavigationState &nState) const
 
std::array< ActsScalar,
grid_type::DIM > 
castPosition (const Vector3 &position) const
 
void resolveDuplicates (const GeometryContext &gctx, std::vector< const Acts::Surface * > &surfaces) const
 
- Public Member Functions inherited from Acts::Experimental::INavigationDelegate
virtual ~INavigationDelegate ()=default
 

Public Attributes

grid_type grid
 The grid where the indices are stored.
 
path_generator pgenerator
 The path generator.
 
std::array< BinningValue,
grid_type::DIM > 
casts {}
 These are the cast parameters - copied from constructor.
 
Transform3 transform = Transform3::Identity()
 A transform to be applied to the position.
 

Private Member Functions

template<typename Array , std::size_t... idx>
void fillCasts (const Vector3 &position, Array &a, std::index_sequence< idx...>) const
 

Detailed Description

template<typename grid_t, typename path_generator>
class Acts::Experimental::MultiLayerSurfacesUpdatorImpl< grid_t, path_generator >

Definition at line 24 of file MultiLayerSurfacesUpdator.hpp.

View newest version in sPHENIX GitHub at line 24 of file MultiLayerSurfacesUpdator.hpp

Member Typedef Documentation

template<typename grid_t , typename path_generator >
using Acts::Experimental::MultiLayerSurfacesUpdatorImpl< grid_t, path_generator >::grid_type = grid_t

Broadcast the grid type.

Definition at line 27 of file MultiLayerSurfacesUpdator.hpp.

View newest version in sPHENIX GitHub at line 27 of file MultiLayerSurfacesUpdator.hpp

Constructor & Destructor Documentation

template<typename grid_t , typename path_generator >
Acts::Experimental::MultiLayerSurfacesUpdatorImpl< grid_t, path_generator >::MultiLayerSurfacesUpdatorImpl ( grid_type &&  igrid,
const std::array< BinningValue, grid_type::DIM > &  icasts,
const Transform3 itr = Transform3::Identity() 
)
inline

Constructor for a grid based surface attacher.

Parameters
igridthe grid that is moved into this attacher
icastsis the cast values array
itra transform applied to the global position

Definition at line 45 of file MultiLayerSurfacesUpdator.hpp.

View newest version in sPHENIX GitHub at line 45 of file MultiLayerSurfacesUpdator.hpp

template<typename grid_t , typename path_generator >
Acts::Experimental::MultiLayerSurfacesUpdatorImpl< grid_t, path_generator >::MultiLayerSurfacesUpdatorImpl ( )
delete

Member Function Documentation

template<typename grid_t , typename path_generator >
std::array<ActsScalar, grid_type::DIM> Acts::Experimental::MultiLayerSurfacesUpdatorImpl< grid_t, path_generator >::castPosition ( const Vector3 position) const
inline

Cast into a lookup position

Parameters
positionis the position of the update call

Definition at line 77 of file MultiLayerSurfacesUpdator.hpp.

View newest version in sPHENIX GitHub at line 77 of file MultiLayerSurfacesUpdator.hpp

References Acts::Experimental::MultiLayerSurfacesUpdatorImpl< grid_t, path_generator >::fillCasts(), position, and Acts::Experimental::MultiLayerSurfacesUpdatorImpl< grid_t, path_generator >::transform.

Referenced by Acts::Experimental::MultiLayerSurfacesUpdatorImpl< grid_t, path_generator >::update().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

template<typename grid_t , typename path_generator >
template<typename Array , std::size_t... idx>
void Acts::Experimental::MultiLayerSurfacesUpdatorImpl< grid_t, path_generator >::fillCasts ( const Vector3 position,
Array &  a,
std::index_sequence< idx...>   
) const
inlineprivate

Unroll the cast loop

Parameters
positionis the position of the update call
ais the array to be filled

Definition at line 116 of file MultiLayerSurfacesUpdator.hpp.

View newest version in sPHENIX GitHub at line 116 of file MultiLayerSurfacesUpdator.hpp

References Acts::VectorHelpers::cast(), Acts::Experimental::MultiLayerSurfacesUpdatorImpl< grid_t, path_generator >::casts, and ambiguity_solver_full_chain::idx.

Referenced by Acts::Experimental::MultiLayerSurfacesUpdatorImpl< grid_t, path_generator >::castPosition().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

template<typename grid_t , typename path_generator >
void Acts::Experimental::MultiLayerSurfacesUpdatorImpl< grid_t, path_generator >::resolveDuplicates ( const GeometryContext gctx,
std::vector< const Acts::Surface * > &  surfaces 
) const
inline

Resolve duplicate on surface candidates

Parameters
gctxThe geometry context of the current geometry
surfacesis the surface candidates to check and resolve for duplicates

Definition at line 92 of file MultiLayerSurfacesUpdator.hpp.

View newest version in sPHENIX GitHub at line 92 of file MultiLayerSurfacesUpdator.hpp

References gctx, and Acts::Experimental::detail::BlueprintHelper::sort().

Referenced by Acts::Experimental::MultiLayerSurfacesUpdatorImpl< grid_t, path_generator >::update().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

Member Data Documentation

template<typename grid_t , typename path_generator >
std::array<BinningValue, grid_type::DIM> Acts::Experimental::MultiLayerSurfacesUpdatorImpl< grid_t, path_generator >::casts {}

These are the cast parameters - copied from constructor.

Definition at line 36 of file MultiLayerSurfacesUpdator.hpp.

View newest version in sPHENIX GitHub at line 36 of file MultiLayerSurfacesUpdator.hpp

Referenced by Acts::Experimental::MultiLayerSurfacesUpdatorImpl< grid_t, path_generator >::fillCasts().

template<typename grid_t , typename path_generator >
grid_type Acts::Experimental::MultiLayerSurfacesUpdatorImpl< grid_t, path_generator >::grid

The grid where the indices are stored.

Definition at line 30 of file MultiLayerSurfacesUpdator.hpp.

View newest version in sPHENIX GitHub at line 30 of file MultiLayerSurfacesUpdator.hpp

Referenced by Acts::Experimental::MultiLayerSurfacesUpdatorImpl< grid_t, path_generator >::update().

template<typename grid_t , typename path_generator >
path_generator Acts::Experimental::MultiLayerSurfacesUpdatorImpl< grid_t, path_generator >::pgenerator

The path generator.

Definition at line 33 of file MultiLayerSurfacesUpdator.hpp.

View newest version in sPHENIX GitHub at line 33 of file MultiLayerSurfacesUpdator.hpp

Referenced by Acts::Experimental::MultiLayerSurfacesUpdatorImpl< grid_t, path_generator >::update().

template<typename grid_t , typename path_generator >
Transform3 Acts::Experimental::MultiLayerSurfacesUpdatorImpl< grid_t, path_generator >::transform = Transform3::Identity()

A transform to be applied to the position.

Definition at line 39 of file MultiLayerSurfacesUpdator.hpp.

View newest version in sPHENIX GitHub at line 39 of file MultiLayerSurfacesUpdator.hpp

Referenced by Acts::Experimental::MultiLayerSurfacesUpdatorImpl< grid_t, path_generator >::castPosition().


The documentation for this class was generated from the following file: