Analysis Software
Documentation for sPHENIX simulation software
|
#include <acts/blob/sPHENIX/Core/include/Acts/EventData/MultiTrajectory.hpp>
Public Types | |
using | Derived = derived_t |
using | ConstTrackStateProxy = detail_lt::TrackStateProxy< Derived, MeasurementSizeMax, true > |
using | TrackStateProxy = detail_lt::TrackStateProxy< Derived, MeasurementSizeMax, false > |
using | IndexType = typename TrackStateProxy::IndexType |
Public Member Functions | |
ConstTrackStateProxy | getTrackState (IndexType istate) const |
template<bool RO = ReadOnly, typename = std::enable_if_t<!RO>> | |
TrackStateProxy | getTrackState (IndexType istate) |
template<typename F > | |
void | visitBackwards (IndexType iendpoint, F &&callable) const |
auto | reverseTrackStateRange (IndexType iendpoint) const |
template<bool RO = ReadOnly, typename = std::enable_if_t<!RO>> | |
auto | reverseTrackStateRange (IndexType iendpoint) |
auto | forwardTrackStateRange (IndexType istartpoint) const |
template<bool RO = ReadOnly, typename = std::enable_if_t<!RO>> | |
auto | forwardTrackStateRange (IndexType istartpoint) |
template<typename F , bool RO = ReadOnly, typename = std::enable_if_t<!RO>> | |
void | applyBackwards (IndexType iendpoint, F &&callable) |
auto && | convertToReadOnly () const |
template<bool RO = ReadOnly, typename = std::enable_if_t<!RO>> | |
constexpr void | clear () |
Clear the MultiTrajectory . Leaves the underlying storage untouched. | |
constexpr IndexType | size () const |
Returns the number of track states contained. | |
template<bool RO = ReadOnly, typename = std::enable_if_t<!RO>> | |
constexpr IndexType | addTrackState (TrackStatePropMask mask=TrackStatePropMask::All, IndexType iprevious=kInvalid) |
template<typename T , bool RO = ReadOnly, typename = std::enable_if_t<!RO>> | |
constexpr void | addColumn (const std::string &key) |
constexpr bool | hasColumn (HashedString key) const |
Static Public Attributes | |
static constexpr bool | ReadOnly = IsReadOnlyMultiTrajectory<Derived>::value |
static constexpr unsigned int | MeasurementSizeMax |
static constexpr IndexType | kInvalid = TrackStateProxy::kInvalid |
Protected Member Functions | |
MultiTrajectory ()=default | |
constexpr bool | has (HashedString key, IndexType istate) const |
template<HashedString key> | |
constexpr bool | has (IndexType istate) const |
template<bool RO = ReadOnly, typename = std::enable_if_t<!RO>> | |
constexpr TrackStateProxy::Parameters | parameters (IndexType parIdx) |
constexpr ConstTrackStateProxy::Parameters | parameters (IndexType parIdx) const |
template<bool RO = ReadOnly, typename = std::enable_if_t<!RO>> | |
constexpr TrackStateProxy::Covariance | covariance (IndexType covIdx) |
constexpr ConstTrackStateProxy::Covariance | covariance (IndexType covIdx) const |
template<bool RO = ReadOnly, typename = std::enable_if_t<!RO>> | |
constexpr TrackStateProxy::Covariance | jacobian (IndexType jacIdx) |
constexpr ConstTrackStateProxy::Covariance | jacobian (IndexType jacIdx) const |
template<size_t measdim, bool RO = ReadOnly, typename = std::enable_if_t<!RO>> | |
constexpr TrackStateProxy::template Measurement< measdim > | measurement (IndexType measIdx) |
template<size_t measdim> | |
constexpr ConstTrackStateProxy::template Measurement< measdim > | measurement (IndexType measIdx) const |
template<size_t measdim, bool RO = ReadOnly, typename = std::enable_if_t<!RO>> | |
constexpr TrackStateProxy::template MeasurementCovariance< measdim > | measurementCovariance (IndexType covIdx) |
template<size_t measdim> | |
constexpr ConstTrackStateProxy::template MeasurementCovariance< measdim > | measurementCovariance (IndexType covIdx) const |
IndexType | calibratedSize (IndexType istate) const |
template<bool RO = ReadOnly, typename = std::enable_if_t<!RO>> | |
constexpr void | shareFrom (IndexType iself, IndexType iother, TrackStatePropMask shareSource, TrackStatePropMask shareTarget) |
template<bool RO = ReadOnly, typename = std::enable_if_t<!RO>> | |
constexpr void | unset (TrackStatePropMask target, IndexType istate) |
template<typename T , HashedString key, bool RO = ReadOnly, typename = std::enable_if_t<!RO>> | |
constexpr T & | component (IndexType istate) |
template<typename T , bool RO = ReadOnly, typename = std::enable_if_t<!RO>> | |
constexpr T & | component (HashedString key, IndexType istate) |
template<typename T , HashedString key> | |
constexpr const T & | component (IndexType istate) const |
template<typename T > | |
constexpr const T & | component (HashedString key, IndexType istate) const |
void | allocateCalibrated (IndexType istate, size_t measdim) |
template<bool RO = ReadOnly, typename = std::enable_if_t<!RO>> | |
void | setUncalibratedSourceLink (IndexType istate, SourceLink sourceLink) |
SourceLink | getUncalibratedSourceLink (IndexType istate) const |
const Surface * | referenceSurface (IndexType istate) const |
template<bool RO = ReadOnly, typename = std::enable_if_t<!RO>> | |
void | setReferenceSurface (IndexType istate, std::shared_ptr< const Surface > surface) |
Private Member Functions | |
constexpr Derived & | self () |
Helper to static cast this to the Derived class for CRTP. | |
constexpr const Derived & | self () const |
Helper to static cast this to the Derived class for CRTP. Const version. | |
constexpr bool | checkOptional (HashedString key, IndexType istate) const |
Friends | |
class | detail_lt::TrackStateProxy< Derived, MeasurementSizeMax, true > |
class | detail_lt::TrackStateProxy< Derived, MeasurementSizeMax, false > |
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.
Definition at line 1075 of file MultiTrajectory.hpp.
View newest version in sPHENIX GitHub at line 1075 of file MultiTrajectory.hpp
using Acts::MultiTrajectory< derived_t >::ConstTrackStateProxy = detail_lt::TrackStateProxy<Derived, MeasurementSizeMax, true> |
Definition at line 1087 of file MultiTrajectory.hpp.
View newest version in sPHENIX GitHub at line 1087 of file MultiTrajectory.hpp
using Acts::MultiTrajectory< derived_t >::Derived = derived_t |
Definition at line 1077 of file MultiTrajectory.hpp.
View newest version in sPHENIX GitHub at line 1077 of file MultiTrajectory.hpp
using Acts::MultiTrajectory< derived_t >::IndexType = typename TrackStateProxy::IndexType |
Definition at line 1091 of file MultiTrajectory.hpp.
View newest version in sPHENIX GitHub at line 1091 of file MultiTrajectory.hpp
using Acts::MultiTrajectory< derived_t >::TrackStateProxy = detail_lt::TrackStateProxy<Derived, MeasurementSizeMax, false> |
Definition at line 1089 of file MultiTrajectory.hpp.
View newest version in sPHENIX GitHub at line 1089 of file MultiTrajectory.hpp
|
protecteddefault |
|
inline |
Add a column to the MultiTrajectory
T | Type of the column values to add |
Definition at line 1281 of file MultiTrajectory.hpp.
View newest version in sPHENIX GitHub at line 1281 of file MultiTrajectory.hpp
Referenced by BOOST_AUTO_TEST_CASE().
|
inline |
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 |
Definition at line 1270 of file MultiTrajectory.hpp.
View newest version in sPHENIX GitHub at line 1270 of file MultiTrajectory.hpp
Referenced by BOOST_AUTO_TEST_CASE(), and BOOST_AUTO_TEST_CASE_TEMPLATE().
|
inlineprotected |
Allocate storage for a calibrated measurement of specified dimension
istate | The track state to store for |
measdim | the dimension of the measurement to store |
Definition at line 1486 of file MultiTrajectory.hpp.
View newest version in sPHENIX GitHub at line 1486 of file MultiTrajectory.hpp
|
inline |
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 |
Definition at line 1215 of file MultiTrajectory.hpp.
View newest version in sPHENIX GitHub at line 1215 of file MultiTrajectory.hpp
|
inlineprotected |
Get the calibrated measurement size for a track state
istate | The track state |
Definition at line 1407 of file MultiTrajectory.hpp.
View newest version in sPHENIX GitHub at line 1407 of file MultiTrajectory.hpp
|
inlineprivate |
Helper function to check if a component exists IF it is an optional one. Used in assertions
Definition at line 1107 of file MultiTrajectory.hpp.
View newest version in sPHENIX GitHub at line 1107 of file MultiTrajectory.hpp
|
inline |
Clear the MultiTrajectory
. Leaves the underlying storage untouched.
Definition at line 1256 of file MultiTrajectory.hpp.
View newest version in sPHENIX GitHub at line 1256 of file MultiTrajectory.hpp
|
inlineprotected |
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
Definition at line 1443 of file MultiTrajectory.hpp.
View newest version in sPHENIX GitHub at line 1443 of file MultiTrajectory.hpp
|
inlineprotected |
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
Definition at line 1454 of file MultiTrajectory.hpp.
View newest version in sPHENIX GitHub at line 1454 of file MultiTrajectory.hpp
|
inlineprotected |
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
Definition at line 1465 of file MultiTrajectory.hpp.
View newest version in sPHENIX GitHub at line 1465 of file MultiTrajectory.hpp
|
inlineprotected |
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
Definition at line 1476 of file MultiTrajectory.hpp.
View newest version in sPHENIX GitHub at line 1476 of file MultiTrajectory.hpp
|
inline |
Definition at line 1245 of file MultiTrajectory.hpp.
View newest version in sPHENIX GitHub at line 1245 of file MultiTrajectory.hpp
|
inlineprotected |
Retrieve a covariance proxy instance for a covariance at a given index
covIdx | Index into the covariance column |
Definition at line 1332 of file MultiTrajectory.hpp.
View newest version in sPHENIX GitHub at line 1332 of file MultiTrajectory.hpp
|
inlineprotected |
Retrieve a covariance proxy instance for a covariance at a given index
covIdx | Index into the covariance column |
Definition at line 1339 of file MultiTrajectory.hpp.
View newest version in sPHENIX GitHub at line 1339 of file MultiTrajectory.hpp
|
inline |
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 |
Definition at line 1181 of file MultiTrajectory.hpp.
View newest version in sPHENIX GitHub at line 1181 of file MultiTrajectory.hpp
|
inline |
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 |
Definition at line 1197 of file MultiTrajectory.hpp.
View newest version in sPHENIX GitHub at line 1197 of file MultiTrajectory.hpp
|
inline |
Access a read-only point on the trajectory by index.
istate | The index to access |
Definition at line 1126 of file MultiTrajectory.hpp.
View newest version in sPHENIX GitHub at line 1126 of file MultiTrajectory.hpp
Referenced by BOOST_AUTO_TEST_CASE(), and BOOST_AUTO_TEST_CASE_TEMPLATE().
|
inline |
Access a writable point on the trajectory by index.
istate | The index to access |
Definition at line 1134 of file MultiTrajectory.hpp.
View newest version in sPHENIX GitHub at line 1134 of file MultiTrajectory.hpp
|
inlineprotected |
Definition at line 1498 of file MultiTrajectory.hpp.
View newest version in sPHENIX GitHub at line 1498 of file MultiTrajectory.hpp
|
inlineprotected |
Check for component existence of key
in track satet istate
key | The key for which to check |
istate | The track state index to check |
Definition at line 1299 of file MultiTrajectory.hpp.
View newest version in sPHENIX GitHub at line 1299 of file MultiTrajectory.hpp
|
inlineprotected |
Check for component existence of key
in track satet istate
key | The key for which to check |
istate | The track state index to check |
Definition at line 1308 of file MultiTrajectory.hpp.
View newest version in sPHENIX GitHub at line 1308 of file MultiTrajectory.hpp
|
inline |
Check if a column with a key key
exists.
key | Key to check for a column with |
Definition at line 1288 of file MultiTrajectory.hpp.
View newest version in sPHENIX GitHub at line 1288 of file MultiTrajectory.hpp
|
inlineprotected |
Retrieve a jacobian proxy instance for a jacobian at a given index
jacIdx | Index into the jacobian column |
Definition at line 1348 of file MultiTrajectory.hpp.
View newest version in sPHENIX GitHub at line 1348 of file MultiTrajectory.hpp
|
inlineprotected |
Retrieve a jacobian proxy instance for a jacobian at a given index
jacIdx | Index into the jacobian column |
Definition at line 1355 of file MultiTrajectory.hpp.
View newest version in sPHENIX GitHub at line 1355 of file MultiTrajectory.hpp
|
inlineprotected |
Retrieve a measurement proxy instance for a measurement at a given index
measdim | the measurement dimension |
measIdx | Index into the measurement column |
Definition at line 1366 of file MultiTrajectory.hpp.
View newest version in sPHENIX GitHub at line 1366 of file MultiTrajectory.hpp
|
inlineprotected |
Retrieve a measurement proxy instance for a measurement at a given index
measdim | the measurement dimension |
measIdx | Index into the measurement column |
Definition at line 1377 of file MultiTrajectory.hpp.
View newest version in sPHENIX GitHub at line 1377 of file MultiTrajectory.hpp
|
inlineprotected |
Retrieve a measurement covariance proxy instance for a measurement at a given index
measdim | the measurement dimension |
covIdx | Index into the measurement covariance column |
Definition at line 1389 of file MultiTrajectory.hpp.
View newest version in sPHENIX GitHub at line 1389 of file MultiTrajectory.hpp
|
inlineprotected |
Retrieve a measurement covariance proxy instance for a measurement at a given index
covIdx | Index into the measurement covariance column |
Definition at line 1400 of file MultiTrajectory.hpp.
View newest version in sPHENIX GitHub at line 1400 of file MultiTrajectory.hpp
|
inlineprotected |
Retrieve a parameter proxy instance for parameters at a given index
parIdx | Index into the parameter column |
Definition at line 1316 of file MultiTrajectory.hpp.
View newest version in sPHENIX GitHub at line 1316 of file MultiTrajectory.hpp
|
inlineprotected |
Retrieve a parameter proxy instance for parameters at a given index
parIdx | Index into the parameter column |
Definition at line 1323 of file MultiTrajectory.hpp.
View newest version in sPHENIX GitHub at line 1323 of file MultiTrajectory.hpp
|
inlineprotected |
Definition at line 1502 of file MultiTrajectory.hpp.
View newest version in sPHENIX GitHub at line 1502 of file MultiTrajectory.hpp
|
inline |
Range for the track states from iendpoint
to the trajectory start
iendpoint | Trajectory entry point to start from |
Definition at line 1149 of file MultiTrajectory.hpp.
View newest version in sPHENIX GitHub at line 1149 of file MultiTrajectory.hpp
|
inline |
Range for the track states from iendpoint
to the trajectory start, i.e from the outside in.
iendpoint | Trajectory entry point to start from |
Definition at line 1165 of file MultiTrajectory.hpp.
View newest version in sPHENIX GitHub at line 1165 of file MultiTrajectory.hpp
|
inlineprivate |
Helper to static cast this to the Derived class for CRTP.
Definition at line 1099 of file MultiTrajectory.hpp.
View newest version in sPHENIX GitHub at line 1099 of file MultiTrajectory.hpp
|
inlineprivate |
Helper to static cast this to the Derived class for CRTP. Const version.
Definition at line 1101 of file MultiTrajectory.hpp.
View newest version in sPHENIX GitHub at line 1101 of file MultiTrajectory.hpp
|
inlineprotected |
Definition at line 1507 of file MultiTrajectory.hpp.
View newest version in sPHENIX GitHub at line 1507 of file MultiTrajectory.hpp
|
inlineprotected |
Definition at line 1494 of file MultiTrajectory.hpp.
View newest version in sPHENIX GitHub at line 1494 of file MultiTrajectory.hpp
|
inlineprotected |
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 Definition at line 1422 of file MultiTrajectory.hpp.
View newest version in sPHENIX GitHub at line 1422 of file MultiTrajectory.hpp
|
inline |
Returns the number of track states contained.
Definition at line 1261 of file MultiTrajectory.hpp.
View newest version in sPHENIX GitHub at line 1261 of file MultiTrajectory.hpp
Referenced by BOOST_AUTO_TEST_CASE().
|
inlineprotected |
Unset an optional track state component
target | The component to unset |
istate | The track state index to operate on |
Definition at line 1432 of file MultiTrajectory.hpp.
View newest version in sPHENIX GitHub at line 1432 of file MultiTrajectory.hpp
void MultiTrajectory< D >::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 |
Definition at line 91 of file MultiTrajectory.ipp.
View newest version in sPHENIX GitHub at line 91 of file MultiTrajectory.ipp
References Acts::MultiTrajectoryTraits::kInvalid.
Referenced by ActsTransformations::fillSvtxTrackStates(), ActsExamples::identifyContributingParticles(), and ActsEvaluator::visitTrackStates().
|
friend |
Definition at line 1514 of file MultiTrajectory.hpp.
View newest version in sPHENIX GitHub at line 1514 of file MultiTrajectory.hpp
|
friend |
Definition at line 1513 of file MultiTrajectory.hpp.
View newest version in sPHENIX GitHub at line 1513 of file MultiTrajectory.hpp
|
static |
Definition at line 1092 of file MultiTrajectory.hpp.
View newest version in sPHENIX GitHub at line 1092 of file MultiTrajectory.hpp
|
static |
Definition at line 1083 of file MultiTrajectory.hpp.
View newest version in sPHENIX GitHub at line 1083 of file MultiTrajectory.hpp
|
static |
Definition at line 1079 of file MultiTrajectory.hpp.
View newest version in sPHENIX GitHub at line 1079 of file MultiTrajectory.hpp
Referenced by BOOST_AUTO_TEST_CASE().