9 #include "../application_api/MessageFederate.hpp"
10 #include "helicsApp.hpp"
27 class HELICS_CXX_EXPORT
Echo:
public App {
34 explicit Echo(std::vector<std::string> args);
39 Echo(
int argc,
char* argv[]);
50 Echo(std::string_view name,
const std::shared_ptr<Core>& core,
const FederateInfo& fi);
61 Echo(std::string_view name,
const std::string& jsonString);
66 Echo& operator=(
Echo&& other_echo) noexcept;
71 virtual void runTo(
Time stopTime_input)
override;
77 void addEndpoint(std::string_view endpointName, std::string_view endpointType =
"");
84 void setEchoDelay(
Time delay);
91 virtual void loadJsonFile(
const std::string& jsonFile,
92 bool enableFederateInterfaceRegistration)
override;
101 std::deque<Endpoint> endpoints;
103 size_t echoCounter = 0;
104 std::mutex delayTimeLock;
Definition: Endpoints.hpp:21
Definition: FederateInfo.hpp:29
Definition: helicsApp.hpp:32
auto endpointCount() const
Definition: Echo.hpp:87
auto echoCount() const
Definition: Echo.hpp:80
the main namespace for the helics co-simulation library User functions will be in the helics namespac...
Definition: AsyncFedCallInfo.hpp:14
constexpr Time timeZero
Definition: helicsTime.hpp:31
TimeRepresentation< count_time< 9 > > Time
Definition: helicsTime.hpp:27