Struct Acts::Experimental::NavigationState¶
-
struct NavigationState
A navigation state struct that is holding the current navigation information.
It relies on Surfaces and Portals, all navigation entities have to be described in these terms.
Subclassed by Acts::Experimental::DetectorNavigator::State
Public Types
-
using SurfaceCandidates = std::vector<SurfaceCandidate>
Surface candidate vector alias, this allows to use e.g.
boost_small vector or other stl like containers
Public Members
-
ActsScalar absCharge = 0.
The current absolute charge.
-
ActsScalar absMomentum = 0.
The current absolute momentum.
-
std::any auxiliary
Auxiliary attached information.
-
const Detector *currentDetector = nullptr
The current detector in processing.
-
const Portal *currentPortal = nullptr
The current portal, i.e the position is on portal.
-
const Surface *currentSurface = nullptr
The current surface, i.e the position is on surface.
-
const DetectorVolume *currentVolume = nullptr
The current volume in processing, i.e. the position is inside.
-
ActsScalar overstepTolerance = -0.1
An overstep tolerance.
-
BoundaryCheck surfaceBoundaryCheck = true
Boundary directives for surfaces.
-
SurfaceCandidates::const_iterator surfaceCandidate = surfaceCandidates.cend()
-
SurfaceCandidates surfaceCandidates = {}
That are the candidate surfaces to process.
-
struct SurfaceCandidate
A surface candidate and its intersection.
A candidates can either be a surface or a portal (which contain a surface)
Public Members
-
BoundaryCheck boundaryCheck = true
The boundary check used for the candidate, boundary checks can differ for sensitive surfaces and portals.
-
ObjectIntersection<Surface> objectIntersection
A candidate intersection, in Surface view.
-
const Portal *portal = nullptr
Or a portal.
-
const Surface *surface = nullptr
A candidate is either a detector Surface.
-
BoundaryCheck boundaryCheck = true
-
using SurfaceCandidates = std::vector<SurfaceCandidate>