ATLAS Offline Software
Public Types | Public Member Functions | Public Attributes | Static Public Attributes | Private Member Functions | Private Attributes | List of all members
ActsTrk::MutableMultiTrajectory Class Referencefinal

Athena implementation of ACTS::MultiTrajectory (ReadWrite version) The data is stored in 4 external backends. More...

#include <MultiTrajectory.h>

Inheritance diagram for ActsTrk::MutableMultiTrajectory:
Collaboration diagram for ActsTrk::MutableMultiTrajectory:

Public Types

using TrackStateProxy = typename Acts::MultiTrajectory< ActsTrk::MutableMultiTrajectory >::TrackStateProxy
 
using ConstTrackStateProxy = typename Acts::MultiTrajectory< ActsTrk::MutableMultiTrajectory >::ConstTrackStateProxy
 

Public Member Functions

 MutableMultiTrajectory ()
 Construct a new Multi Trajectory object owning backends. More...
 
 MutableMultiTrajectory (const ActsTrk::MutableMultiTrajectory &other)
 
 MutableMultiTrajectory (ActsTrk::MutableMultiTrajectory &&other)=default
 
MutableMultiTrajectoryoperator= (const ActsTrk::MutableMultiTrajectory &other)=delete
 
ActsTrk::IndexType addTrackState_impl (Acts::TrackStatePropMask mask, ActsTrk::IndexType iprevious)
 Add state with stograge for data that depends on the mask. More...
 
void addTrackStateComponents_impl (ActsTrk::IndexType istate, Acts::TrackStatePropMask mask)
 Add state components for the given mask. More...
 
std::any component_impl (Acts::HashedString key, ActsTrk::IndexType istate) const
 Access component by key. More...
 
std::any component_impl (Acts::HashedString key, ActsTrk::IndexType istate)
 
bool has_impl (Acts::HashedString key, ActsTrk::IndexType istate) const
 checks if given state has requested component More...
 
constexpr bool hasColumn_impl (Acts::HashedString key) const
 checks if MTJ has requested column (irrespectively of the state) More...
 
template<typename T >
void addColumn_impl (std::string_view key)
 enables particular decoration, type & name need to be specified More...
 
void unset_impl (Acts::TrackStatePropMask target, ActsTrk::IndexType istate)
 unsets a given state More...
 
void shareFrom_impl (ActsTrk::IndexType iself, ActsTrk::IndexType iother, Acts::TrackStatePropMask shareSource, Acts::TrackStatePropMask shareTarget)
 shares from a given state More...
 
ConstTrackStateProxy::Parameters parameters_impl (ActsTrk::IndexType index) const
 obtains proxy to the track state under given index More...
 
TrackStateProxy::Parameters parameters_impl (ActsTrk::IndexType index)
 
ConstTrackStateProxy::Covariance covariance_impl (ActsTrk::IndexType index) const
 obtain covariances for a state at given index More...
 
TrackStateProxy::Covariance covariance_impl (ActsTrk::IndexType index)
 
ConstTrackStateProxy::Covariance trackMeasurementsCov (ActsTrk::IndexType index) const
 obtain measurement covariances for a state at given index More...
 
TrackStateProxy::Covariance trackMeasurementsCov (ActsTrk::IndexType index)
 
ConstTrackStateProxy::Covariance jacobian_impl (ActsTrk::IndexType istate) const
 obtain jacobian for a state at given index More...
 
TrackStateProxy::Covariance jacobian_impl (ActsTrk::IndexType istate)
 
template<std::size_t measdim>
ConstTrackStateProxy::template Calibrated< measdim > calibrated_impl (ActsTrk::IndexType index) const
 obtain calibrated measurements for a state at given index More...
 
template<std::size_t measdim, bool Enable = true>
std::enable_if_t< Enable, typename TrackStateProxy::template Calibrated< measdim > > calibrated_impl (ActsTrk::IndexType index)
 
template<std::size_t measdim>
ConstTrackStateProxy::template CalibratedCovariance< measdim > calibratedCovariance_impl (ActsTrk::IndexType index) const
 obtain measurements covariance for a state at given index More...
 
template<std::size_t measdim, bool Enable = true>
std::enable_if_t< Enable, typename TrackStateProxy::template CalibratedCovariance< measdim > > calibratedCovariance_impl (ActsTrk::IndexType index)
 
Acts::TrackIndexType size_impl () const
 size of the MTJ More...
 
void clear_impl ()
 clears backends decoration columns are still declared More...
 
bool has_backends () const
 checks if the backends are connected (i.e. More...
 
void setUncalibratedSourceLink_impl (ActsTrk::IndexType istate, const Acts::SourceLink &sourceLink)
 Implementation of uncalibrated link insertion. More...
 
Acts::SourceLink getUncalibratedSourceLink_impl (ActsTrk::IndexType istate) const
 Implementation of uncalibrated link fetch. More...
 
void setReferenceSurface_impl (IndexType, std::shared_ptr< const Acts::Surface >)
 
const Acts::Surface * referenceSurface_impl (IndexType) const
 
void copyDynamicFrom_impl (ActsTrk::IndexType, Acts::HashedString, const std::any &)
 
std::vector< Acts::HashedString > dynamicKeys_impl () const
 
xAOD::TrackStateAuxContainertrackStatesAux ()
 
const xAOD::TrackParametersAuxContainertrackParametersAux () const
 
xAOD::TrackParametersAuxContainertrackParametersAux ()
 
xAOD::TrackJacobianAuxContainertrackJacobiansAux ()
 
xAOD::TrackMeasurementAuxContainertrackMeasurementsAux ()
 
xAOD::TrackSurfaceAuxContainertrackSurfacesAux ()
 

Public Attributes

template<typename val_t , typename cov_t >
void allocateCalibrated_impl(IndexType istate, const Eigen::DenseBase< val_t > &val, const Eigen::DenseBase< cov_t > &cov) requires(Eigen ActsTrk::IndexType calibratedSize_impl (ActsTrk::IndexType istate) const
 Implementation of allocation of calibrated measurements. More...
 

Static Public Attributes

static const std::set< std::string > s_staticVariables
 

Private Member Functions

void trim ()
 

Private Attributes

std::unique_ptr< xAOD::TrackStateAuxContainerm_trackStatesAux
 
size_t m_trackStatesSize = 0
 
std::unique_ptr< xAOD::TrackParametersAuxContainerm_trackParametersAux
 
size_t m_trackParametersSize = 0
 
std::unique_ptr< xAOD::TrackJacobianAuxContainerm_trackJacobiansAux
 
size_t m_trackJacobiansSize = 0
 
std::unique_ptr< xAOD::TrackMeasurementAuxContainerm_trackMeasurementsAux
 
size_t m_trackMeasurementsSize = 0
 
std::unique_ptr< xAOD::TrackSurfaceContainerm_surfacesBackend
 
std::unique_ptr< xAOD::TrackSurfaceAuxContainerm_surfacesBackendAux
 
std::vector< ActsTrk::detail::Decorationm_decorations
 
std::vector< std::optional< Acts::SourceLink > > m_calibratedSourceLinks
 
std::vector< std::optional< Acts::SourceLink > > m_uncalibratedSourceLinks
 
std::vector< StoredSurfacem_surfaces
 
ActsGeometryContext m_geoContext
 

Detailed Description

Athena implementation of ACTS::MultiTrajectory (ReadWrite version) The data is stored in 4 external backends.

Backends lifetime are not maintained by this class. except when objects are default constructed (this functionality will be removed). This class is meant to be used in track finding algorithms (e.g. CKF) and then converted MultiTrajectory variant. These conversion is meant to be costless.

Definition at line 80 of file MultiTrajectory.h.

Member Typedef Documentation

◆ ConstTrackStateProxy

Definition at line 86 of file MultiTrajectory.h.

◆ TrackStateProxy

Definition at line 84 of file MultiTrajectory.h.

Constructor & Destructor Documentation

◆ MutableMultiTrajectory() [1/3]

ActsTrk::MutableMultiTrajectory::MutableMultiTrajectory ( )

Construct a new Multi Trajectory object owning backends.

Definition at line 73 of file MultiTrajectory.cxx.

74  : m_trackStatesAux (std::make_unique<xAOD::TrackStateAuxContainer>()),
75  m_trackParametersAux (std::make_unique<xAOD::TrackParametersAuxContainer>()),
76  m_trackJacobiansAux (std::make_unique<xAOD::TrackJacobianAuxContainer>()),
77  m_trackMeasurementsAux (std::make_unique<xAOD::TrackMeasurementAuxContainer>()),
78  m_surfacesBackend (std::make_unique<xAOD::TrackSurfaceContainer>()),
79  m_surfacesBackendAux (std::make_unique<xAOD::TrackSurfaceAuxContainer>())
80 {
81  INSPECTCALL("c-tor " << this)
82 
84 
85 }

◆ MutableMultiTrajectory() [2/3]

ActsTrk::MutableMultiTrajectory::MutableMultiTrajectory ( const ActsTrk::MutableMultiTrajectory other)

Definition at line 87 of file MultiTrajectory.cxx.

89  {
90  INSPECTCALL("copy c-tor " << this << " src " << &other << " " << other.size())
91 
92  *m_trackStatesAux.get() = *other.m_trackStatesAux.get();
93  *m_trackParametersAux.get() = *other.m_trackParametersAux.get();
94  *m_trackJacobiansAux.get() = *other.m_trackJacobiansAux.get();
95  *m_trackMeasurementsAux.get() = *other.m_trackMeasurementsAux.get();
96  m_decorations = other.m_decorations;
97  m_calibratedSourceLinks = other.m_calibratedSourceLinks;
98  m_uncalibratedSourceLinks = other.m_uncalibratedSourceLinks;
99 
100  m_surfaces = other.m_surfaces;
101  m_geoContext = other.m_geoContext;
102  INSPECTCALL("copy c-tor done")
103 }

◆ MutableMultiTrajectory() [3/3]

ActsTrk::MutableMultiTrajectory::MutableMultiTrajectory ( ActsTrk::MutableMultiTrajectory &&  other)
default

Member Function Documentation

◆ addColumn_impl()

template<typename T >
void ActsTrk::MutableMultiTrajectory::addColumn_impl ( std::string_view  key)

enables particular decoration, type & name need to be specified

Template Parameters
Ttype of decoration (usually POD)
Parameters
keyname of the decoration

◆ addTrackState_impl()

ActsTrk::IndexType ActsTrk::MutableMultiTrajectory::addTrackState_impl ( Acts::TrackStatePropMask  mask,
ActsTrk::IndexType  iprevious 
)

Add state with stograge for data that depends on the mask.

Parameters
mask- bitmask deciding which backends are extended
istate- previous state
Returns
index of just added state

Definition at line 119 of file MultiTrajectory.cxx.

121  {
122  using namespace Acts::HashedStringLiteral;
123  INSPECTCALL( this << " " << mask << " " << m_trackStatesAux->size() << " " << previous);
124  assert(m_trackStatesAux && "Missing Track States backend");
125  constexpr size_t NDim = 6; // TODO take this from somewhere
126  stepResize(m_trackStatesAux.get(), m_trackStatesSize);
127  m_surfaces.push_back(nullptr);
128 
129  // set kInvalid
130  using Acts::MultiTrajectoryTraits::kInvalid;
131 
132  if (previous >= kInvalid - 1)
133  previous = kInvalid; // fix needed in Acts::MTJ
135  using namespace Acts;
136 
137  auto addParam = [this]() -> ActsTrk::IndexType {
138  stepResize(m_trackParametersAux.get(), m_trackParametersSize, 60);
139  // TODO ask AK if this resize could be method of aux container
140  m_trackParametersAux->params[m_trackParametersSize].resize(NDim);
141  m_trackParametersAux->covMatrix[m_trackParametersSize].resize(NDim*NDim);
143  return m_trackParametersSize-1;
144  };
145 
146  auto addJacobian = [this]() -> ActsTrk::IndexType {
147  stepResize(m_trackJacobiansAux.get(), m_trackJacobiansSize);
148  m_trackJacobiansAux->jac[m_trackJacobiansSize].resize(NDim*NDim);
150  return m_trackJacobiansSize-1;
151  };
152 
153  auto addMeasurement = [this]() -> ActsTrk::IndexType {
156  m_trackMeasurementsAux->covMatrix[m_trackMeasurementsSize].resize(NDim*NDim);
158  return m_trackMeasurementsSize-1;
159  };
160 
161  m_trackStatesAux->predicted[m_trackStatesSize] = kInvalid;
162  if (ACTS_CHECK_BIT(mask, TrackStatePropMask::Predicted)) {
163  m_trackStatesAux->predicted[m_trackStatesSize] = addParam();
164  }
165 
166  m_trackStatesAux->filtered[m_trackStatesSize] = kInvalid;
167  if (ACTS_CHECK_BIT(mask, TrackStatePropMask::Filtered)) {
168  m_trackStatesAux->filtered[m_trackStatesSize] = addParam();
169  }
170 
171  m_trackStatesAux->smoothed[m_trackStatesSize] = kInvalid;
172  if (ACTS_CHECK_BIT(mask, TrackStatePropMask::Smoothed)) {
173  m_trackStatesAux->smoothed[m_trackStatesSize] = addParam();
174  }
175 
176  m_trackStatesAux->jacobian[m_trackStatesSize] = kInvalid;
177  if (ACTS_CHECK_BIT(mask, TrackStatePropMask::Jacobian)) {
178  m_trackStatesAux->jacobian[m_trackStatesSize] = addJacobian();
179  }
180 
181  m_uncalibratedSourceLinks.emplace_back(std::nullopt);
182  m_trackStatesAux->calibrated[m_trackStatesSize] = kInvalid;
183  m_trackStatesAux->measDim[m_trackStatesSize] = 0;
184  // @TODO uncalibrated ?
185  if (ACTS_CHECK_BIT(mask, TrackStatePropMask::Calibrated)) {
186  m_trackStatesAux->calibrated[m_trackStatesSize] = addMeasurement();
187  m_calibratedSourceLinks.emplace_back(std::nullopt);
189  }
190 
191  m_trackStatesAux->geometryId[m_trackStatesSize] = InvalidGeoID; // surface is invalid until set
193  return m_trackStatesSize-1;
194 }

◆ addTrackStateComponents_impl()

void ActsTrk::MutableMultiTrajectory::addTrackStateComponents_impl ( ActsTrk::IndexType  istate,
Acts::TrackStatePropMask  mask 
)

Add state components for the given mask.

Parameters
istate- state index
mask- bitmask deciding which backends are extended

Definition at line 197 of file MultiTrajectory.cxx.

199  {
200  using namespace Acts::HashedStringLiteral;
201  INSPECTCALL( this << " " << mask << " " << m_trackStatesAux->size() << " " << previous);
202 
203  assert(m_trackStatesAux && "Missing Track States backend");
204  constexpr size_t NDim = 6; // TODO take this from somewhere
205 
206  // set kInvalid
207  using Acts::MultiTrajectoryTraits::kInvalid;
208 
209  using namespace Acts;
210 
211  auto addParam = [this]() -> ActsTrk::IndexType {
212  stepResize(m_trackParametersAux.get(), m_trackParametersSize, 60);
213  // TODO ask AK if this resize could be method of aux container
214  m_trackParametersAux->params[m_trackParametersSize].resize(NDim);
215  m_trackParametersAux->covMatrix[m_trackParametersSize].resize(NDim*NDim);
217  return m_trackParametersSize-1;
218  };
219 
220  auto addJacobian = [this]() -> ActsTrk::IndexType {
221  stepResize(m_trackJacobiansAux.get(), m_trackJacobiansSize);
222  m_trackJacobiansAux->jac[m_trackJacobiansSize].resize(NDim*NDim);
224  return m_trackJacobiansSize-1;
225  };
226 
227  auto addMeasurement = [this]() -> ActsTrk::IndexType {
230  m_trackMeasurementsAux->covMatrix[m_trackMeasurementsSize].resize(NDim*NDim);
232  return m_trackMeasurementsSize-1;
233  };
234 
235  if ((m_trackStatesAux->predicted[istate] == kInvalid) &&
236  ACTS_CHECK_BIT(mask, TrackStatePropMask::Predicted)) {
237  m_trackStatesAux->predicted[istate] = addParam();
238  }
239 
240  if ((m_trackStatesAux->filtered[istate] == kInvalid) &&
241  ACTS_CHECK_BIT(mask, TrackStatePropMask::Filtered)) {
242  m_trackStatesAux->filtered[istate] = addParam();
243  }
244 
245  if ((m_trackStatesAux->smoothed[istate] == kInvalid) &&
246  ACTS_CHECK_BIT(mask, TrackStatePropMask::Smoothed)) {
247  m_trackStatesAux->smoothed[istate] = addParam();
248  }
249 
250  if ((m_trackStatesAux->jacobian[istate] == kInvalid) &&
251  ACTS_CHECK_BIT(mask, TrackStatePropMask::Jacobian)) {
252  m_trackStatesAux->jacobian[istate] = addJacobian();
253  }
254 
255  if ((m_trackStatesAux->calibrated[istate] == kInvalid) &&
256  ACTS_CHECK_BIT(mask, TrackStatePropMask::Calibrated)) {
257  m_trackStatesAux->calibrated[istate] = addMeasurement();
258  m_calibratedSourceLinks.emplace_back(std::nullopt);
259  m_trackStatesAux->measDim[istate] = m_trackMeasurementsAux->meas[m_trackStatesAux->calibrated[istate]].size();
260  }
261 }

◆ calibrated_impl() [1/2]

template<std::size_t measdim, bool Enable = true>
std::enable_if_t<Enable, typename TrackStateProxy::template Calibrated<measdim> > ActsTrk::MutableMultiTrajectory::calibrated_impl ( ActsTrk::IndexType  index)
inline

Definition at line 258 of file MultiTrajectory.h.

258  {
259  xAOD::TrackStateIndexType measIdx = m_trackStatesAux->calibrated[index];
260  return typename TrackStateProxy::template Calibrated<measdim>{m_trackMeasurementsAux->meas[measIdx].data()};
261  }

◆ calibrated_impl() [2/2]

template<std::size_t measdim>
ConstTrackStateProxy::template Calibrated<measdim> ActsTrk::MutableMultiTrajectory::calibrated_impl ( ActsTrk::IndexType  index) const
inline

obtain calibrated measurements for a state at given index

Parameters
index
Returns
TrackStateProxy::Calibrated

Definition at line 250 of file MultiTrajectory.h.

250  {
251  xAOD::TrackStateIndexType measIdx = m_trackStatesAux->calibrated[index];
252  return typename ConstTrackStateProxy::template Calibrated<measdim>{m_trackMeasurementsAux->meas[measIdx].data()};
253  }

◆ calibratedCovariance_impl() [1/2]

template<std::size_t measdim, bool Enable = true>
std::enable_if_t< Enable, typename TrackStateProxy::template CalibratedCovariance<measdim> > ActsTrk::MutableMultiTrajectory::calibratedCovariance_impl ( ActsTrk::IndexType  index)
inline

Definition at line 279 of file MultiTrajectory.h.

279  {
280  xAOD::TrackStateIndexType measIdx = m_trackStatesAux->calibrated[index];
281  return TrackStateProxy::template CalibratedCovariance<measdim>{m_trackMeasurementsAux->covMatrix[measIdx].data()};
282  }

◆ calibratedCovariance_impl() [2/2]

template<std::size_t measdim>
ConstTrackStateProxy::template CalibratedCovariance<measdim> ActsTrk::MutableMultiTrajectory::calibratedCovariance_impl ( ActsTrk::IndexType  index) const
inline

obtain measurements covariance for a state at given index

Parameters
index
Returns
TrackStateProxy::Covariance

Definition at line 272 of file MultiTrajectory.h.

272  {
273  xAOD::TrackStateIndexType measIdx = m_trackStatesAux->calibrated[index];
274  return ConstTrackStateProxy::template CalibratedCovariance<measdim>{m_trackMeasurementsAux->covMatrix[measIdx].data()};
275  }

◆ clear_impl()

void ActsTrk::MutableMultiTrajectory::clear_impl ( )

clears backends decoration columns are still declared

Definition at line 478 of file MultiTrajectory.cxx.

478  {
479  INSPECTCALL(this);
480  m_trackStatesAux->resize(0);
481  m_trackStatesSize = 0;
482 
483  m_trackParametersAux->resize(0);
485 
486  m_trackJacobiansAux->resize(0);
488 
489  m_trackMeasurementsAux->resize(0);
491 
492  m_surfacesBackend->clear();
493  m_surfaces.clear();
494  m_calibratedSourceLinks.clear();
496 }

◆ component_impl() [1/2]

std::any ActsTrk::MutableMultiTrajectory::component_impl ( Acts::HashedString  key,
ActsTrk::IndexType  istate 
)

Definition at line 354 of file MultiTrajectory.cxx.

355  {
356  using namespace Acts::HashedStringLiteral;
357  assert(istate < m_trackStatesAux->size() &&
358  "Attempt to reach beyond the Track States container size");
359  INSPECTCALL(key << " " << istate << " non-const component_impl")
360 
361  switch (key) {
362  case "previous"_hash:
363  return &(m_trackStatesAux->previous[istate]);
364  case "next"_hash:
365  return &(m_trackStatesAux->next[istate]);
366  case "chi2"_hash:
367  return &(m_trackStatesAux->chi2[istate]);
368  case "pathLength"_hash:
369  return &(m_trackStatesAux->pathLength[istate]);
370  case "predicted"_hash:
371  return &(m_trackStatesAux->predicted[istate]);
372  case "filtered"_hash:
373  return &(m_trackStatesAux->filtered[istate]);
374  case "smoothed"_hash:
375  return &(m_trackStatesAux->smoothed[istate]);
376  case "projector"_hash: {
377  auto idx = m_trackStatesAux->calibrated[istate];
378  return &(m_trackMeasurementsAux->projector[idx]);
379  }
380  case "measdim"_hash:
381  return &(m_trackStatesAux->measDim[istate]);
382  case "typeFlags"_hash:
383  return &(m_trackStatesAux->typeFlags[istate]);
384 
385  default: {
386  for (auto& d : m_decorations) {
387  if (d.hash == key) {
388  return d.setter(m_trackStatesAux.get(), istate, d.auxid);
389  }
390  }
391  throw std::runtime_error("MutableMultiTrajectory::component_impl no such component " + std::to_string(key));
392  }
393  }
394 }

◆ component_impl() [2/2]

std::any ActsTrk::MutableMultiTrajectory::component_impl ( Acts::HashedString  key,
ActsTrk::IndexType  istate 
) const

Access component by key.

Parameters
key
istate
Returns
std::any - that needs to be cast to a const ptr (non const for the nonconst variant)

Definition at line 397 of file MultiTrajectory.cxx.

399  {
400  using namespace Acts::HashedStringLiteral;
401  assert(istate < m_trackStatesAux->size() &&
402  "Attempt to reach beyond the Track States container size");
403  INSPECTCALL(key << " " << istate << " const component_impl")
404  switch (key) {
405  case "previous"_hash:
406  return &(to_const_ptr(m_trackStatesAux)->previous[istate]);
407  case "next"_hash:
408  return &(to_const_ptr(m_trackStatesAux)->next[istate]);
409  case "chi2"_hash:
410  return &(to_const_ptr(m_trackStatesAux)->chi2[istate]);
411  case "pathLength"_hash:
412  return &(to_const_ptr(m_trackStatesAux)->pathLength[istate]);
413  case "predicted"_hash:
414  return &(to_const_ptr(m_trackStatesAux)->predicted[istate]);
415  case "filtered"_hash:
416  return &(to_const_ptr(m_trackStatesAux)->filtered[istate]);
417  case "smoothed"_hash:
418  return &(to_const_ptr(m_trackStatesAux)->smoothed[istate]);
419  case "jacobian"_hash:
420  return &(to_const_ptr(m_trackStatesAux)->jacobian[istate]);
421  case "projector"_hash:{
422  auto idx = to_const_ptr(m_trackStatesAux)->calibrated[istate];
423  return &(to_const_ptr(m_trackMeasurementsAux)->projector[idx]);
424  }
425  case "calibrated"_hash: {
426  return &(to_const_ptr(m_trackStatesAux)->calibrated[istate]);
427  }
428  case "calibratedCov"_hash: {
429  return &(to_const_ptr(m_trackStatesAux)->calibrated[istate]);
430  }
431  case "measdim"_hash:
432  return &(to_const_ptr(m_trackStatesAux)->measDim[istate]);
433  case "typeFlags"_hash:
434  return &(to_const_ptr(m_trackStatesAux)->typeFlags[istate]);
435  default: {
436  for (auto& d : m_decorations) {
437  if (d.hash == key) {
438  INSPECTCALL("getting dynamic variable " << d.name << " " << istate);
439  return d.getter(m_trackStatesAux.get(), istate, d.auxid);
440  }
441  }
442  throw std::runtime_error("MutableMultiTrajectory::component_impl const no such component " + std::to_string(key));
443  }
444  }
445 }

◆ copyDynamicFrom_impl()

void ActsTrk::MutableMultiTrajectory::copyDynamicFrom_impl ( ActsTrk::IndexType  ,
Acts::HashedString  ,
const std::any &   
)
inline

Definition at line 342 of file MultiTrajectory.h.

344  {
345  // @TODO: This is currently unimplemented
346  }

◆ covariance_impl() [1/2]

TrackStateProxy::Covariance ActsTrk::MutableMultiTrajectory::covariance_impl ( ActsTrk::IndexType  index)
inline

Definition at line 202 of file MultiTrajectory.h.

202  {
203  return typename TrackStateProxy::Covariance{m_trackParametersAux->covMatrix[index].data()};
204  }

◆ covariance_impl() [2/2]

ConstTrackStateProxy::Covariance ActsTrk::MutableMultiTrajectory::covariance_impl ( ActsTrk::IndexType  index) const
inline

obtain covariances for a state at given index

Parameters
index
Returns
TrackStateProxy::Covariance

Definition at line 198 of file MultiTrajectory.h.

199  {
200  return typename ConstTrackStateProxy::Covariance{m_trackParametersAux->covMatrix[index].data()};
201  }

◆ dynamicKeys_impl()

std::vector<Acts::HashedString> ActsTrk::MutableMultiTrajectory::dynamicKeys_impl ( ) const
inline

Definition at line 348 of file MultiTrajectory.h.

348  {
349  // @TODO: This currently does not do anything useful
350  return {};
351  }

◆ getUncalibratedSourceLink_impl()

Acts::SourceLink ActsTrk::MutableMultiTrajectory::getUncalibratedSourceLink_impl ( ActsTrk::IndexType  istate) const

Implementation of uncalibrated link fetch.

Definition at line 729 of file MultiTrajectory.cxx.

730  {
731  assert(istate < m_trackStatesAux->size());
732  // at the moment when converting Trk::Track to Acts tracks the measurements on track
733  // are not converted to xAOD::UncalibratedMeasurements, and the Acts::SourceLinks
734  // just contain a pointer to the Trk::Measurement. To keep this functionality
735  // SourceLinks are either stored in the m_uncalibratedSourceLinks cache
736  // or taken from the xAOD backend.
737  static const SG::Accessor<const xAOD::UncalibratedMeasurement*> acc{"uncalibratedMeasurement"};
738  if (m_trackStatesAux->getAuxIDs().test(acc.auxid())){
739  return Acts::SourceLink( getElement(*m_trackStatesAux, acc, istate) );
740  }
741  else {
742  return m_uncalibratedSourceLinks[istate].value();
743  }
744 }

◆ has_backends()

bool ActsTrk::MutableMultiTrajectory::has_backends ( ) const

checks if the backends are connected (i.e.

is safe to use, else any other call will cause segfaults)

Definition at line 106 of file MultiTrajectory.cxx.

106  {
107  return m_trackStatesAux != nullptr and m_trackParametersAux != nullptr and
108  m_trackJacobiansAux != nullptr and m_trackMeasurementsAux != nullptr
109  and m_surfacesBackend != nullptr;
110 }

◆ has_impl()

bool ActsTrk::MutableMultiTrajectory::has_impl ( Acts::HashedString  key,
ActsTrk::IndexType  istate 
) const

checks if given state has requested component

Parameters
key- name (const char*)
istate- index in the
Returns
true
false

Definition at line 447 of file MultiTrajectory.cxx.

448  {
449  std::optional<bool> inTrackState =
450  ActsTrk::details::has_impl(m_trackStatesAux.get(), key, istate);
451  if (inTrackState.has_value())
452  return inTrackState.value();
453 
454  // TODO remove once EL based source links are in use only
455  using namespace Acts::HashedStringLiteral;
456  if (key == "uncalibratedSourceLink"_hash){
457  INSPECTCALL(key << " " << istate << " uncalibratedSourceLink")
458  static const SG::Accessor<const xAOD::UncalibratedMeasurement*> acc{"uncalibratedMeasurement"};
459  bool has_auxid= m_trackStatesAux->getAuxIDs().test(acc.auxid());
460  if (has_auxid) {
461  return getElement(*m_trackStatesAux, acc, istate) != nullptr;
462  }
463  else {
464  return (istate < m_uncalibratedSourceLinks.size() && m_uncalibratedSourceLinks[istate].has_value());
465  }
466  }
467 
468  for (auto& d : m_decorations) {
469  if (d.hash == key) {
470  INSPECTCALL(key << " " << istate << " d.name")
471  return true;
472  }
473  }
474 
475  return false;
476 }

◆ hasColumn_impl()

constexpr bool ActsTrk::MutableMultiTrajectory::hasColumn_impl ( Acts::HashedString  key) const
constexpr

checks if MTJ has requested column (irrespectively of the state)

Parameters
key- name (const char*)
Returns
true - if the column is present
false - if not

◆ jacobian_impl() [1/2]

TrackStateProxy::Covariance ActsTrk::MutableMultiTrajectory::jacobian_impl ( ActsTrk::IndexType  istate)
inline

Definition at line 236 of file MultiTrajectory.h.

236  {
237  xAOD::TrackStateIndexType jacIdx = m_trackStatesAux->jacobian[istate];
238  return typename TrackStateProxy::Covariance{m_trackJacobiansAux->jac[jacIdx].data()};
239  }

◆ jacobian_impl() [2/2]

ConstTrackStateProxy::Covariance ActsTrk::MutableMultiTrajectory::jacobian_impl ( ActsTrk::IndexType  istate) const
inline

obtain jacobian for a state at given index

Parameters
index
Returns
TrackStateProxy::Covariance

Definition at line 230 of file MultiTrajectory.h.

231  {
232  xAOD::TrackStateIndexType jacIdx = m_trackStatesAux->jacobian[istate];
233  return typename ConstTrackStateProxy::Covariance{m_trackJacobiansAux->jac[jacIdx].data()};
234  }

◆ operator=()

MutableMultiTrajectory& ActsTrk::MutableMultiTrajectory::operator= ( const ActsTrk::MutableMultiTrajectory other)
delete

◆ parameters_impl() [1/2]

TrackStateProxy::Parameters ActsTrk::MutableMultiTrajectory::parameters_impl ( ActsTrk::IndexType  index)
inline

Definition at line 188 of file MultiTrajectory.h.

188  {
189  return typename TrackStateProxy::Parameters{m_trackParametersAux->params[index].data()};
190  }

◆ parameters_impl() [2/2]

ConstTrackStateProxy::Parameters ActsTrk::MutableMultiTrajectory::parameters_impl ( ActsTrk::IndexType  index) const
inline

obtains proxy to the track state under given index

Parameters
index
Returns
TrackStateProxy::Parameters

Definition at line 183 of file MultiTrajectory.h.

184  {
185  return typename ConstTrackStateProxy::Parameters{m_trackParametersAux->params[index].data()};
186  }

◆ referenceSurface_impl()

const Acts::Surface * ActsTrk::MutableMultiTrajectory::referenceSurface_impl ( IndexType  istate) const

Definition at line 557 of file MultiTrajectory.cxx.

557  {
558  if ( istate >= m_surfaces.size() ) throw std::out_of_range("MutableMultiTrajectory index " + std::to_string(istate) + " out of range " + std::to_string(m_surfaces.size()) + " when accessing reference surface");
559  return toSurfacePtr(m_surfaces[istate]);
560 }

◆ setReferenceSurface_impl()

void ActsTrk::MutableMultiTrajectory::setReferenceSurface_impl ( IndexType  istate,
std::shared_ptr< const Acts::Surface >  surface 
)

Definition at line 531 of file MultiTrajectory.cxx.

532  {
533  if ( istate >= m_surfaces.size() )
534  m_surfaces.resize(istate+1, nullptr);
535 
536  m_trackStatesAux->geometryId[istate] = surface->geometryId().value();
537  if (surface->geometryId().value() == 0) { // free surface, needs recording of properties
538  m_surfacesBackend->push_back(new xAOD::TrackSurface());
539  encodeSurface(m_surfacesBackendAux.get(), m_surfacesBackendAux->size()-1, surface.get(), m_geoContext.context());
540  m_trackStatesAux->surfaceIndex[istate] = m_surfacesBackend->size()-1;
541  m_surfaces[istate] = std::move(surface); // and memory management
542 
543  } else {
544  m_surfaces[istate] = surface.get(); // no memory management, bare pointer
545  }
546  // store surface representation in
547 }

◆ setUncalibratedSourceLink_impl()

void ActsTrk::MutableMultiTrajectory::setUncalibratedSourceLink_impl ( ActsTrk::IndexType  istate,
const Acts::SourceLink &  sourceLink 
)

Implementation of uncalibrated link insertion.

Definition at line 506 of file MultiTrajectory.cxx.

507  {
508  INSPECTCALL( istate );
509 
510  static const SG::Decorator<const xAOD::UncalibratedMeasurement*> decor{"uncalibratedMeasurement"};
511  if (istate>= m_trackStatesAux->size()) {
512  throw std::range_error("istate out of range on TrackStates when attempting to access uncalibrated measurements");
513  }
514  std::span<const xAOD::UncalibratedMeasurement*> uncalibratedMeasurements = createDecoration(*m_trackStatesAux, decor);
515 
516  // @TODO normally the source links should contain an xAOD::UncalibratedMeasurement pointer
517  // but in some cases some other payload is used e.g. when converting Trk::Tracks.
518  // Only UncalibratedMeasurement pointer can be stored in the xAOD backend. Everything
519  // else has to go into the cache.
520  // Currently there is no possibility to check whether the source link contains a certain payload
521  // so can only catch the bad any cast
522  try {
523  uncalibratedMeasurements[istate] = sourceLink.get<ATLASUncalibSourceLink>();
524  }
525  catch (std::bad_any_cast &err) {
526  assert( istate < m_uncalibratedSourceLinks.size());
527  m_uncalibratedSourceLinks[istate] = sourceLink;
528  }
529 }

◆ shareFrom_impl()

void ActsTrk::MutableMultiTrajectory::shareFrom_impl ( ActsTrk::IndexType  iself,
ActsTrk::IndexType  iother,
Acts::TrackStatePropMask  shareSource,
Acts::TrackStatePropMask  shareTarget 
)

shares from a given state

Parameters
shareSource,shareTarget- property
iself,iother- indexes

Definition at line 264 of file MultiTrajectory.cxx.

268  {
269 
270  assert(ACTS_CHECK_BIT(this->getTrackState(iother).getMask(), shareSource) &&
271  "Source has incompatible allocation");
272 
273  using PM = Acts::TrackStatePropMask;
274  // set kInvalid
275  using Acts::MultiTrajectoryTraits::kInvalid;
276 
277  ActsTrk::IndexType sourceIndex{kInvalid};
278  switch (shareSource) {
279  case PM::Predicted:
280  sourceIndex = m_trackStatesAux->predicted[iother];
281  break;
282  case PM::Filtered:
283  sourceIndex = m_trackStatesAux->filtered[iother];
284  break;
285  case PM::Smoothed:
286  sourceIndex = m_trackStatesAux->smoothed[iother];
287  break;
288  case PM::Jacobian:
289  sourceIndex = m_trackStatesAux->jacobian[iother];
290  break;
291  default:
292  throw std::domain_error{"MutableMultiTrajectory Unable to share this component"};
293  }
294 
295  assert(sourceIndex != kInvalid);
296 
297  switch (shareTarget) {
298  case PM::Predicted:
299  assert(shareSource != PM::Jacobian);
300  m_trackStatesAux->predicted[iself] = sourceIndex;
301  break;
302  case PM::Filtered:
303  assert(shareSource != PM::Jacobian);
304  m_trackStatesAux->filtered[iself] = sourceIndex;
305  break;
306  case PM::Smoothed:
307  assert(shareSource != PM::Jacobian);
308  m_trackStatesAux->smoothed[iself] = sourceIndex;
309  break;
310  case PM::Jacobian:
311  assert(shareSource == PM::Jacobian);
312  m_trackStatesAux->jacobian[iself] = sourceIndex;
313  break;
314  default:
315  throw std::domain_error{"MutableMultiTrajectory Unable to share this component"};
316  }
317 }

◆ size_impl()

Acts::TrackIndexType ActsTrk::MutableMultiTrajectory::size_impl ( ) const
inline

size of the MTJ

Returns
size_t

Definition at line 290 of file MultiTrajectory.h.

290  {
291  return m_trackStatesSize;
292  }

◆ trackJacobiansAux()

xAOD::TrackJacobianAuxContainer* ActsTrk::MutableMultiTrajectory::trackJacobiansAux ( )
inline

Definition at line 364 of file MultiTrajectory.h.

364  {
365  return m_trackJacobiansAux.get();
366  }

◆ trackMeasurementsAux()

xAOD::TrackMeasurementAuxContainer* ActsTrk::MutableMultiTrajectory::trackMeasurementsAux ( )
inline

Definition at line 368 of file MultiTrajectory.h.

368  {
369  return m_trackMeasurementsAux.get();
370  }

◆ trackMeasurementsCov() [1/2]

TrackStateProxy::Covariance ActsTrk::MutableMultiTrajectory::trackMeasurementsCov ( ActsTrk::IndexType  index)
inline

Definition at line 218 of file MultiTrajectory.h.

218  {
219  return typename TrackStateProxy::Covariance{m_trackMeasurementsAux->covMatrix[index].data()};
220 
221  }

◆ trackMeasurementsCov() [2/2]

ConstTrackStateProxy::Covariance ActsTrk::MutableMultiTrajectory::trackMeasurementsCov ( ActsTrk::IndexType  index) const
inline

obtain measurement covariances for a state at given index

Parameters
index
Returns
TrackStateProxy::Covariance

Definition at line 212 of file MultiTrajectory.h.

213  {
214  return typename ConstTrackStateProxy::Covariance{m_trackMeasurementsAux->covMatrix[index].data()};
215 
216  }

◆ trackParametersAux() [1/2]

xAOD::TrackParametersAuxContainer* ActsTrk::MutableMultiTrajectory::trackParametersAux ( )
inline

Definition at line 360 of file MultiTrajectory.h.

360  {
361  return m_trackParametersAux.get();
362  }

◆ trackParametersAux() [2/2]

const xAOD::TrackParametersAuxContainer* ActsTrk::MutableMultiTrajectory::trackParametersAux ( ) const
inline

Definition at line 357 of file MultiTrajectory.h.

357  {
358  return m_trackParametersAux.get();
359  }

◆ trackStatesAux()

xAOD::TrackStateAuxContainer* ActsTrk::MutableMultiTrajectory::trackStatesAux ( )
inline

Definition at line 355 of file MultiTrajectory.h.

355 { return m_trackStatesAux.get(); }

◆ trackSurfacesAux()

xAOD::TrackSurfaceAuxContainer* ActsTrk::MutableMultiTrajectory::trackSurfacesAux ( )
inline

Definition at line 372 of file MultiTrajectory.h.

372  {
373  return m_surfacesBackendAux.get();
374  }

◆ trim()

void ActsTrk::MutableMultiTrajectory::trim ( )
private

Definition at line 562 of file MultiTrajectory.cxx.

562  {
564  static const SG::Decorator<const xAOD::UncalibratedMeasurement*> decor{"uncalibratedMeasurement"};
565  std::span<const xAOD::UncalibratedMeasurement*> uncalibratedMeasurements = createDecoration(*m_trackStatesAux, decor);
566  (void) uncalibratedMeasurements;
570 }

◆ unset_impl()

void ActsTrk::MutableMultiTrajectory::unset_impl ( Acts::TrackStatePropMask  target,
ActsTrk::IndexType  istate 
)

unsets a given state

Parameters
target- property
istate- index in the

Definition at line 320 of file MultiTrajectory.cxx.

322  {
323 
324  using PM = Acts::TrackStatePropMask;
325  // set kInvalid
326  using Acts::MultiTrajectoryTraits::kInvalid;
327 
328  switch (target) {
329  case PM::Predicted:
330  m_trackStatesAux->predicted[istate] = kInvalid;
331  break;
332  case PM::Filtered:
333  m_trackStatesAux->filtered[istate] = kInvalid;
334 
335  break;
336  case PM::Smoothed:
337  m_trackStatesAux->smoothed[istate] = kInvalid;
338  break;
339  case PM::Jacobian:
340  m_trackStatesAux->jacobian[istate] = kInvalid;
341 
342  break;
343  case PM::Calibrated:
344  m_trackStatesAux->calibrated[istate] = kInvalid;
345  // TODO here m_measOffset[istate] and m_measCovOffset[istate] should be
346  // set to kInvalid
347 
348  break;
349  default:
350  throw std::domain_error{"MutableMultiTrajectory Unable to unset this component"};
351  }
352 }

Member Data Documentation

◆ calibratedSize_impl

template<typename val_t , typename cov_t >
ActsTrk::IndexType ActsTrk::MutableMultiTrajectory::calibratedSize_impl

Implementation of allocation of calibrated measurements.

Implementation of calibrated size

Definition at line 323 of file MultiTrajectory.h.

◆ m_calibratedSourceLinks

std::vector<std::optional<Acts::SourceLink> > ActsTrk::MutableMultiTrajectory::m_calibratedSourceLinks
private

Definition at line 398 of file MultiTrajectory.h.

◆ m_decorations

std::vector<ActsTrk::detail::Decoration> ActsTrk::MutableMultiTrajectory::m_decorations
private

Definition at line 396 of file MultiTrajectory.h.

◆ m_geoContext

ActsGeometryContext ActsTrk::MutableMultiTrajectory::m_geoContext
private

Definition at line 402 of file MultiTrajectory.h.

◆ m_surfaces

std::vector<StoredSurface> ActsTrk::MutableMultiTrajectory::m_surfaces
private

Definition at line 401 of file MultiTrajectory.h.

◆ m_surfacesBackend

std::unique_ptr<xAOD::TrackSurfaceContainer> ActsTrk::MutableMultiTrajectory::m_surfacesBackend
private

Definition at line 394 of file MultiTrajectory.h.

◆ m_surfacesBackendAux

std::unique_ptr<xAOD::TrackSurfaceAuxContainer> ActsTrk::MutableMultiTrajectory::m_surfacesBackendAux
private

Definition at line 395 of file MultiTrajectory.h.

◆ m_trackJacobiansAux

std::unique_ptr<xAOD::TrackJacobianAuxContainer> ActsTrk::MutableMultiTrajectory::m_trackJacobiansAux
private

Definition at line 388 of file MultiTrajectory.h.

◆ m_trackJacobiansSize

size_t ActsTrk::MutableMultiTrajectory::m_trackJacobiansSize = 0
private

Definition at line 389 of file MultiTrajectory.h.

◆ m_trackMeasurementsAux

std::unique_ptr<xAOD::TrackMeasurementAuxContainer> ActsTrk::MutableMultiTrajectory::m_trackMeasurementsAux
private

Definition at line 391 of file MultiTrajectory.h.

◆ m_trackMeasurementsSize

size_t ActsTrk::MutableMultiTrajectory::m_trackMeasurementsSize = 0
private

Definition at line 392 of file MultiTrajectory.h.

◆ m_trackParametersAux

std::unique_ptr<xAOD::TrackParametersAuxContainer> ActsTrk::MutableMultiTrajectory::m_trackParametersAux
private

Definition at line 385 of file MultiTrajectory.h.

◆ m_trackParametersSize

size_t ActsTrk::MutableMultiTrajectory::m_trackParametersSize = 0
private

Definition at line 386 of file MultiTrajectory.h.

◆ m_trackStatesAux

std::unique_ptr<xAOD::TrackStateAuxContainer> ActsTrk::MutableMultiTrajectory::m_trackStatesAux
private

Definition at line 382 of file MultiTrajectory.h.

◆ m_trackStatesSize

size_t ActsTrk::MutableMultiTrajectory::m_trackStatesSize = 0
private

Definition at line 383 of file MultiTrajectory.h.

◆ m_uncalibratedSourceLinks

std::vector<std::optional<Acts::SourceLink> > ActsTrk::MutableMultiTrajectory::m_uncalibratedSourceLinks
private

Definition at line 399 of file MultiTrajectory.h.

◆ s_staticVariables

const std::set< std::string > ActsTrk::MutableMultiTrajectory::s_staticVariables
static
Initial value:
= {
"chi2", "pathLength", "typeFlags", "previous", "next", "predicted", "filtered", "smoothed", "jacobian", "calibrated", "measDim",
"uncalibratedMeasurement", "uncalibratedMeasurementLink" , "geometryId", "surfaceIndex"
}

Definition at line 376 of file MultiTrajectory.h.


The documentation for this class was generated from the following files:
ActsTrk::MutableMultiTrajectory::m_trackJacobiansSize
size_t m_trackJacobiansSize
Definition: MultiTrajectory.h:389
ActsTrk::MutableMultiTrajectory::m_surfaces
std::vector< StoredSurface > m_surfaces
Definition: MultiTrajectory.h:401
SG
Forward declaration.
Definition: CaloCellPacker_400_500.h:32
MuonR4::SegmentFit::Parameters
AmgVector(toInt(ParamDefs::nPars)) Parameters
Definition: MuonHoughDefs.h:48
SG::Accessor
Helper class to provide type-safe access to aux data.
Definition: Control/AthContainers/AthContainers/Accessor.h:68
ActsTrk::MutableMultiTrajectory::m_decorations
std::vector< ActsTrk::detail::Decoration > m_decorations
Definition: MultiTrajectory.h:396
hist_file_dump.d
d
Definition: hist_file_dump.py:137
xAOD::UncalibratedMeasurement
UncalibratedMeasurement_v1 UncalibratedMeasurement
Define the version of the uncalibrated measurement class.
Definition: UncalibratedMeasurement.h:13
taskman.template
dictionary template
Definition: taskman.py:317
ActsTrk::MutableMultiTrajectory::m_trackParametersAux
std::unique_ptr< xAOD::TrackParametersAuxContainer > m_trackParametersAux
Definition: MultiTrajectory.h:385
xAOD
ICaloAffectedTool is abstract interface for tools checking if 4 mom is in calo affected region.
Definition: ICaloAffectedTool.h:24
const
bool const RAWDATA *ch2 const
Definition: LArRodBlockPhysicsV0.cxx:560
to_const_ptr
const T * to_const_ptr(const std::unique_ptr< T > &ptr)
Definition: MultiTrajectory.cxx:69
python.utils.AtlRunQueryLookup.mask
string mask
Definition: AtlRunQueryLookup.py:460
ActsTrk::MutableMultiTrajectory::m_calibratedSourceLinks
std::vector< std::optional< Acts::SourceLink > > m_calibratedSourceLinks
Definition: MultiTrajectory.h:398
ActsGeometryContext::context
Acts::GeometryContext context() const
Definition: ActsGeometryContext.h:45
JetVar::Accessor
SG::AuxElement::Accessor< T > Accessor
Definition: JetVariable.h:31
python.setupRTTAlg.size
int size
Definition: setupRTTAlg.py:39
InvalidGeoID
constexpr uint64_t InvalidGeoID
Definition: MultiTrajectory.cxx:12
ActsTrk::MutableMultiTrajectory::m_trackMeasurementsAux
std::unique_ptr< xAOD::TrackMeasurementAuxContainer > m_trackMeasurementsAux
Definition: MultiTrajectory.h:391
ActsTrk::encodeSurface
void encodeSurface(xAOD::TrackSurfaceAuxContainer *backend, size_t index, const Acts::Surface *surface, const Acts::GeometryContext &geoContext)
Prepares persistifiable representation of surface into xAOD::TrackSurface object.
Definition: SurfaceEncoding.cxx:55
ActsTrk::IndexType
std::uint32_t IndexType
Definition: Decoration.h:14
SG::Decorator
Helper class to provide type-safe access to aux data.
Definition: Decorator.h:59
dqt_zlumi_pandas.err
err
Definition: dqt_zlumi_pandas.py:182
Acts
Definition: ChamberAssembleTool.h:18
ActsTrk::ATLASUncalibSourceLink
const xAOD::UncalibratedMeasurement * ATLASUncalibSourceLink
Definition: ATLASSourceLink.h:24
xAOD::TrackSurface_v1
TrackSurface for Acts MultiTrajectory and TrackSummary.
Definition: TrackSurface_v1.h:22
ActsTrk::MutableMultiTrajectory::m_uncalibratedSourceLinks
std::vector< std::optional< Acts::SourceLink > > m_uncalibratedSourceLinks
Definition: MultiTrajectory.h:399
ActsTrk::MutableMultiTrajectory::m_surfacesBackendAux
std::unique_ptr< xAOD::TrackSurfaceAuxContainer > m_surfacesBackendAux
Definition: MultiTrajectory.h:395
INSPECTCALL
#define INSPECTCALL(_INFO)
Definition: MultiTrajectory.h:35
AthenaPoolTestRead.acc
acc
Definition: AthenaPoolTestRead.py:16
xAOD::TrackStateIndexType
uint32_t TrackStateIndexType
Definition: TrackState_v1.h:15
ActsTrk::MutableMultiTrajectory::MutableMultiTrajectory
MutableMultiTrajectory()
Construct a new Multi Trajectory object owning backends.
Definition: MultiTrajectory.cxx:73
ActsTrk::MutableMultiTrajectory::m_trackStatesSize
size_t m_trackStatesSize
Definition: MultiTrajectory.h:383
ActsTrk::to_string
std::string to_string(const DetectorType &type)
Definition: GeometryDefs.h:34
ActsTrk::MutableMultiTrajectory::m_trackStatesAux
std::unique_ptr< xAOD::TrackStateAuxContainer > m_trackStatesAux
Definition: MultiTrajectory.h:382
ActsTrk::MutableMultiTrajectory::m_trackMeasurementsSize
size_t m_trackMeasurementsSize
Definition: MultiTrajectory.h:392
ActsTrk::MutableMultiTrajectory::m_surfacesBackend
std::unique_ptr< xAOD::TrackSurfaceContainer > m_surfacesBackend
Definition: MultiTrajectory.h:394
DeMoScan.index
string index
Definition: DeMoScan.py:364
MuonR4::SegmentFit::Covariance
AmgSymMatrix(toInt(ParamDefs::nPars)) Covariance
Definition: MuonHoughDefs.h:49
InDetDD::other
@ other
Definition: InDetDD_Defs.h:16
copySelective.target
string target
Definition: copySelective.py:37
get
T * get(TKey *tobj)
get a TObject* from a TKey* (why can't a TObject be a TKey?)
Definition: hcg.cxx:127
LArNewCalib_DelayDump_OFC_Cali.idx
idx
Definition: LArNewCalib_DelayDump_OFC_Cali.py:69
ActsTrk::MutableMultiTrajectory::m_geoContext
ActsGeometryContext m_geoContext
Definition: MultiTrajectory.h:402
ActsTrk::MutableMultiTrajectory::m_trackJacobiansAux
std::unique_ptr< xAOD::TrackJacobianAuxContainer > m_trackJacobiansAux
Definition: MultiTrajectory.h:388
ActsTrk::MutableMultiTrajectory::m_trackParametersSize
size_t m_trackParametersSize
Definition: MultiTrajectory.h:386
Trk::previous
@ previous
Definition: BinningData.h:32
mapkey::key
key
Definition: TElectronEfficiencyCorrectionTool.cxx:37