ATLAS Offline Software
Loading...
Searching...
No Matches
LocalParameters.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3*/
4
6// LocalParameters.h, (c) ATLAS Detector software
8
9#ifndef TRKEVENTPRIMITIVES_LOCALPARAMETERS_H
10#define TRKEVENTPRIMITIVES_LOCALPARAMETERS_H
11
14//
18//
19#include <array>
20#include <vector>
21#include <iosfwd> //std::ostream
22
23
24class MsgStream;
25
27
28namespace Trk {
29
99
101
102 public:
104 LocalParameters() = default;
105 //default other operations
110 ~LocalParameters() = default;
111
114
117 const DefinedParameter& two);
118
121
123 LocalParameters(double locone, double loctwo, double tphi, double ttheta, double tqOverp);
124
126 template <size_t N>
127 LocalParameters(const std::array<DefinedParameter,N>& parms);
128
130 LocalParameters(const std::vector<DefinedParameter>& parms);
131
134
136 const Amg::MatrixX& reductionMatrix() const;
137
139 const Amg::MatrixX& expansionMatrix() const;
140
142 const Amg::VectorX& asVector() const;
143
145 int dimension() const;
146
148 int parameterKey() const;
149
151 bool contains(ParamDefs par) const;
152
154 const double & operator[](ParamDefs par) const;
155
157 double & operator[](ParamDefs par);
158
165 double get(ParamDefs par) const;
166
173 double get(ParamDefs par);
174
176 friend MsgStream& operator << ( MsgStream& sl, const LocalParameters& lp);
177 friend std::ostream& operator << ( std::ostream& sl, const LocalParameters& lp);
178
179 protected:
180 friend class ::LocalParametersCnv_p1;
182 };
183
184} // end of namespace
185
187#endif // TRKEVENTPRIMITIVES_LOCALPARAMETERS_H
double get(ParamDefs par)
Retrieve specified parameter.
const Amg::MatrixX & reductionMatrix() const
Reduction matrix from 5x5 to the [dimension()]x[dimension()].
LocalParameters(LocalParameters &&)=default
int parameterKey() const
Identifier key for matrix expansion/reduction.
bool contains(ParamDefs par) const
The simple check for the clients whether the parameter is contained.
LocalParameters()=default
Default constructor used for POOL.
const Amg::MatrixX & expansionMatrix() const
Expansion matrix from 5x5 to the [dimension()]x[dimension()].
double get(ParamDefs par) const
Retrieve specified parameter (const version).
LocalParameters(const std::array< DefinedParameter, N > &parms)
constructor for N Dim size known at compile time
friend MsgStream & operator<<(MsgStream &sl, const LocalParameters &lp)
Overload of << operator for both, MsgStream and std::ostream for debug output.
int dimension() const
Dimension of this localParameters() vector.
LocalParameters * clone() const
Pseudo-constructor.
LocalParameters(const LocalParameters &)=default
LocalParameters & operator=(LocalParameters &&)=default
const double & operator[](ParamDefs par) const
Read from data members.
LocalParameters & operator=(const LocalParameters &)=default
~LocalParameters()=default
const Amg::VectorX & asVector() const
Amg Vector representation.
Eigen::Matrix< double, Eigen::Dynamic, Eigen::Dynamic > MatrixX
Dynamic Matrix - dynamic allocation.
Eigen::Matrix< double, 2, 1 > Vector2D
Eigen::Matrix< double, Eigen::Dynamic, 1 > VectorX
Dynamic Vector - dynamic allocation.
Ensure that the ATLAS eigen extensions are properly loaded.
ParamDefs
This file defines the parameter enums in the Trk namespace.
Definition ParamDefs.h:32
std::pair< double, ParamDefs > DefinedParameter
Typedef to of a std::pair<double, ParamDefs> to identify a passed-through double as a specific type o...