Ring Daemon 16.0.0
Loading...
Searching...
No Matches
jami::Matrix1D< Row, Value, A > Struct Template Reference

This generic class represents a multidimensional enum class array. More...

#include <enumclass_utils.h>

Inheritance diagram for jami::Matrix1D< Row, Value, A >:
Inheritance graph
Collaboration diagram for jami::Matrix1D< Row, Value, A >:
Collaboration graph

Classes

class  EnumClassIter
 An Iterator for enum classes. More...
 

Public Member Functions

EnumClassIter begin ()
 
EnumClassIter end ()
 
Row fromValue (const Value &value) const
 
constexpr Matrix1D (std::initializer_list< std::initializer_list< Value > > s)
 
Value operator[] (Row v)
 
const Value operator[] (Row v) const
 

Static Public Member Functions

static void setReverseMapping (Matrix1D< Row, const char * > names)
 

Detailed Description

template<class Row, typename Value, typename A = Value>
struct jami::Matrix1D< Row, Value, A >

This generic class represents a multidimensional enum class array.

It safely converts them to integers. Each enum class needs a "COUNT__" item at the end."

This struct enforces:

  • That the rows are indexed using enum_classes
  • That the size of the matrix matches the enum_class size
  • That the operators are within the matrix boundary

Definition at line 49 of file enumclass_utils.h.

Constructor & Destructor Documentation

◆ Matrix1D()

template<class Row , typename Value , typename Accessor >
constexpr jami::Matrix1D< Row, Value, Accessor >::Matrix1D ( std::initializer_list< std::initializer_list< Value > >  s)
constexpr

Definition at line 171 of file enumclass_utils.h.

References jami::emitSignal().

Here is the call graph for this function:

Member Function Documentation

◆ begin()

template<class Row , typename Value , typename Accessor >
Matrix1D< Row, Value, Accessor >::EnumClassIter jami::Matrix1D< Row, Value, Accessor >::begin ( )

Definition at line 294 of file enumclass_utils.h.

◆ end()

template<class Row , typename Value , typename Accessor >
Matrix1D< Row, Value, Accessor >::EnumClassIter jami::Matrix1D< Row, Value, Accessor >::end ( )

Definition at line 301 of file enumclass_utils.h.

References jami::emitSignal().

Here is the call graph for this function:

◆ fromValue()

template<class Row , typename Value , typename Accessor >
Row jami::Matrix1D< Row, Value, Accessor >::fromValue ( const Value &  value) const

Definition at line 219 of file enumclass_utils.h.

References jami::emitSignal().

Here is the call graph for this function:

◆ operator[]() [1/2]

template<class Row , typename Value , typename Accessor >
Value jami::Matrix1D< Row, Value, Accessor >::operator[] ( Row  v)

Definition at line 183 of file enumclass_utils.h.

References jami::emitSignal(), and JAMI_ERR.

Here is the call graph for this function:

◆ operator[]() [2/2]

template<class Row , typename Value , typename Accessor >
const Value jami::Matrix1D< Row, Value, Accessor >::operator[] ( Row  v) const

Definition at line 195 of file enumclass_utils.h.

References jami::emitSignal(), and JAMI_ERR.

Here is the call graph for this function:

◆ setReverseMapping()

template<class Row , typename Value , typename Accessor >
void jami::Matrix1D< Row, Value, Accessor >::setReverseMapping ( Matrix1D< Row, const char * >  names)
static

Definition at line 211 of file enumclass_utils.h.

References jami::emitSignal().

Here is the call graph for this function:

The documentation for this struct was generated from the following file: