diff --git a/transition_machine/include/Config.hpp b/transition_machine/include/Config.hpp index 7e5f8a2f9e72b3cc4839e5339379f74451d7f426..a1e4a6cd5ff89ba3fbd4a5f584217b7cecfc0583 100644 --- a/transition_machine/include/Config.hpp +++ b/transition_machine/include/Config.hpp @@ -336,6 +336,10 @@ class Config void setEntropy(float entropy); float getEntropy() const; void addToEntropy(float entropy); + /// \brief Print a column content for debug purpose. + /// + /// \param index Index of the column to print. + void printColumnInfos(unsigned int index); }; #endif diff --git a/transition_machine/src/ActionBank.cpp b/transition_machine/src/ActionBank.cpp index ed373d825deda3c980211a0f0478c50820a1b75f..9306c79ff36e3cd5bf1845066579d380e5fcbd06 100644 --- a/transition_machine/src/ActionBank.cpp +++ b/transition_machine/src/ActionBank.cpp @@ -354,6 +354,7 @@ std::vector<Action::BasicAction> ActionBank::str2sequence(const std::string & na auto apply = [](Config & c, Action::BasicAction & ba) { + ba.data = ""; auto & govs = c.getTape("GOV"); int b0 = c.getHead(); int rootIndex = -1; @@ -416,6 +417,7 @@ std::vector<Action::BasicAction> ActionBank::str2sequence(const std::string & na auto apply2 = [b2](Config & c, Action::BasicAction & ba) { + ba.data = ""; auto & labels = c.getTape("LABEL"); int b0 = c.getHead(); int rootIndex = -1; diff --git a/transition_machine/src/Config.cpp b/transition_machine/src/Config.cpp index 758716d1cdf1f90f4356cfceed6895c2c6d125c0..d73382828aa2e6a67428b6e4440c571e8764e104 100644 --- a/transition_machine/src/Config.cpp +++ b/transition_machine/src/Config.cpp @@ -619,3 +619,11 @@ void Config::Tape::maskIndex(int index) ref.maskIndex(index); } +void Config::printColumnInfos(unsigned int index) +{ + for (auto & tape : tapes) + fprintf(stderr, "%s\t: %s\n", tape.getName().c_str(), tape[index-getHead()].c_str()); + + fprintf(stderr, "\n"); +} +