|
ACTS
Experiment-independent tracking
|
Store a trajectory of track states with multiple components. More...
#include <Acts/EventData/MultiTrajectory.hpp>
Public Types | |
| using | ConstTrackStateProxy |
| Alias for the const version of a track state proxy, with the same backends as this container. | |
| using | Derived = derived_t |
| Type alias for derived multi-trajectory implementation. | |
| using | IndexType = TrackIndexType |
| The index type of the track state container. | |
| using | TrackStateProxy |
| Alias for the mutable version of a track state proxy, with the same backends as this container. | |
Public Member Functions | |
| void | clear () |
Clear the MultiTrajectory. | |
| IndexType | size () const |
| Returns the number of track states contained. | |
MultiTrajectory track state (proxy) access and manipulation | |
| ConstTrackStateProxy | getTrackState (IndexType istate) const |
| Access a read-only point on the trajectory by index. | |
| TrackStateProxy | getTrackState (IndexType istate) |
| Access a writable point on the trajectory by index. | |
| IndexType | addTrackState (TrackStatePropMask mask=TrackStatePropMask::All, IndexType iprevious=kInvalid) |
| Add a track state without providing explicit information. | |
| TrackStateProxy | makeTrackState (TrackStatePropMask mask=TrackStatePropMask::All, IndexType iprevious=kInvalid) |
Add a track state to the container and return a track state proxy to it This effectively calls addTrackState and getTrackState. | |
MultiTrajectory track state iteration | |
| template<typename F> requires detail_lt::VisitorConcept<F, ConstTrackStateProxy> | |
| void | visitBackwards (IndexType iendpoint, F &&callable) const |
| Visit all previous states starting at a given endpoint. | |
| template<typename F> requires (!ReadOnly) && detail_lt::VisitorConcept<F, TrackStateProxy> | |
| void | applyBackwards (IndexType iendpoint, F &&callable) |
| Apply a function to all previous states starting at a given endpoint. | |
| auto | reverseTrackStateRange (IndexType iendpoint) const |
Range for the track states from iendpoint to the trajectory start. | |
| auto | reverseTrackStateRange (IndexType iendpoint) |
Range for the track states from iendpoint to the trajectory start, i.e from the outside in. | |
| auto | forwardTrackStateRange (IndexType istartpoint) const |
Range for the track states from istartpoint to the trajectory end, i.e from inside out. | |
| auto | forwardTrackStateRange (IndexType istartpoint) |
Range for the track states from istartpoint to the trajectory end, i.e from inside out. | |
MultiTrajectory column management | |
| template<typename T> requires (!ReadOnly) | |
| void | addColumn (std::string_view key) |
Add a column to the MultiTrajectory. | |
| bool | hasColumn (HashedString key) const |
Check if a column with a key key exists. | |
Static Public Attributes | |
| static constexpr IndexType | kInvalid = kTrackIndexInvalid |
| Sentinel value that indicates an invalid index. | |
| static constexpr unsigned int | MeasurementSizeMax = kMeasurementSizeMax |
| Maximum number of measurement dimensions supported by this trajectory. | |
| static constexpr bool | ReadOnly = IsReadOnlyMultiTrajectory<Derived>::value |
| Flag indicating whether this multi-trajectory is read-only. | |
Protected Member Functions | |
| MultiTrajectory ()=default | |
| void | addTrackStateComponents (IndexType istate, TrackStatePropMask mask) |
| Add additional components to an existing track state. | |
| template<std::size_t measdim, typename val_t, typename cov_t> | |
| void | allocateCalibrated (IndexType istate, const Eigen::DenseBase< val_t > &val, const Eigen::DenseBase< cov_t > &cov) |
| Allocate storage for calibrated measurement. | |
| void | allocateCalibrated (IndexType istate, std::size_t measdim) |
| Allocate storage for a calibrated measurement of specified dimension. | |
| template<std::size_t measdim> requires (!ReadOnly) | |
| TrackStateProxy::template Calibrated< measdim > | calibrated (IndexType istate) |
| Retrieve a calibrated measurement proxy instance for a measurement at a given index. | |
| template<std::size_t measdim> | |
| ConstTrackStateProxy::template ConstCalibrated< measdim > | calibrated (IndexType istate) const |
| Retrieve a calibrated measurement proxy instance for a measurement at a given index. | |
| template<std::size_t measdim> requires (!ReadOnly) | |
| TrackStateProxy::template CalibratedCovariance< measdim > | calibratedCovariance (IndexType istate) |
| Retrieve a calibrated measurement covariance proxy instance for a measurement at a given index. | |
| template<std::size_t measdim> | |
| ConstTrackStateProxy::template ConstCalibratedCovariance< measdim > | calibratedCovariance (IndexType istate) const |
| Retrieve a calibrated measurement covariance proxy instance for a measurement at a given index. | |
| IndexType | calibratedSize (IndexType istate) const |
| Get the calibrated measurement size for a track state. | |
| template<typename T> requires (!ReadOnly) | |
| T & | component (HashedString key, IndexType istate) |
| Retrieve a mutable reference to a component. | |
| template<typename T> | |
| const T & | component (HashedString key, IndexType istate) const |
| Retrieve a const reference to a component. | |
| template<typename T, HashedString key> requires (!ReadOnly) | |
| T & | component (IndexType istate) |
| Retrieve a mutable reference to a component. | |
| template<typename T, HashedString key> | |
| const T & | component (IndexType istate) const |
| Retrieve a const reference to a component. | |
| TrackStateProxy::Covariance | covariance (IndexType covIdx) |
| ConstTrackStateProxy::ConstCovariance | covariance (IndexType covIdx) const |
| TrackStateProxy::EffectiveCalibrated | effectiveCalibrated (IndexType istate) |
| Retrieve a calibrated measurement covariance proxy instance for a measurement at a given index. | |
| ConstTrackStateProxy::EffectiveCalibrated | effectiveCalibrated (IndexType istate) const |
| Retrieve a calibrated measurement covariance proxy instance for a measurement at a given index. | |
| TrackStateProxy::EffectiveCalibratedCovariance | effectiveCalibratedCovariance (IndexType istate) |
| Retrieve a calibrated measurement covariance proxy instance for a measurement at a given index. | |
| ConstTrackStateProxy::EffectiveCalibratedCovariance | effectiveCalibratedCovariance (IndexType istate) const |
| Retrieve a calibrated measurement covariance proxy instance for a measurement at a given index. | |
| SourceLink | getUncalibratedSourceLink (IndexType istate) const |
| Get the uncalibrated source link for a track state. | |
| bool | has (HashedString key, IndexType istate) const |
Check for component existence of key in track satet istate. | |
| template<HashedString key> | |
| bool | has (IndexType istate) const |
Check for component existence of key in track satet istate. | |
| TrackStateProxy::Jacobian | jacobian (IndexType istate) |
| Retrieve a jacobian proxy instance for a jacobian at a given index. | |
| ConstTrackStateProxy::ConstJacobian | jacobian (IndexType istate) const |
| Retrieve a jacobian proxy instance for a jacobian at a given index. | |
| TrackStateProxy::Parameters | parameters (IndexType parIdx) |
| ConstTrackStateProxy::ConstParameters | parameters (IndexType parIdx) const |
| const Surface * | referenceSurface (IndexType istate) const |
| Get the reference surface for a track state. | |
| void | setReferenceSurface (IndexType istate, std::shared_ptr< const Surface > surface) |
| Set the reference surface for a track state. | |
| void | setUncalibratedSourceLink (IndexType istate, SourceLink &&sourceLink) |
| Set the uncalibrated source link for a track state. | |
| void | shareFrom (IndexType iself, IndexType iother, TrackStatePropMask shareSource, TrackStatePropMask shareTarget) |
| Share a shareable component from between track state. | |
| void | unset (TrackStatePropMask target, IndexType istate) |
| Unset an optional track state component. | |
Store a trajectory of track states with multiple components.
This container supports both simple, sequential trajectories as well as combinatorial or multi-component trajectories. Each point can store a parent point such that the trajectory forms a directed, acyclic graph of sub-trajectories. From a set of endpoints, all possible sub-components can be easily identified. Some functionality is provided to simplify iterating over specific sub-components.
| using Acts::MultiTrajectory< derived_t >::ConstTrackStateProxy |
Alias for the const version of a track state proxy, with the same backends as this container.
| using Acts::MultiTrajectory< derived_t >::Derived = derived_t |
Type alias for derived multi-trajectory implementation.
| using Acts::MultiTrajectory< derived_t >::IndexType = TrackIndexType |
The index type of the track state container.
| using Acts::MultiTrajectory< derived_t >::TrackStateProxy |
Alias for the mutable version of a track state proxy, with the same backends as this container.
|
protecteddefault |
| void Acts::MultiTrajectory< derived_t >::addColumn | ( | std::string_view | key | ) |
Add a column to the MultiTrajectory.
| T | Type of the column values to add |
| key | the name of the column to be added |
| IndexType Acts::MultiTrajectory< derived_t >::addTrackState | ( | TrackStatePropMask | mask = TrackStatePropMask::All, |
| IndexType | iprevious = kInvalid ) |
Add a track state without providing explicit information.
Which components of the track state are initialized/allocated can be controlled via mask
| mask | The bitmask that instructs which components to allocate and which to leave invalid |
| iprevious | index of the previous state, kInvalid if first |
|
protected |
Add additional components to an existing track state.
| istate | The track state index to alter |
| mask | The bitmask that instructs which components to allocate |
|
protected |
Allocate storage for calibrated measurement.
| measdim | Measurement dimension |
| val_t | Value type |
| cov_t | Covariance type |
| istate | State index |
| val | Measurement values |
| cov | Measurement covariance |
|
protected |
Allocate storage for a calibrated measurement of specified dimension.
| istate | The track state to store for |
| measdim | the dimension of the measurement to store |
| void Acts::MultiTrajectory< derived_t >::applyBackwards | ( | IndexType | iendpoint, |
| F && | callable ) |
Apply a function to all previous states starting at a given endpoint.
| iendpoint | index of the last state |
| callable | modifying functor to be called with each point |
|
protected |
Retrieve a calibrated measurement proxy instance for a measurement at a given index.
| measdim | the measurement dimension |
| istate | The track state |
|
protected |
Retrieve a calibrated measurement proxy instance for a measurement at a given index.
| measdim | the measurement dimension |
| istate | The track state |
|
protected |
Retrieve a calibrated measurement covariance proxy instance for a measurement at a given index.
| measdim | the measurement dimension |
| istate | The track state |
|
protected |
Retrieve a calibrated measurement covariance proxy instance for a measurement at a given index.
| istate | The track state |
|
protected |
Get the calibrated measurement size for a track state.
| istate | The track state |
| void Acts::MultiTrajectory< derived_t >::clear | ( | ) |
Clear the MultiTrajectory.
Leaves the underlying storage untouched
|
protected |
Retrieve a mutable reference to a component.
| T | The type of the component to access |
| key | String key for the component to access |
| istate | The track state index to operate on |
key
|
protected |
Retrieve a const reference to a component.
| T | The type of the component to access |
| key | String key for the component to access |
| istate | The track state index to operate on |
key
|
protected |
Retrieve a mutable reference to a component.
| T | The type of the component to access |
| key | String key for the component to access |
| istate | The track state index to operate on |
key
|
protected |
Retrieve a const reference to a component.
| T | The type of the component to access |
| key | String key for the component to access |
| istate | The track state index to operate on |
key
|
protected |
|
protected |
|
protected |
Retrieve a calibrated measurement covariance proxy instance for a measurement at a given index.
| istate | The track state |
|
protected |
Retrieve a calibrated measurement covariance proxy instance for a measurement at a given index.
| istate | The track state |
|
protected |
Retrieve a calibrated measurement covariance proxy instance for a measurement at a given index.
| istate | The track state |
|
protected |
Retrieve a calibrated measurement covariance proxy instance for a measurement at a given index.
| istate | The track state |
| auto Acts::MultiTrajectory< derived_t >::forwardTrackStateRange | ( | IndexType | istartpoint | ) |
Range for the track states from istartpoint to the trajectory end, i.e from inside out.
| istartpoint | Trajectory state index for the innermost track state to start from |
| auto Acts::MultiTrajectory< derived_t >::forwardTrackStateRange | ( | IndexType | istartpoint | ) | const |
Range for the track states from istartpoint to the trajectory end, i.e from inside out.
| istartpoint | Trajectory state index for the innermost track state to start from |
| TrackStateProxy Acts::MultiTrajectory< derived_t >::getTrackState | ( | IndexType | istate | ) |
Access a writable point on the trajectory by index.
| istate | The index to access |
| ConstTrackStateProxy Acts::MultiTrajectory< derived_t >::getTrackState | ( | IndexType | istate | ) | const |
Access a read-only point on the trajectory by index.
| istate | The index to access |
|
protected |
Get the uncalibrated source link for a track state.
| istate | State index |
|
protected |
Check for component existence of key in track satet istate.
| key | The key for which to check |
| istate | The track state index to check |
|
protected |
Check for component existence of key in track satet istate.
| key | The key for which to check |
| istate | The track state index to check |
| bool Acts::MultiTrajectory< derived_t >::hasColumn | ( | HashedString | key | ) | const |
Check if a column with a key key exists.
| key | Key to check for a column with |
|
protected |
Retrieve a jacobian proxy instance for a jacobian at a given index.
| istate | The track state |
|
protected |
Retrieve a jacobian proxy instance for a jacobian at a given index.
| istate | The track state |
| TrackStateProxy Acts::MultiTrajectory< derived_t >::makeTrackState | ( | TrackStatePropMask | mask = TrackStatePropMask::All, |
| IndexType | iprevious = kInvalid ) |
Add a track state to the container and return a track state proxy to it This effectively calls addTrackState and getTrackState.
| mask | Mask indicating which track state components to allocate |
| iprevious | Index of the previous track state for linking |
|
protected |
|
protected |
|
protected |
Get the reference surface for a track state.
| istate | State index |
| auto Acts::MultiTrajectory< derived_t >::reverseTrackStateRange | ( | IndexType | iendpoint | ) |
Range for the track states from iendpoint to the trajectory start, i.e from the outside in.
| iendpoint | Trajectory entry point to start from |
| auto Acts::MultiTrajectory< derived_t >::reverseTrackStateRange | ( | IndexType | iendpoint | ) | const |
Range for the track states from iendpoint to the trajectory start.
| iendpoint | Trajectory entry point to start from |
|
protected |
Set the reference surface for a track state.
| istate | State index |
| surface | Shared pointer to the reference surface |
|
protected |
Set the uncalibrated source link for a track state.
| istate | State index |
| sourceLink | Source link to set |
|
protected |
Share a shareable component from between track state.
| iself | The track state index to share "into" |
| iother | The track state index to share from |
| shareSource | Which component to share from |
| shareTarget | Which component to share as. This doesn't have to be the same as shareSource, e.g. predicted can be shared as filtered. |
TrackStatePropMask. MultiTrajectory instance | IndexType Acts::MultiTrajectory< derived_t >::size | ( | ) | const |
Returns the number of track states contained.
|
protected |
Unset an optional track state component.
| target | The component to unset |
| istate | The track state index to operate on |
| void Acts::MultiTrajectory< derived_t >::visitBackwards | ( | IndexType | iendpoint, |
| F && | callable ) const |
Visit all previous states starting at a given endpoint.
| iendpoint | index of the last state |
| callable | non-modifying functor to be called with each point |
|
staticconstexpr |
Sentinel value that indicates an invalid index.
|
staticconstexpr |
Maximum number of measurement dimensions supported by this trajectory.
|
staticconstexpr |
Flag indicating whether this multi-trajectory is read-only.