37 explicit Writer(
const std::string &file_name);
45 explicit Writer(std::ostream &output_stream);
48 void startMap(
const Parameters &,
const std::size_t num_entries);
49 void startMapEntry(
const std::string &map_name);
61 void startArray(
const std::size_t size,
const bool =
false);
64 void startRoot(
const std::string &name,
const Parameters &);
65 void endRoot(
const std::string &name);
68 #define ARILES2_BASIC_TYPE(type) void writeElement(const type &element, const Parameters ¶m);
72 #undef ARILES2_BASIC_TYPE