Template Struct ParameterConcept

Struct Documentation

template<typename P> Acts::concept::Parameter::ParameterConcept

Public Static Attributes

constexpr bool boundValue = require<reference_surface_exists, surfacebound_position_exists, surfacebound_momentum_exists, surfacebound_charge_exists, surfacebound_time_exists, surfacebound_covariance_exists, surfacebound_parameters_exists>

Tie all surface bound results together.

constexpr bool covmat_exists = exists<covmat_t, const P>

Test if covariance matrix data type is defined.

constexpr bool free_charge_exists = has_method<const P, double, charge_t>
constexpr bool free_covariance_exists = has_method<const P, const std::optional<FreeSymMatrix>&, covariance_t>
constexpr bool free_momentum_exists = has_method<const P, Vector3D, momentum_t>
constexpr bool free_parameters_exists = has_method<const P, FreeVector, parameters_t>
constexpr bool free_position_exists = has_method<const P, Vector3D, position_t>

Tests related to free parametrisations.

constexpr bool free_time_exists = has_method<const P, double, timet>
constexpr bool freeValue = require<free_position_exists, free_momentum_exists, free_charge_exists, free_time_exists, free_covariance_exists, free_parameters_exists>

Tie all free results together.

constexpr bool reference_surface_exists = has_method<const P, const Surface&, reference_surface_t>

Tests related to surface bound parametrisations.

constexpr bool surfacebound_charge_exists = identical_to<double, charge_returntype_t, const P>
constexpr bool surfacebound_covariance_exists = identical_to<const std::optional<BoundSymMatrix>&, covariance_returntype_t, const P>
constexpr bool surfacebound_momentum_exists = identical_to<Vector3D, momentum_returntype_t, const P>
constexpr bool surfacebound_parameters_exists = identical_to<BoundVector, parameters_returntype_t, const P>
constexpr bool surfacebound_position_exists = identical_to<Vector3D, position_returntype_t, const P>
constexpr bool surfacebound_time_exists = identical_to<double, time_returntype_t, const P>
constexpr bool value = require<covmat_exists, either<boundValue, freeValue>>

Assert the individual results for easier error handling.

Evaluate that everything required exists