33 #include <agrum/tools/database/DBTranslator4RangeVariable.h> 34 #include <agrum/tools/database/DBCell.h> 36 #ifndef DOXYGEN_SHOULD_SKIP_THIS 44 template <
template <
typename >
class ALLOC >
45 template <
template <
typename >
class XALLOC >
46 DBTranslator4RangeVariable< ALLOC >::DBTranslator4RangeVariable(
47 const std::vector< std::string, XALLOC< std::string > >& missing_symbols,
48 std::size_t max_dico_entries,
49 const typename DBTranslator4RangeVariable< ALLOC >::allocator_type& alloc) :
50 DBTranslator< ALLOC >(DBTranslatedValueType::DISCRETE,
55 variable__(
"var",
"", 1, 0) {
60 bool non_int_symbol_found =
false;
61 for (
const auto& symbol:
this->missing_symbols_) {
62 if (DBCell::isInteger(symbol)) {
63 status_int_missing_symbols__.insert(symbol,
false);
64 }
else if (!non_int_symbol_found) {
65 non_int_symbol_found =
true;
66 nonint_missing_symbol__ = symbol;
70 GUM_CONSTRUCTOR(DBTranslator4RangeVariable);
75 template <
template <
typename >
class ALLOC >
89 template <
template <
typename >
class ALLOC >
90 template <
template <
typename >
class XALLOC >
112 "the dictionary induced by the variable is too large");
158 template <
template <
typename >
class ALLOC >
178 "the dictionary induced by the variable is too large");
194 template <
template <
typename >
class ALLOC >
208 template <
template <
typename >
class ALLOC >
215 template <
template <
typename >
class ALLOC >
230 template <
template <
typename >
class ALLOC >
238 template <
template <
typename >
class ALLOC >
256 template <
template <
typename >
class ALLOC >
264 template <
template <
typename >
class ALLOC >
271 template <
template <
typename >
class ALLOC >
288 template <
template <
typename >
class ALLOC >
307 template <
template <
typename >
class ALLOC >
332 "The translation of String \"" <<
str 333 <<
"\" could not be found");
339 "String \"" <<
str <<
"\" cannot be translated because " 340 <<
"it cannot be converted into an integer");
350 <<
str <<
"\" cannot be translated because " 351 <<
"it corresponds to an already translated missing symbol");
364 "String \"" <<
str <<
"\" cannot be translated because " 365 <<
"the dictionary is already full");
385 "String \"" <<
str <<
"\" cannot be translated because " 386 <<
"the dictionary is already full");
394 <<
str <<
"\" cannot be translated " 395 <<
"because it would induce a new range containing " 396 <<
"an already translated missing symbol");
426 "String \"" <<
str <<
"\" cannot be translated because " 427 <<
"the dictionary is already full");
435 <<
str <<
"\" cannot be translated " 436 <<
"because it would induce a new range containing " 437 <<
"an already translated missing symbol");
469 template <
template <
typename >
class ALLOC >
485 <<
"\" could not be found");
491 template <
template <
typename >
class ALLOC >
508 template <
template <
typename >
class ALLOC >
552 template <
template <
typename >
class ALLOC >
559 template <
template <
typename >
class ALLOC >
567 template <
template <
typename >
class ALLOC >
INLINE void emplace(Args &&... args)
Database(const std::string &filename, const BayesNet< GUM_SCALAR > &bn, const std::vector< std::string > &missing_symbols)