 |
helics
3.0.1
|
9 #include "../core/CoreTypes.hpp"
10 #include "helics_cxx_export.h"
32 explicit CoreApp(std::vector<std::string> args);
44 CoreApp(
CoreType ctype,
const std::string& coreName, std::vector<std::string> args);
49 CoreApp(
int argc,
char* argv[]);
56 CoreApp(
CoreType ctype,
const std::string& coreName,
int argc,
char* argv[]);
66 explicit CoreApp(
const std::string& argString);
77 CoreApp(
CoreType ctype,
const std::string& coreName,
const std::string& argString);
80 explicit CoreApp(std::shared_ptr<Core> cr);
82 bool isConnected()
const;
89 bool isOpenToNewFederates()
const;
91 void forceTerminate();
93 bool waitForDisconnect(std::chrono::milliseconds waitTime = std::chrono::milliseconds(0));
95 void linkEndpoints(
const std::string& source,
const std::string& target);
97 void dataLink(
const std::string& source,
const std::string& target);
99 void addSourceFilterToEndpoint(
const std::string& filter,
const std::string& endpoint);
101 void addDestinationFilterToEndpoint(
const std::string& filter,
const std::string& endpoint);
103 void makeConnections(
const std::string& file);
105 const std::string& getIdentifier()
const;
107 const std::string& getAddress()
const;
117 std::string query(
const std::string& target,
118 const std::string& queryStr,
126 void setTag(
const std::string& tag,
const std::string& value);
133 const std::string& getTag(
const std::string& tag)
const;
142 void setGlobal(
const std::string& valueName,
const std::string& value);
152 void sendCommand(
const std::string& target,
153 const std::string& commandStr,
157 void setLogFile(
const std::string& logFile);
159 void setLoggingLevel(
int loglevel);
161 void setReadyToInit();
164 #ifdef HELICS_CXX_STATIC_DEFINE
167 auto* operator->()
const {
return core.operator->(); }
169 CoreApp* operator->() {
return this; }
170 const CoreApp* operator->()
const {
return this; }
178 void globalError(int32_t errorCode,
const std::string& errorString);
181 void processArgs(std::unique_ptr<helicsCLI11App>& app);
182 std::unique_ptr<helicsCLI11App> generateParser();
184 std::shared_ptr<Core> core;
191 template<
class... Args>
192 explicit CoreKeeper(Args&&... args): cr(std::forward<Args...>(args...))
void forceTerminate()
Definition: CoreApp.cpp:151
bool waitForDisconnect(std::chrono::milliseconds waitTime=std::chrono::milliseconds(0))
Definition: CoreApp.cpp:161
void setLogFile(const std::string &logFile)
Definition: CoreApp.cpp:264
void dataLink(const std::string &source, const std::string &target)
Definition: CoreApp.cpp:176
void setGlobal(const std::string &valueName, const std::string &value)
Definition: CoreApp.cpp:240
bool connect()
Definition: CoreApp.cpp:141
CoreType
Definition: CoreTypes.hpp:36
bool isOpenToNewFederates() const
Definition: CoreApp.cpp:146
void reset()
Definition: CoreApp.cpp:284
void setLoggingLevel(int loglevel)
Definition: CoreApp.cpp:256
bool isConnected() const
Definition: CoreApp.cpp:136
~CoreKeeper()
the destructor waits for the core to terminate
Definition: application_api/CoreApp.hpp:204
@ DEFAULT
ZMQ if available or UDP.
@ HELICS_FLAG_DELAY_INIT_ENTRY
Definition: helics_enums.h:146
const std::string & getAddress() const
Definition: CoreApp.cpp:211
void addSourceFilterToEndpoint(const std::string &filter, const std::string &endpoint)
Definition: CoreApp.cpp:183
bool isConnected()
is the core connected
Definition: application_api/CoreApp.hpp:200
Definition: application_api/CoreApp.hpp:25
void globalError(int32_t errorCode, const std::string &errorString)
Definition: CoreApp.cpp:290
void setReadyToInit()
Definition: CoreApp.cpp:271
void displayHelp(CoreType type)
Definition: CoreFactory.cpp:373
std::shared_ptr< Core > getCopyofCorePointer() const
Definition: application_api/CoreApp.hpp:173
std::shared_ptr< Core > findCore(const std::string &name)
Definition: CoreFactory.cpp:275
void addDestinationFilterToEndpoint(const std::string &filter, const std::string &endpoint)
Definition: CoreApp.cpp:190
HelicsSequencingModes
Definition: helics_enums.h:363
void forceTerminate()
Force terminate the core.
Definition: application_api/CoreApp.hpp:202
void haltInit()
Definition: CoreApp.cpp:277
const std::string & getTag(const std::string &tag) const
Definition: CoreApp.cpp:232
the main namespace for the helics co-simulation library User functions will be in the helics namespac...
Definition: AsyncFedCallInfo.hpp:14
const std::string & getIdentifier() const
Definition: CoreApp.cpp:205
@ HELICS_SEQUENCING_MODE_FAST
Definition: helics_enums.h:365
void setTag(const std::string &tag, const std::string &value)
Definition: CoreApp.cpp:225
void makeConnections(const std::string &file)
Definition: CoreApp.cpp:197
void linkEndpoints(const std::string &source, const std::string &target)
Definition: CoreApp.cpp:169
constexpr LocalFederateId gLocalCoreId(-259)
std::string query(const std::string &target, const std::string &queryStr, HelicsSequencingModes mode=HELICS_SEQUENCING_MODE_FAST)
Definition: CoreApp.cpp:217
void sendCommand(const std::string &target, const std::string &commandStr, HelicsSequencingModes mode=HELICS_SEQUENCING_MODE_FAST)
Definition: CoreApp.cpp:247
Definition: application_api/CoreApp.hpp:189
std::string generateJsonErrorResponse(JsonErrorCodes code, const std::string &message)
Definition: JsonGeneration.hpp:36