Loading [MathJax]/extensions/tex2jax.js
ATLAS Offline Software
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
TrackMeasurement_v1.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
3 */
4 #ifndef XAODTRACKING_VERSIONS_TRACKMEASUREMENT_V1_H
5 #define XAODTRACKING_VERSIONS_TRACKMEASUREMENT_V1_H
6 #include <cstdint>
7 #include "AthLinks/ElementLink.h"
10 
12 
13 
14 
15 namespace xAOD {
21  public:
22  TrackMeasurement_v1() = default;
26  template<std::size_t measdim = 6>
27  Eigen::Map<const Eigen::Matrix<double, measdim, 1>> measEigen() const {
28  return Eigen::Map<const Eigen::Matrix<double, measdim, 1>>{s_measAcc(*this).data()};
29  }
30 
34  template<std::size_t measdim = 6>
35  Eigen::Map<Eigen::Matrix<double, measdim, 1>> measEigen() {
36  return Eigen::Map<Eigen::Matrix<double, measdim, 1>>{s_measAcc(*this).data()};
37  }
38 
42  const std::vector<double>& meas() const;
43 
47  void setMeas( const std::vector<double>& m);
48 
52  template<std::size_t measdim = 6>
53  Eigen::Map<const Eigen::Matrix<double, measdim, measdim>> covMatrixEigen() const {
54  return Eigen::Map<const Eigen::Matrix<double, measdim, measdim>>{s_covMatrixAcc(*this).data()};
55  }
56 
60  template<std::size_t measdim = 6>
61  Eigen::Map<Eigen::Matrix<double, measdim, measdim>> covMatrixEigen() {
62  return Eigen::Map<Eigen::Matrix<double, measdim, measdim>> {s_covMatrixAcc(*this).data()};
63  }
64 
68  const std::vector<double>& covMatrix() const;
69 
73  void setCovMatrix( const std::vector<double>& m);
74 
75 
80 
81 
85  void setUncalibratedMeasurement(const xAOD::UncalibratedMeasurement *uncalibrated_measurement);
86 
87 
97  const std::uint64_t& projector() const;
98  const std::uint64_t* projectorPtr() const;
100  void setProjector( const std::uint64_t& m);
101 
107  void resize(size_t sz = 6);
108 
112  size_t size() const;
113  private:
116  };
117 }
118 #endif
xAOD::TrackMeasurement_v1
Track Measurements for Acts MultiTrajectory.
Definition: TrackMeasurement_v1.h:20
xAOD::TrackMeasurement_v1::s_measAcc
static const SG::AuxElement::Accessor< std::vector< double > > s_measAcc
Definition: TrackMeasurement_v1.h:114
xAOD::TrackMeasurement_v1::projectorPtr
const std::uint64_t * projectorPtr() const
xAOD::TrackMeasurement_v1::s_covMatrixAcc
static const SG::AuxElement::Accessor< std::vector< double > > s_covMatrixAcc
Definition: TrackMeasurement_v1.h:115
xAOD::TrackMeasurement_v1::size
size_t size() const
retrieve the size of the internal vectors for the data storage
Definition: TrackMeasurement_v1.cxx:53
fitman.sz
sz
Definition: fitman.py:527
python.SystemOfUnits.m
int m
Definition: SystemOfUnits.py:91
xAOD::TrackMeasurement_v1::TrackMeasurement_v1
TrackMeasurement_v1()=default
SG::Accessor
Helper class to provide type-safe access to aux data.
Definition: Control/AthContainers/AthContainers/Accessor.h:68
xAOD::TrackMeasurement_v1::resize
void resize(size_t sz=6)
expands sizes of internal vectors for the data storage ( by default this is 6 for Measurements and 6x...
Definition: TrackMeasurement_v1.cxx:48
SG::AuxElement
Base class for elements of a container that can have aux data.
Definition: AuxElement.h:483
xAOD::TrackMeasurement_v1::covMatrixEigen
Eigen::Map< const Eigen::Matrix< double, measdim, measdim > > covMatrixEigen() const
access track covariance matrix (flattened, rows layout) of const element
Definition: TrackMeasurement_v1.h:53
xAOD::TrackMeasurement_v1::covMatrixEigen
Eigen::Map< Eigen::Matrix< double, measdim, measdim > > covMatrixEigen()
access track covariance matrix (flattened, rows layout)
Definition: TrackMeasurement_v1.h:61
xAOD::TrackMeasurement_v1::meas
const std::vector< double > & meas() const
access track Measurements as plain vector
xAOD
ICaloAffectedTool is abstract interface for tools checking if 4 mom is in calo affected region.
Definition: ICaloAffectedTool.h:24
xAOD::TrackMeasurement_v1::projectorPtr
std::uint64_t * projectorPtr()
xAOD::UncalibratedMeasurement_v1
Definition: UncalibratedMeasurement_v1.h:13
UncalibratedMeasurementContainer.h
xAOD::uint64_t
uint64_t
Definition: EventInfo_v1.cxx:123
xAOD::TrackMeasurement_v1::measEigen
Eigen::Map< const Eigen::Matrix< double, measdim, 1 > > measEigen() const
access track Measurements vector of const element
Definition: TrackMeasurement_v1.h:27
EventPrimitives.h
xAOD::TrackMeasurement_v1::measEigen
Eigen::Map< Eigen::Matrix< double, measdim, 1 > > measEigen()
access Measurements of non const element
Definition: TrackMeasurement_v1.h:35
xAOD::TrackMeasurement_v1::setProjector
void setProjector(const std::uint64_t &m)
xAOD::TrackMeasurement_v1::covMatrix
const std::vector< double > & covMatrix() const
access track covariance as plain vector
xAOD::TrackMeasurement_v1::setCovMatrix
void setCovMatrix(const std::vector< double > &m)
access set covariance from plain vector
xAOD::TrackMeasurement_v1::uncalibratedMeasurement
const xAOD::UncalibratedMeasurement * uncalibratedMeasurement() const
access the uncalibrated measurement
Definition: TrackMeasurement_v1.cxx:23
xAOD::TrackMeasurement_v1::projector
const std::uint64_t & projector() const
The quantities measured by detector, are functions of the state vector, corrupted by a measurement no...
xAOD::TrackMeasurement_v1::setMeas
void setMeas(const std::vector< double > &m)
access set Measurements from plain vector
AuxElement.h
Base class for elements of a container that can have aux data.
xAOD::TrackMeasurement_v1::setUncalibratedMeasurement
void setUncalibratedMeasurement(const xAOD::UncalibratedMeasurement *uncalibrated_measurement)
set uncalibrated measurement
Definition: TrackMeasurement_v1.cxx:29