Struct Acts::NavigationOptions¶
-
template<typename object_t>
struct NavigationOptions struct for the Navigation options that are forwarded to the geometry
- Template Parameters
propagator_state_t – Type of the object for navigation state
object_t – Type of the object for navigation to check against
Public Functions
-
inline NavigationOptions(NavigationDirection ndir, BoundaryCheck bcheck, bool resolves = true, bool resolvem = true, bool resolvep = false, const object_t *sobject = nullptr, const object_t *eobject = nullptr)
Constructor.
- Parameters
ndir – Navigation direction prescription
bcheck – Boundary check for the navigation action
resolves – Boolean whether to resolve sensitives
resolvem – Boolean whether to resolve material
resolvep – Boolean whether to resolve passives
sobject – Start object to check against
eobject – End object to check against
Public Members
-
BoundaryCheck boundaryCheck = true
The boundary check directive.
-
const object_t *endObject = nullptr
object to check against: at end
-
std::vector<GeometryIdentifier> externalSurfaces = {}
External surface identifier for which the boundary check is ignored.
-
NavigationDirection navDir = NavigationDirection::Forward
The navigation direction.
-
double overstepLimit = -1 * UnitConstants::um
The overstep tolerance for this navigation step.
Note
must be negative as it describes overstepping
-
double pathLimit = std::numeric_limits<double>::max()
The maximum path limit for this navigation step.
-
bool resolveMaterial = true
Always look for material.
-
bool resolvePassive = false
always look for passive
-
bool resolveSensitive = true
Always look for sensitive.
-
const object_t *startObject = nullptr
object to check against: at start
-
const Surface *targetSurface = nullptr
Target surface to exclude.