![]() |
0.5.0
|
Class to inherit common methods for static and dynamic sized vectors. More...
Public Member Functions | |
template<typename Derived> | |
KeyedVectorBase (const Eigen::MatrixBase< Derived > &vector) | |
Constructor. | |
template<typename Derived> | |
KeyedVectorBase (const Eigen::MatrixBase< Derived > &vector, std::span< const RowKeyType > rowKeys) | |
Constructor. | |
KeyedVectorBase (const KeyedVectorBase &other) | |
Copy constructor. | |
template<int oRows> | |
KeyedVectorBase (const KeyedVectorBase< Scalar, RowKeyType, oRows > &other) | |
Copy constructor. | |
KeyedVectorBase (KeyedVectorBase &&other) noexcept | |
Move constructor. | |
template<int oRows> | |
KeyedVectorBase (KeyedVectorBase< Scalar, RowKeyType, oRows > &&other) noexcept | |
Move constructor. | |
operator Eigen::Vector< Scalar, Rows > () | |
Conversion into Eigen::Vector. | |
Eigen::Matrix< Scalar, Rows, 1 > & | operator() (all_t) |
Requests the full vector. | |
const Eigen::Matrix< Scalar, Rows, 1 > & | operator() (all_t) const |
Requests the full vector. | |
Scalar & | operator() (const RowKeyType &rowKey) |
Gets the value for the row key. | |
const Scalar & | operator() (const RowKeyType &rowKey) const |
Gets the value for the row key. | |
decltype(auto) | operator() (std::span< const RowKeyType > rowKeys) |
Gets the values for the row keys. | |
decltype(auto) | operator() (std::span< const RowKeyType > rowKeys) const |
Gets the values for the row keys. | |
KeyedVectorBase & | operator= (const KeyedVectorBase &other) |
Copy assignment operator. | |
template<int oRows> | |
KeyedVectorBase & | operator= (const KeyedVectorBase< Scalar, RowKeyType, oRows > &other) |
Copy assignment operator. | |
KeyedVectorBase & | operator= (KeyedVectorBase &&other) noexcept |
Move assignment operator. | |
template<int oRows> | |
KeyedVectorBase & | operator= (KeyedVectorBase< Scalar, RowKeyType, oRows > &&other) noexcept |
Move assignment operator. | |
template<size_t P> | |
decltype(auto) | segment (std::span< const RowKeyType > rowKeys) |
Gets the values for the row keys. | |
decltype(auto) | segment (std::span< const RowKeyType > rowKeys) |
Gets the values for the row keys. | |
template<size_t P> | |
decltype(auto) | segment (std::span< const RowKeyType > rowKeys) const |
Gets the values for the row keys. | |
decltype(auto) | segment (std::span< const RowKeyType > rowKeys) const |
Gets the values for the row keys. | |
KeyedRowVectorBase< Scalar, RowKeyType, Rows > | transposed () const |
Calculates the transposed vector. | |
~KeyedVectorBase ()=default | |
Destructor. | |
Public Member Functions inherited from NAV::internal::KeyedMatrixRowsBase< Scalar, RowKeyType, Rows, Cols > | |
bool | hasAnyRows (std::span< const RowKeyType > keys) const |
Checks if the matrix has any key. | |
bool | hasRow (const RowKeyType &key) const |
Checks if the matrix has the key. | |
bool | hasRows (std::span< const RowKeyType > keys) const |
Checks if the matrix has multiple keys. | |
void | replaceRowKey (const RowKeyType &oldKey, const RowKeyType &newKey) |
Replace the old with the new key. | |
const std::vector< RowKeyType > & | rowKeys () const |
Returns the row keys. | |
decltype(auto) | rows () const |
Return the rows of the underlying Eigen matrix. |
Private Member Functions | |
void | checkContinuousSegment (std::span< const RowKeyType > rowKeys, size_t P) const |
Checks if the row keys are describing a continuous block. |
Additional Inherited Members | |
Protected Attributes inherited from NAV::internal::KeyedMatrixRowsBase< Scalar, RowKeyType, Rows, Cols > | |
unordered_map< RowKeyType, Eigen::Index > | rowIndices |
RowKey to Row Index mapping. | |
std::vector< RowKeyType > | rowKeysVector |
Row Keys. | |
std::vector< Eigen::Index > | rowSlice |
Row Slice used for accessing. | |
Protected Attributes inherited from NAV::internal::KeyedMatrixStorage< Scalar, Rows, Cols > | |
std::mutex | _sliceMutex |
Mutex for accessing the slices. | |
Eigen::Matrix< Scalar, Rows, Cols > | matrix |
Data storage of the type. |
Class to inherit common methods for static and dynamic sized vectors.
Scalar | Numeric type, e.g. float, double, int or std::complex<float>. |
RowKeyType | Type of the key used for row lookup |
Rows | Number of rows, or Dynamic |
Definition at line 365 of file KeyedMatrix.hpp.
|
inlineexplicit |
Constructor.
vector | Eigen vector to initialize from |
Definition at line 371 of file KeyedMatrix.hpp.
|
inline |
Constructor.
vector | Eigen vector to initialize from |
rowKeys | Row keys describing the vector |
Definition at line 380 of file KeyedMatrix.hpp.
|
default |
Destructor.
|
inline |
|
inlinenoexcept |
|
inline |
|
inlinenoexcept |
|
inlineprivate |
Checks if the row keys are describing a continuous block.
rowKeys | Row keys |
P | Size of the row keys |
Definition at line 612 of file KeyedMatrix.hpp.
|
inlineexplicit |
Conversion into Eigen::Vector.
Definition at line 553 of file KeyedMatrix.hpp.
|
inline |
Requests the full vector.
Definition at line 551 of file KeyedMatrix.hpp.
|
inline |
Requests the full vector.
Definition at line 549 of file KeyedMatrix.hpp.
|
inline |
Gets the value for the row key.
rowKey | Row Key |
Definition at line 520 of file KeyedMatrix.hpp.
|
inline |
Gets the value for the row key.
rowKey | Row Key |
Definition at line 513 of file KeyedMatrix.hpp.
|
inline |
Gets the values for the row keys.
rowKeys | Row Keys |
Definition at line 539 of file KeyedMatrix.hpp.
|
inline |
Gets the values for the row keys.
rowKeys | Row Keys |
Definition at line 528 of file KeyedMatrix.hpp.
|
inline |
Copy assignment operator.
other | The other object |
Definition at line 411 of file KeyedMatrix.hpp.
|
inline |
Copy assignment operator.
other | The other object |
Definition at line 464 of file KeyedMatrix.hpp.
|
inlinenoexcept |
Move assignment operator.
other | The other object |
Definition at line 433 of file KeyedMatrix.hpp.
|
inlinenoexcept |
Move assignment operator.
other | The other object |
Definition at line 492 of file KeyedMatrix.hpp.
|
inline |
Gets the values for the row keys.
rowKeys | Row Keys |
Definition at line 573 of file KeyedMatrix.hpp.
|
inline |
Gets the values for the row keys.
rowKeys | Row Keys |
Definition at line 591 of file KeyedMatrix.hpp.
|
inline |
Gets the values for the row keys.
rowKeys | Row Keys |
Definition at line 563 of file KeyedMatrix.hpp.
|
inline |
Gets the values for the row keys.
rowKeys | Row Keys |
Definition at line 582 of file KeyedMatrix.hpp.
|
inlinenodiscard |
Calculates the transposed vector.
Definition at line 603 of file KeyedMatrix.hpp.