 |
helics
3.3.0
|
7 #ifndef HELICS_CPP98_FEDERATE_HPP_
8 #define HELICS_CPP98_FEDERATE_HPP_
12 #include "Translator.hpp"
14 #include "helics/helics.h"
15 #include "helicsExceptions.hpp"
21 #if defined(HELICS_HAS_FUNCTIONAL) && HELICS_HAS_FUNCTIONAL != 0
22 # include <functional>
59 #ifdef HELICS_HAS_RVALUE_REFS
64 fedInfo.fi = HELICS_NULL_POINTER;
71 fedInfo.fi = HELICS_NULL_POINTER;
80 void loadFromArgs(
const std::string& argString)
143 HELICS_NULL_POINTER);
162 HELICS_NULL_POINTER);
164 void sendCommand(
const std::string& target,
const std::string& cmd)
169 const char* getCommand()
174 const char* getCommandSource()
188 #if defined(HELICS_HAS_FUNCTIONAL) && HELICS_HAS_FUNCTIONAL != 0
191 inline void helicCppQueryCallbackExecutor(
const char* query,
196 auto cback =
reinterpret_cast<std::function<std::string(
const std::string&)
>*>(userData);
197 std::string val(query, stringSize);
198 std::string result = (*cback)(val);
206 auto cback =
reinterpret_cast<std::function<
void(
HelicsTime,
bool)
>*>(userData);
218 (*cback)(newState, oldState);
222 inline void helicCppTimeRequestEntryCallbackExecutor(
HelicsTime currentTime,
228 (*cback)(currentTime, requestTime, iterating ==
HELICS_TRUE);
231 inline void helicCppTimeRequestReturnCallbackExecutor(
HelicsTime newTime,
235 auto cback =
reinterpret_cast<std::function<
void(
HelicsTime,
bool)
>*>(userData);
264 #ifdef HELICS_HAS_RVALUE_REFS
270 fedObj.fed = HELICS_NULL_POINTER;
277 fedObj.fed = HELICS_NULL_POINTER;
284 if (
fed != HELICS_NULL_POINTER) {
287 #if defined(HELICS_HAS_FUNCTIONAL) && HELICS_HAS_FUNCTIONAL != 0
580 std::string
query(
const std::string& target,
581 const std::string& queryStr,
607 std::string
query(
const std::string& queryStr,
620 void setQueryCallback(
628 void setTimeRequestEntryCallback(
void (*timeRequestEntry)(
HelicsTime currentTime,
638 void setTimeUpdateCallback(
void (*timeUpdate)(
HelicsTime time,
656 void setTimeRequestReturnCallback(
void (*timeRequestReturn)(
HelicsTime newTime,
667 #if defined(HELICS_HAS_FUNCTIONAL) && HELICS_HAS_FUNCTIONAL != 0
668 void setQueryCallback(std::function<std::string(
const std::string&)> callback)
671 checkCallbackAllocation();
672 callbackBuffers[queryCallbackLocation] =
673 new std::function<std::string(const std::string&)>(std::move(callback));
675 details::helicCppQueryCallbackExecutor,
676 callbackBuffers[queryCallbackLocation],
680 void setTimeRequestEntryCallback(
685 checkCallbackAllocation();
686 callbackBuffers[timeRequestEntryCallbackLocation] =
687 new std::function<void(HelicsTime, HelicsTime, bool)>(std::move(callback));
689 details::helicCppTimeRequestEntryCallbackExecutor,
690 callbackBuffers[timeRequestEntryCallbackLocation],
694 void setTimeUpdateCallback(std::function<
void(
HelicsTime time,
bool iterating)> callback)
697 checkCallbackAllocation();
698 callbackBuffers[timeUpdateCallbackLocation] =
699 new std::function<void(HelicsTime time, bool iterating)>(std::move(callback));
701 details::helicCppTimeUpdateCallbackExecutor,
702 callbackBuffers[timeUpdateCallbackLocation],
706 void setStateChangeCallback(
710 checkCallbackAllocation();
711 callbackBuffers[stateChangeCallbackLocation] =
712 new std::function<void(HelicsFederateState, HelicsFederateState)>(std::move(callback));
714 details::helicCppStateChangeCallbackExecutor,
715 callbackBuffers[stateChangeCallbackLocation],
719 void setTimeRequestReturnCallback(
720 std::function<
void(
HelicsTime newTime,
bool iterating)> callback)
723 checkCallbackAllocation();
724 callbackBuffers[timeRequestReturnCallbackLocation] =
725 new std::function<void(HelicsTime, bool)>(std::move(callback));
728 details::helicCppTimeRequestReturnCallbackExecutor,
729 callbackBuffers[timeRequestReturnCallbackLocation],
760 const std::string& filterName = std::string())
775 deliveryEndpoint.c_str(),
803 void setGlobal(
const std::string& valueName,
const std::string& value)
813 void setTag(
const std::string& tag,
const std::string& value)
823 const char*
getTag(
const std::string& tag)
const
841 void localError(
int errorCode,
const std::string& errorString)
894 #if defined(HELICS_HAS_FUNCTIONAL) && HELICS_HAS_FUNCTIONAL != 0
896 static constexpr
int numberOfCallbacks = 5;
897 static constexpr
int timeRequestEntryCallbackLocation = 0;
898 static constexpr
int timeUpdateCallbackLocation = 1;
899 static constexpr
int stateChangeCallbackLocation = 2;
900 static constexpr
int queryCallbackLocation = 3;
901 static constexpr
int timeRequestReturnCallbackLocation = 4;
902 void** callbackBuffers{
nullptr};
904 void checkCallbackAllocation()
906 if (callbackBuffers ==
nullptr) {
907 callbackBuffers =
new void*[numberOfCallbacks];
908 for (
int ii = 0; ii < numberOfCallbacks; ++ii) {
909 callbackBuffers[ii] =
nullptr;
915 if (callbackBuffers ==
nullptr) {
918 if (callbackBuffers[queryCallbackLocation] !=
nullptr) {
919 auto cback =
reinterpret_cast<std::function<std::string(
const std::string&)
>*>(
920 callbackBuffers[queryCallbackLocation]);
923 if (callbackBuffers[timeRequestEntryCallbackLocation] !=
nullptr) {
925 callbackBuffers[timeRequestEntryCallbackLocation]);
928 if (callbackBuffers[timeUpdateCallbackLocation] !=
nullptr) {
929 auto cback =
reinterpret_cast<std::function<
void(
HelicsTime,
bool)
>*>(
930 callbackBuffers[timeUpdateCallbackLocation]);
933 if (callbackBuffers[stateChangeCallbackLocation] !=
nullptr) {
936 callbackBuffers[stateChangeCallbackLocation]);
939 if (callbackBuffers[timeRequestReturnCallbackLocation] !=
nullptr) {
940 auto cback =
reinterpret_cast<std::function<
void(
HelicsTime,
bool)
>*>(
941 callbackBuffers[timeRequestReturnCallbackLocation]);
944 delete[] callbackBuffers;
949 inline void protect(
const std::string& name)
953 inline void unProtect(
const std::string& name)
958 inline bool isProtected(
const std::string& name)
HelicsFilter helicsFederateGetFilterByIndex(HelicsFederate fed, int index, HelicsError *err)
Definition: MessageFiltersExport.cpp:223
void helicsFederateSetTag(HelicsFederate fed, const char *tagName, const char *value, HelicsError *err)
Definition: FederateExport.cpp:1352
void setCoreType(int coretype)
Definition: cpp98/Federate.hpp:116
void finalizeComplete()
Definition: cpp98/Federate.hpp:466
void helicsFederateSetGlobal(HelicsFederate fed, const char *valueName, const char *value, HelicsError *err)
Definition: FederateExport.cpp:1331
double HelicsTime
Definition: api-data.h:100
HelicsFederate getObject() const
Definition: cpp98/Federate.hpp:886
void helicsQueryBufferFill(HelicsQueryBuffer buffer, const char *queryResult, int strSize, HelicsError *err)
Definition: helicsCallbacks.cpp:149
void logMessage(int level, const std::string &message)
Definition: cpp98/Federate.hpp:876
const HelicsBool HELICS_FALSE
Definition: api-data.h:115
void setBrokerInit(const std::string &brokerInit)
Set a string for the broker initialization in command line argument format.
Definition: cpp98/Federate.hpp:102
void enterInitializingModeAsync()
Definition: cpp98/Federate.hpp:386
void helicsFederateSetFlagOption(HelicsFederate fed, int flag, HelicsBool flagValue, HelicsError *err)
Definition: FederateExport.cpp:1225
HelicsFilter helicsFederateRegisterGlobalCloningFilter(HelicsFederate fed, const char *name, HelicsError *err)
Definition: MessageFiltersExport.cpp:142
void finalize()
Definition: cpp98/Federate.hpp:455
HelicsTime helicsFederateGetCurrentTime(HelicsFederate fed, HelicsError *err)
Definition: FederateExport.cpp:1320
Definition: cpp98/Federate.hpp:242
bool exec_async_iterate
indicator that the federate is in an async operation
Definition: cpp98/Federate.hpp:893
const HelicsBool HELICS_TRUE
Definition: api-data.h:114
void helicsFederateInfoSetBroker(HelicsFederateInfo fi, const char *broker, HelicsError *err)
Definition: FederateExport.cpp:283
void logErrorMessage(const std::string &message)
Definition: cpp98/Federate.hpp:856
const char * getTag(const std::string &tag) const
Definition: cpp98/Federate.hpp:823
Filter registerGlobalFilter(HelicsFilterTypes type, const std::string &filterName=std::string())
Definition: cpp98/Federate.hpp:759
HelicsTime helicsFederateRequestTimeComplete(HelicsFederate fed, HelicsError *err)
Definition: FederateExport.cpp:1043
HelicsTime helicsFederateRequestTimeAdvance(HelicsFederate fed, HelicsTime timeDelta, HelicsError *err)
Definition: FederateExport.cpp:968
void logInfoMessage(const std::string &message)
Definition: cpp98/Federate.hpp:866
void helicsFederateEnterExecutingModeAsync(HelicsFederate fed, HelicsError *err)
Definition: FederateExport.cpp:895
void enterExecutingModeAsync(HelicsIterationRequest iterate=HELICS_ITERATION_REQUEST_NO_ITERATION)
Definition: cpp98/Federate.hpp:426
void helicsQuerySetOrdering(HelicsQuery query, int32_t mode, HelicsError *err)
Definition: helicsExport.cpp:1189
void requestTimeIterativeAsync(HelicsTime time, HelicsIterationRequest iterate)
Definition: cpp98/Federate.hpp:522
void finalizeAsync()
Definition: cpp98/Federate.hpp:461
Definition: Filter.hpp:112
void localError(int errorCode, const std::string &errorString)
Definition: cpp98/Federate.hpp:841
HelicsTime grantedTime
the time of the granted step
Definition: cpp98/Federate.hpp:243
HelicsTime getTimeProperty(int tProperty) const
Definition: cpp98/Federate.hpp:339
int helicsFederateGetFilterCount(HelicsFederate fed)
Definition: MessageFiltersExport.cpp:214
HelicsFederateInfo getInfo()
Definition: cpp98/Federate.hpp:179
void helicsFederateProcessCommunications(HelicsFederate fed, HelicsTime period, HelicsError *err)
Definition: FederateExport.cpp:1098
HelicsIterationResult helicsFederateEnterExecutingModeIterative(HelicsFederate fed, HelicsIterationRequest iterate, HelicsError *err)
Definition: FederateExport.cpp:879
void helicsFederateAddDependency(HelicsFederate fed, const char *fedName, HelicsError *err)
Definition: FederateExport.cpp:1395
void helicsFederateEnterExecutingMode(HelicsFederate fed, HelicsError *err)
Definition: FederateExport.cpp:834
void helicsFederateSetTimeRequestReturnCallback(HelicsFederate fed, void(*requestTimeReturn)(HelicsTime newTime, HelicsBool iterating, void *userdata), void *userdata, HelicsError *err)
Definition: FederateExport.cpp:1178
void helicsFederateEnterExecutingModeIterativeAsync(HelicsFederate fed, HelicsIterationRequest iterate, HelicsError *err)
Definition: FederateExport.cpp:909
void helicsFederateLocalError(HelicsFederate fed, int errorCode, const char *errorString, HelicsError *err)
Definition: FederateExport.cpp:703
void * HelicsFederate
Definition: api-data.h:65
HelicsBool helicsFederateIsAsyncOperationCompleted(HelicsFederate fed, HelicsError *err)
Definition: FederateExport.cpp:811
void helicsFederateRegisterInterfaces(HelicsFederate fed, const char *file, HelicsError *err)
Definition: FederateExport.cpp:669
bool isAsyncOperationCompleted() const
Definition: cpp98/Federate.hpp:394
HelicsIterationTime requestTimeIterativeComplete()
Definition: cpp98/Federate.hpp:537
void helicsFederateFinalize(HelicsFederate fed, HelicsError *err)
Definition: FederateExport.cpp:719
void helicsFederateSendCommand(HelicsFederate fed, const char *target, const char *command, HelicsError *err)
Definition: FederateExport.cpp:1470
void * HelicsQueryBuffer
Definition: api-data.h:88
Definition: cpp98/Federate.hpp:248
void helicsFederateSetSeparator(HelicsFederate fed, char separator, HelicsError *err)
Definition: FederateExport.cpp:1311
void setBrokerKey(const std::string &brokerkey)
Definition: cpp98/Federate.hpp:130
const char * helicsQueryExecute(HelicsQuery query, HelicsFederate fed, HelicsError *err)
Definition: helicsExport.cpp:1025
void setCoreType(const std::string &coretype)
Definition: cpp98/Federate.hpp:109
HelicsFederate helicsFederateClone(HelicsFederate fed, HelicsError *err)
Definition: FederateExport.cpp:557
HelicsFederateState getCurrentMode() const
Definition: cpp98/Federate.hpp:371
void helicsFederateEnterExecutingModeComplete(HelicsFederate fed, HelicsError *err)
Definition: FederateExport.cpp:923
Definition: cpp98/Federate.hpp:28
void helicsQueryFree(HelicsQuery query)
Definition: helicsExport.cpp:1198
void helicsFederateGlobalError(HelicsFederate fed, int errorCode, const char *errorString, HelicsError *err)
Definition: FederateExport.cpp:687
void helicsFederateLogWarningMessage(HelicsFederate fed, const char *logmessage, HelicsError *err)
Definition: FederateExport.cpp:1446
HelicsFederateState helicsFederateGetState(HelicsFederate fed, HelicsError *err)
Definition: FederateExport.cpp:1117
const char * helicsFederateGetCommand(HelicsFederate fed, HelicsError *err)
Definition: FederateExport.cpp:1479
void setProperty(int intProperty, int value)
Definition: cpp98/Federate.hpp:324
HelicsTime helicsFederateRequestTime(HelicsFederate fed, HelicsTime requestTime, HelicsError *err)
Definition: FederateExport.cpp:952
void globalError(int errorCode, const std::string &errorString)
Definition: cpp98/Federate.hpp:850
void setCoreName(const std::string &corename)
Definition: cpp98/Federate.hpp:86
void helicsFederateSetIntegerProperty(HelicsFederate fed, int intProperty, int propertyVal, HelicsError *err)
Definition: FederateExport.cpp:1241
HelicsTime requestTimeComplete()
Definition: cpp98/Federate.hpp:529
HelicsIterationResult enterExecutingMode(HelicsIterationRequest iterate=HELICS_ITERATION_REQUEST_NO_ITERATION)
Definition: cpp98/Federate.hpp:411
void helicsFederateSetQueryCallback(HelicsFederate fed, void(*queryAnswer)(const char *query, int querySize, HelicsQueryBuffer buffer, void *userdata), void *userdata, HelicsError *err)
Definition: helicsCallbacks.cpp:98
void helicsFederateProtect(const char *fedName, HelicsError *err)
Definition: FederateExport.cpp:604
~FederateInfo()
Definition: cpp98/Federate.hpp:76
FederateInfo(int coretype)
Definition: cpp98/Federate.hpp:41
void helicsFederateSetTimeProperty(HelicsFederate fed, int timeProperty, HelicsTime time, HelicsError *err)
Definition: FederateExport.cpp:1211
void helicsFederateInfoSetTimeProperty(HelicsFederateInfo fi, int timeProperty, HelicsTime propertyValue, HelicsError *err)
Definition: FederateExport.cpp:392
std::string query(const std::string &target, const std::string &queryStr, HelicsSequencingModes mode=HELICS_SEQUENCING_MODE_FAST) const
Definition: cpp98/Federate.hpp:580
void registerInterfaces(const std::string &configString)
Definition: cpp98/Federate.hpp:366
HelicsTime helicsFederateRequestNextStep(HelicsFederate fed, HelicsError *err)
Definition: FederateExport.cpp:984
HelicsFederateInfo helicsCreateFederateInfo(void)
Definition: FederateExport.cpp:131
void setFlagOption(int flag, bool value=true)
Definition: cpp98/Federate.hpp:138
void * HelicsFederateInfo
Definition: api-data.h:71
const char * helicsFederateGetName(HelicsFederate fed)
Definition: FederateExport.cpp:1201
int getFilterCount() const
Definition: cpp98/Federate.hpp:779
void helicsFederateUnProtect(const char *fedName, HelicsError *err)
Definition: FederateExport.cpp:615
void setBroker(const std::string &broker)
Definition: cpp98/Federate.hpp:123
Filter getFilter(const std::string &filterName)
Definition: cpp98/Federate.hpp:786
void helicsFederateInfoFree(HelicsFederateInfo fi)
Definition: FederateExport.cpp:167
void logDebugMessage(const std::string &message)
Definition: cpp98/Federate.hpp:871
HelicsIterationTime requestTimeIterative(HelicsTime time, HelicsIterationRequest iterate)
Definition: cpp98/Federate.hpp:500
Federate & operator=(const Federate &fedObj)
Copy assignment operator.
Definition: cpp98/Federate.hpp:258
void helicsFederateInfoSetFlagOption(HelicsFederateInfo fi, int flag, HelicsBool value, HelicsError *err)
Definition: FederateExport.cpp:369
HelicsFederate baseObject() const
Definition: cpp98/Federate.hpp:297
void addDependency(const std::string &fedName)
Definition: cpp98/Federate.hpp:832
HelicsFilter helicsFederateGetFilter(HelicsFederate fed, const char *name, HelicsError *err)
Definition: MessageFiltersExport.cpp:186
void helicsFederateEnterInitializingModeAsync(HelicsFederate fed, HelicsError *err)
Definition: FederateExport.cpp:797
Federate(const Federate &fedObj)
Copy constructor.
Definition: cpp98/Federate.hpp:253
bool getFlagOption(int flag) const
Definition: cpp98/Federate.hpp:332
FederateInfo & operator=(const FederateInfo &fedInfo)
Definition: cpp98/Federate.hpp:52
void helicsFederateInfoSetCoreInitString(HelicsFederateInfo fi, const char *coreInit, HelicsError *err)
Definition: FederateExport.cpp:225
void enterInitializingMode()
Definition: cpp98/Federate.hpp:378
void helicsFederateInfoSetCoreName(HelicsFederateInfo fi, const char *corename, HelicsError *err)
Definition: FederateExport.cpp:211
int helicsFederateGetIntegerProperty(HelicsFederate fed, int intProperty, HelicsError *err)
Definition: FederateExport.cpp:1294
HelicsTime helicsFederateRequestTimeIterative(HelicsFederate fed, HelicsTime requestTime, HelicsIterationRequest iterate, HelicsIterationResult *outIteration, HelicsError *err)
Definition: FederateExport.cpp:1000
Definition: helicsExceptions.hpp:38
void helicsFederateLogDebugMessage(HelicsFederate fed, const char *logmessage, HelicsError *err)
Definition: FederateExport.cpp:1456
FederateInfo()
Definition: cpp98/Federate.hpp:31
void helicsFederateLogInfoMessage(HelicsFederate fed, const char *logmessage, HelicsError *err)
Definition: FederateExport.cpp:1451
std::string query(const std::string &queryStr, HelicsSequencingModes mode=HELICS_SEQUENCING_MODE_FAST) const
Definition: cpp98/Federate.hpp:607
FederateInfo(const std::string &coretype)
Definition: cpp98/Federate.hpp:34
HelicsSequencingModes
Definition: helics_enums.h:395
void helicsFederateLogLevelMessage(HelicsFederate fed, int loglevel, const char *logmessage, HelicsError *err)
Definition: FederateExport.cpp:1461
const char * getName() const
Definition: cpp98/Federate.hpp:550
void helicsFederateInfoSetCoreTypeFromString(HelicsFederateInfo fi, const char *coretype, HelicsError *err)
Definition: FederateExport.cpp:262
const char * helicsFederateGetCommandSource(HelicsFederate fed, HelicsError *err)
Definition: FederateExport.cpp:1494
void setFlagOption(int flag, bool flagValue=true)
Definition: cpp98/Federate.hpp:305
HelicsIterationResult enterExecutingModeComplete()
Definition: cpp98/Federate.hpp:442
Federate() HELICS_NOTHROW
Default constructor.
Definition: cpp98/Federate.hpp:251
void protect()
Definition: cpp98/Federate.hpp:556
HelicsFilterTypes
Definition: helics_enums.h:359
CloningFilter registerGlobalCloningFilter(const std::string &deliveryEndpoint)
Definition: cpp98/Federate.hpp:772
CloningFilter registerCloningFilter(const std::string &deliveryEndpoint)
Definition: cpp98/Federate.hpp:749
void helicsFederateInfoLoadFromString(HelicsFederateInfo fi, const char *args, HelicsError *err)
Definition: FederateExport.cpp:197
void helicsFederateFinalizeComplete(HelicsFederate fed, HelicsError *err)
Definition: FederateExport.cpp:729
void setSeparator(char sep)
Set the separator character.
Definition: cpp98/Federate.hpp:91
void enterInitializingModeComplete()
Definition: cpp98/Federate.hpp:402
const char * helicsFederateGetTag(HelicsFederate fed, const char *tagName, HelicsError *err)
Definition: FederateExport.cpp:1372
HelicsCore getCore()
Definition: cpp98/Federate.hpp:881
HelicsFederateState
Definition: api-data.h:139
@ HELICS_ITERATION_REQUEST_NO_ITERATION
Definition: api-data.h:121
void setProperty(int integerProperty, int propertyValue)
Definition: cpp98/Federate.hpp:157
void helicsFederateSetTimeUpdateCallback(HelicsFederate fed, void(*timeUpdate)(HelicsTime newTime, HelicsBool iterating, void *userdata), void *userdata, HelicsError *err)
Definition: helicsCallbacks.cpp:125
HelicsTime requestTime(HelicsTime time)
Definition: cpp98/Federate.hpp:478
HelicsIterationResult
Definition: api-data.h:129
void setProperty(int tProperty, HelicsTime timeValue)
Definition: cpp98/Federate.hpp:316
void setGlobal(const std::string &valueName, const std::string &value)
Definition: cpp98/Federate.hpp:803
void unProtect()
Definition: cpp98/Federate.hpp:562
struct helicscpp::HelicsIterationTime HelicsIterationTime
@ HELICS_SEQUENCING_MODE_FAST
Definition: helics_enums.h:397
void requestTimeAsync(HelicsTime time)
Definition: cpp98/Federate.hpp:511
HelicsBool helicsFederateGetFlagOption(HelicsFederate fed, int flag, HelicsError *err)
Definition: FederateExport.cpp:1276
HelicsBool helicsFederateIsProtected(const char *fedName, HelicsError *err)
Definition: FederateExport.cpp:630
HelicsFederate fed
underlying HelicsFederate object
Definition: cpp98/Federate.hpp:892
void * HelicsCore
Definition: api-data.h:54
void setProperty(int timeProperty, HelicsTime timeValue)
Definition: cpp98/Federate.hpp:149
HelicsIterationResult status
the convergence state
Definition: cpp98/Federate.hpp:244
void setCoreInit(const std::string &coreInit)
Definition: cpp98/Federate.hpp:97
HelicsTime helicsFederateRequestTimeIterativeComplete(HelicsFederate fed, HelicsIterationResult *outIterate, HelicsError *err)
Definition: FederateExport.cpp:1073
Filter getFilter(int index)
Definition: cpp98/Federate.hpp:793
void helicsFederateFinalizeAsync(HelicsFederate fed, HelicsError *err)
Definition: FederateExport.cpp:724
void helicsFederateInfoSetBrokerKey(HelicsFederateInfo fi, const char *brokerkey, HelicsError *err)
Definition: FederateExport.cpp:297
void helicsFederateFree(HelicsFederate fed)
Definition: helicsExport.cpp:944
HelicsTime requestTimeAdvance(HelicsTime timeDelta)
Definition: cpp98/Federate.hpp:492
void helicsFederateRequestTimeAsync(HelicsFederate fed, HelicsTime requestTime, HelicsError *err)
Definition: FederateExport.cpp:1029
void helicsFederateInfoSetBrokerInitString(HelicsFederateInfo fi, const char *brokerInit, HelicsError *err)
Definition: FederateExport.cpp:239
void logWarningMessage(const std::string &message)
Definition: cpp98/Federate.hpp:861
FederateInfo(const FederateInfo &fedInfo)
Definition: cpp98/Federate.hpp:47
void helicsFederateEnterInitializingMode(HelicsFederate fed, HelicsError *err)
Definition: FederateExport.cpp:783
HelicsTime helicsFederateGetTimeProperty(HelicsFederate fed, int timeProperty, HelicsError *err)
Definition: FederateExport.cpp:1257
void helicsFederateInfoSetIntegerProperty(HelicsFederateInfo fi, int intProperty, int propertyValue, HelicsError *err)
Definition: FederateExport.cpp:410
HelicsFilter helicsFederateRegisterGlobalFilter(HelicsFederate fed, HelicsFilterTypes type, const char *name, HelicsError *err)
Definition: MessageFiltersExport.cpp:79
HelicsQuery helicsCreateQuery(const char *target, const char *query)
Definition: helicsExport.cpp:1012
void helicsFederateEnterInitializingModeComplete(HelicsFederate fed, HelicsError *err)
Definition: FederateExport.cpp:820
@ HELICS_ITERATION_RESULT_NEXT_STEP
Definition: api-data.h:130
virtual ~Federate()
Definition: cpp98/Federate.hpp:282
void helicsFederateLogErrorMessage(HelicsFederate fed, const char *logmessage, HelicsError *err)
Definition: FederateExport.cpp:1441
void * HelicsQuery
Definition: api-data.h:77
HelicsTime getCurrentTime()
Definition: cpp98/Federate.hpp:471
HelicsFilter helicsFederateRegisterFilter(HelicsFederate fed, HelicsFilterTypes type, const char *name, HelicsError *err)
Definition: MessageFiltersExport.cpp:58
HelicsFilter helicsFederateRegisterCloningFilter(HelicsFederate fed, const char *name, HelicsError *err)
Definition: MessageFiltersExport.cpp:122
void helicsFederateSetTimeRequestEntryCallback(HelicsFederate fed, void(*requestTime)(HelicsTime currentTime, HelicsTime requestTime, HelicsBool iterating, void *userdata), void *userdata, HelicsError *err)
Definition: FederateExport.cpp:1128
void setTag(const std::string &tag, const std::string &value)
Definition: cpp98/Federate.hpp:813
HelicsIterationResult helicsFederateEnterExecutingModeIterativeComplete(HelicsFederate fed, HelicsError *err)
Definition: FederateExport.cpp:936
void helicsFederateInfoSetSeparator(HelicsFederateInfo fi, char separator, HelicsError *err)
Definition: FederateExport.cpp:401
int getIntegerProperty(int intProperty) const
Definition: cpp98/Federate.hpp:346
Definition: Filter.hpp:18
HelicsCore helicsFederateGetCore(HelicsFederate fed, HelicsError *err)
Definition: FederateExport.cpp:653
Filter registerFilter(HelicsFilterTypes type, const std::string &filterName=std::string())
Definition: cpp98/Federate.hpp:738
Definition: cpp98/Broker.hpp:18
void setSeparator(char sep)
Definition: cpp98/Federate.hpp:357
HelicsTime requestNextStep()
Definition: cpp98/Federate.hpp:484
int HelicsBool
Definition: api-data.h:112
HelicsIterationRequest
Definition: api-data.h:120
void helicsFederateInfoSetCoreType(HelicsFederateInfo fi, int coretype, HelicsError *err)
Definition: FederateExport.cpp:253
void helicsFederateRequestTimeIterativeAsync(HelicsFederate fed, HelicsTime requestTime, HelicsIterationRequest iterate, HelicsError *err)
Definition: FederateExport.cpp:1059
void helicsFederateSetStateChangeCallback(HelicsFederate fed, void(*stateChange)(HelicsFederateState newState, HelicsFederateState oldState, void *userdata), void *userdata, HelicsError *err)
Definition: FederateExport.cpp:1154