8#ifndef ADMISSIBLE_GTSAM_SYMBOLS_H
9#define ADMISSIBLE_GTSAM_SYMBOLS_H
19template <
char SYMBOL_CHAR>
43template <
int n,
int numStates>
45 std::array<char, numStates> symbols{};
57template <
typename T,
size_t N>
60 for (
auto& x : a) x = value;
65template <
char SYMBOL_CHAR>
76template <
char SYMBOL_CHAR>
83template <
int ARRAY_SIZE>
85 for (
int i = 0; i < ARRAY_SIZE; ++i) {
86 if (c == charArray[i]) {
constexpr int getSymbolIndex()
constexpr auto makeValuedArray(T value) -> std::array< T, N >
constexpr int ADMISSIBLE_DYNAMIC_STATE_DIM[sizeof(ADMISSIBLE_DYNAMIC_SYMBOL_CHARS)]
constexpr bool isAdmissibleSymbol()
constexpr std::array< char, numStates > getSymbolArrayForNDStates()
bool isCharInCharArray(const char c, std::array< char, ARRAY_SIZE > charArray)
constexpr char ADMISSIBLE_DYNAMIC_SYMBOL_CHARS[4]
constexpr void checkSymbol()
constexpr int countNDStates()