Base class for Keyed matrices with multiple columns. More...
Public Member Functions | |
const std::vector< ColKeyType > & | colKeys () const |
Returns the col keys. | |
decltype(auto) | cols () const |
Return the cols of the underlying Eigen matrix. | |
bool | hasAnyCols (std::span< const ColKeyType > keys) const |
Checks if the matrix has any keys. | |
bool | hasCol (const ColKeyType &key) const |
Checks if the matrix has the key. | |
bool | hasCols (std::span< const ColKeyType > keys) const |
Checks if the matrix has multiple keys. | |
void | replaceColKey (const ColKeyType &oldKey, const ColKeyType &newKey) |
Replace the old with the new key. | |
Protected Attributes | |
unordered_map< ColKeyType, Eigen::Index > | colIndices |
ColKey to Col Index mapping. | |
std::vector< ColKeyType > | colKeysVector |
Col Keys. | |
std::vector< Eigen::Index > | colSlice |
Col Slice used for accessing. | |
![]() | |
std::mutex | _sliceMutex |
Mutex for accessing the slices. | |
Eigen::Matrix< Scalar, Rows, Cols > | matrix |
Data storage of the type. | |
Friends | |
template<typename Scalar_, typename RowKeyType_, typename ColKeyType_, int Rows_, int Cols_> | |
class | KeyedMatrixBase |
template<typename Scalar_, typename ColKeyType_, int Cols_> | |
class | KeyedRowVectorBase |
Base class for Keyed matrices with multiple columns.
Scalar | Numeric type, e.g. float, double, int or std::complex<float>. |
ColKeyType | Type of the key used for col lookup |
Rows | Number of rows, or Dynamic |
Cols | Number of columns, or Dynamic |
Definition at line 218 of file KeyedMatrix.hpp.
|
inline |
Returns the col keys.
Definition at line 225 of file KeyedMatrix.hpp.
|
inlinenodiscard |
Return the cols of the underlying Eigen matrix.
Definition at line 222 of file KeyedMatrix.hpp.
|
inline |
Checks if the matrix has any keys.
keys | Col keys to check for |
Definition at line 240 of file KeyedMatrix.hpp.
|
inline |
Checks if the matrix has the key.
key | Col key to check for |
Definition at line 229 of file KeyedMatrix.hpp.
|
inline |
Checks if the matrix has multiple keys.
keys | Col keys to check for |
Definition at line 233 of file KeyedMatrix.hpp.
|
inline |
Replace the old with the new key.
[in] | oldKey | Old key to replace |
[in] | newKey | New key to use instead |
Definition at line 248 of file KeyedMatrix.hpp.
|
friend |
Definition at line 269 of file KeyedMatrix.hpp.
|
friend |
Definition at line 271 of file KeyedMatrix.hpp.
|
protected |
ColKey to Col Index mapping.
Definition at line 260 of file KeyedMatrix.hpp.
|
protected |
Col Keys.
Definition at line 262 of file KeyedMatrix.hpp.
|
mutableprotected |
Col Slice used for accessing.
Definition at line 265 of file KeyedMatrix.hpp.