File GenericParticleHypothesis.hpp¶
-
namespace Acts
Note
This file is foreseen for the
Geometry
module to replaceExtent
-
template<ACTS_CONCEPT charge_t(ChargeConcept)>
class GenericParticleHypothesis - #include <Acts/EventData/GenericParticleHypothesis.hpp>
Particle hypothesis used in reconstruction.
The reconstruction hypothesis consists of absolute PDG code, mass and absolute charge.
Public Types
-
using ChargeType = charge_t
Public Functions
-
inline constexpr GenericParticleHypothesis(PdgParticle absPdg, float mass, ChargeType chargeType)
Creates a particle hypothesis using absolute PDG, mass and the charge type.
- Parameters
absPdg – the absolute PDG
mass – the particle mass
chargeType – the type of charge
-
inline GenericParticleHypothesis(PdgParticle absPdg)
Creates a particle hypothesis using the absolute PDG.
The mass and charge is looked up using findMass and findCharge. If the lookup fails an exception is thrown.
- Parameters
absPdg – the absolute PDG
-
template<typename other_charge_t>
inline constexpr GenericParticleHypothesis(const GenericParticleHypothesis<other_charge_t> &other) Copy from another charge hypothesis.
Note
This enables implicit conversion.
-
inline constexpr float absoluteCharge() const noexcept
Get the hypothesized absolute charge.
-
inline constexpr PdgParticle absPdg() const noexcept
Get the hypothesized absolute PDG.
-
inline constexpr const ChargeType &chargeType() const noexcept
Get the hypothesized charge type.
-
template<typename T>
inline constexpr auto extractCharge(T qOverP) const noexcept Extracts the signed charge from the
q over p
track parameter using the charge hypothesis.- Parameters
qOverP – the
q over p
track parameter.
-
template<typename T>
inline constexpr auto extractMomentum(T qOverP) const noexcept Extracts the signed charge from the
q over p
track parameter using the charge hypothesis.- Parameters
qOverP – the
q over p
track parameter.
-
inline constexpr float mass() const noexcept
Get the hypothesized mass.
Friends
-
inline friend bool operator!=(const GenericParticleHypothesis<ChargeType> &lhs, const GenericParticleHypothesis<ChargeType> &rhs)¶
-
inline friend bool operator==(const GenericParticleHypothesis<ChargeType> &lhs, const GenericParticleHypothesis<ChargeType> &rhs)¶
-
using ChargeType = charge_t
-
template<ACTS_CONCEPT charge_t(ChargeConcept)>