File VectorMultiTrajectory.hpp

namespace Acts

Note

This file is foreseen for the Geometry module to replace Extent

class VectorMultiTrajectory : public Acts::MultiTrajectory<VectorMultiTrajectory>
#include <Acts/EventData/VectorMultiTrajectory.hpp>

Public Functions

VectorMultiTrajectory() = default
inline VectorMultiTrajectory(const VectorMultiTrajectory &other)
VectorMultiTrajectory(VectorMultiTrajectory&&) = default
VectorMultiTrajectory &operator=(const VectorMultiTrajectory&) = default
VectorMultiTrajectory &operator=(VectorMultiTrajectory&&) = default

Private Functions

template<typename T>
inline constexpr void addColumn_impl(const std::string &key)
IndexType addTrackState_impl(TrackStatePropMask mask = TrackStatePropMask::All, IndexType iprevious = kInvalid)
void clear_impl()
inline std::any component_impl(HashedString key, IndexType istate)
inline std::any component_impl(HashedString key, IndexType istate) const
inline TrackStateProxy::Covariance covariance_impl(IndexType parIdx)
inline ConstTrackStateProxy::Covariance covariance_impl(IndexType parIdx) const
inline constexpr bool has_impl(HashedString key, IndexType istate) const
inline constexpr bool hasColumn_impl(HashedString key) const
inline TrackStateProxy::Covariance jacobian_impl(IndexType parIdx)
inline ConstTrackStateProxy::Covariance jacobian_impl(IndexType parIdx) const
inline TrackStateProxy::Measurement measurement_impl(IndexType parIdx)
inline ConstTrackStateProxy::Measurement measurement_impl(IndexType parIdx) const
inline TrackStateProxy::MeasurementCovariance measurementCovariance_impl(IndexType parIdx)
inline ConstTrackStateProxy::MeasurementCovariance measurementCovariance_impl(IndexType parIdx) const
inline TrackStateProxy::Parameters parameters_impl(IndexType parIdx)
inline ConstTrackStateProxy::Parameters parameters_impl(IndexType parIdx) const
void shareFrom_impl(IndexType iself, IndexType iother, TrackStatePropMask shareSource, TrackStatePropMask shareTarget)
inline IndexType size_impl() const
void unset_impl(TrackStatePropMask target, IndexType istate)

Private Members

std::vector<typename detail_lt::Types<eBoundSize>::Covariance> m_cov
std::unordered_map<HashedString, std::unique_ptr<DynamicColumnBase>> m_dynamic
std::vector<IndexData> m_index

index to map track states to the corresponding

std::vector<typename detail_lt::Types<eBoundSize>::Covariance> m_jac
std::vector<typename detail_lt::Types<MeasurementSizeMax>::Coefficients> m_meas
std::vector<typename detail_lt::Types<MeasurementSizeMax>::Covariance> m_measCov
std::vector<typename detail_lt::Types<eBoundSize>::Coefficients> m_params
std::vector<IndexType> m_previous
std::vector<ProjectorBitset> m_projectors
std::vector<std::shared_ptr<const Surface>> m_referenceSurfaces
std::vector<const SourceLink*> m_sourceLinks
template<typename T>
struct DynamicColumn : public Acts::VectorMultiTrajectory::DynamicColumnBase

Public Functions

~DynamicColumn() override = default
inline void add() override
inline void clear() override
inline std::unique_ptr<DynamicColumnBase> clone() const override
inline std::any get(size_t i) override
inline std::any get(size_t i) const override

Public Members

std::vector<T> m_vector
struct DynamicColumnBase

Public Functions

virtual ~DynamicColumnBase() = 0
virtual void add() = 0
virtual void clear() = 0
virtual std::unique_ptr<DynamicColumnBase> clone() const = 0
virtual std::any get(size_t i) = 0
virtual std::any get(size_t i) const = 0
struct IndexData

Public Members

double chi2 = 0
IndexType icalibrated = kInvalid
IndexType icalibratedsourcelink = kInvalid
IndexType ifiltered = kInvalid
IndexType ijacobian = kInvalid
IndexType ipredicted = kInvalid
IndexType iprevious = kInvalid
IndexType iprojector = kInvalid
IndexType ismoothed = kInvalid
IndexType iuncalibrated = kInvalid
IndexType measdim = 0
double pathLength
TrackStateType typeFlags