9 #include "../common/JsonGeneration.hpp"
13 #include <string_view>
14 #include <type_traits>
18 class GlobalFederateId;
31 GLOBAL_TIME_DEBUGGING = 7,
35 UNCONNECTED_INTERFACES = 14
39 enum class QueryReuse : std::uint8_t { ENABLED = 0, DISABLED = 1 };
43 template<
typename X,
typename Proc>
44 std::string generateStringVector(
const X& data, Proc generator)
46 static_assert(std::is_convertible<decltype(generator(*(data.begin()))), std::string>::value,
47 "generator output must be convertible to std::string");
49 for (
auto& ele : data) {
50 ret.append(helics::generateJsonQuotedString(generator(ele)));
61 template<
typename X,
typename Proc,
typename val
idator>
62 std::string generateStringVector_if(
const X& data, Proc generator, validator valid)
64 static_assert(std::is_convertible<decltype(generator(*(data.begin()))), std::string>::value,
65 "generator output must be convertible to std::string");
67 for (
auto& ele : data) {
69 ret.append(helics::generateJsonQuotedString(generator(ele)));
82 void generateInterfaceConfig(Json::Value& iblock,
92 const HandleManager& handles,
93 const GlobalFederateId fed,
94 const std::function<
void(Json::Value&)>& addHeaderInfo);
97 const InterfaceInfo& info,
98 const std::function<
void(Json::Value&)>& addHeaderInfo);
Definition: FederateState.hpp:50
Definition: GlobalFederateId.hpp:75
Definition: HandleManager.hpp:25
the main namespace for the helics co-simulation library User functions will be in the helics namespac...
Definition: AsyncFedCallInfo.hpp:14
std::string generateInterfaceQueryResults(std::string_view request, const HandleManager &handles, const GlobalFederateId fed, const std::function< void(Json::Value &)> &addHeaderInfo)
Definition: queryHelpers.cpp:208
Subqueries
enumeration of subqueries that cascade and need multiple levels of processing
Definition: queryHelpers.hpp:23
QueryReuse
Enumeration of if query result is reusable.
Definition: queryHelpers.hpp:39