From c9dd241f5bb29ce63a4c37f82afcba36df998b23 Mon Sep 17 00:00:00 2001 From: Michel Juillard <michel.juillard@mjui.fr> Date: Mon, 29 Jun 2020 11:10:35 +0200 Subject: [PATCH] add varobs statement to JSON output --- src/SymbolTable.cc | 42 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) diff --git a/src/SymbolTable.cc b/src/SymbolTable.cc index 68a0bc64..1a10f239 100644 --- a/src/SymbolTable.cc +++ b/src/SymbolTable.cc @@ -1061,6 +1061,48 @@ SymbolTable::writeJsonOutput(ostream &output) const output << R"(, "parameters": )"; writeJsonVarVector(output, param_ids); + + if (observedVariablesNbr() > 0) + { + output << R"(, "varobs": [)"; + for (size_t i = 0; i < varobs.size(); i++) + { + if (i != 0) + output << ", "; + output << R"(")" << getName(varobs[i]) << R"(")"; + } + output << "]" << endl; + + output << R"(, "varobs_ids": [)"; + for (size_t i = 0; i < varobs.size(); i++) + { + if (i != 0) + output << ", "; + output << getTypeSpecificID(varobs[i])+1; + } + output << "]" << endl; + } + + if (observedExogenousVariablesNbr() > 0) + { + output << R"(, "varexobs": [)"; + for (size_t i = 0; i < varexobs.size(); i++) + { + if (i != 0) + output << ", "; + output << R"(")" << getName(varexobs[i]) << R"(")"; + } + output << "]" << endl; + + output << R"(, "varexobs_ids": [)"; + for (size_t i = 0; i < varexobs.size(); i++) + { + if (i != 0) + output << ", "; + output << getTypeSpecificID(varexobs[i])+1; + } + output << "]" << endl; + } } void -- GitLab