 |
helics
3.3.0
|
Go to the documentation of this file.
14 #ifndef HELICS_APISHARED_VALUE_FEDERATE_FUNCTIONS_H_
15 #define HELICS_APISHARED_VALUE_FEDERATE_FUNCTIONS_H_
Time getLastUpdateTime(const Input &inp) const
Definition: ValueFederate.cpp:506
Common functions for the HELICS C api.
int helicsInputGetVectorSize(HelicsInput ipt)
Definition: ValueFederateExport.cpp:893
double HelicsTime
Definition: api-data.h:100
virtual void setFlagOption(int flag, bool flagValue=true) override
Definition: ValueFederate.cpp:158
HelicsTime helicsInputLastUpdateTime(HelicsInput ipt)
Definition: ValueFederateExport.cpp:1560
void clearUpdate(const Input &inp)
Definition: ValueFederate.cpp:655
Publication & registerPublication(std::string_view name, std::string_view type, std::string_view units=std::string_view{})
Definition: ValueFederate.cpp:99
const Input & getSubscription(std::string_view target) const
Definition: ValueFederate.cpp:579
virtual std::string localQuery(std::string_view queryStr) const override
Definition: ValueFederate.cpp:525
void helicsPublicationPublishString(HelicsPublication pub, const char *val, HelicsError *err)
Definition: ValueFederateExport.cpp:496
void helicsInputGetBytes(HelicsInput ipt, void *data, int maxDataLength, int *actualSize, HelicsError *err)
Definition: ValueFederateExport.cpp:707
void addAlias(const Input &inp, std::string_view shortcutName)
Definition: ValueFederate.cpp:144
void helicsInputSetDefaultComplexVector(HelicsInput ipt, const double *vectorInput, int vectorLength, HelicsError *err)
Definition: ValueFederateExport.cpp:1133
void addTarget(const Publication &pub, std::string_view target)
Definition: ValueFederate.cpp:134
Definition: application_api/ValueFederate.hpp:26
void helicsInputSetDefaultNamedPoint(HelicsInput ipt, const char *defaultName, double val, HelicsError *err)
Definition: ValueFederateExport.cpp:1158
FederateInfo loadFederateInfo(const std::string &configString)
Definition: FederateInfo.cpp:711
HelicsBool helicsPublicationIsValid(HelicsPublication pub)
Definition: ValueFederateExport.cpp:660
HelicsDataTypes
Definition: helics_enums.h:65
int helicsFederateGetPublicationCount(HelicsFederate fed)
Definition: ValueFederateExport.cpp:1592
void helicsPublicationPublishComplex(HelicsPublication pub, double real, double imag, HelicsError *err)
Definition: ValueFederateExport.cpp:581
HelicsBool helicsInputIsValid(HelicsInput ipt)
Definition: ValueFederateExport.cpp:669
void helicsInputSetDefaultInteger(HelicsInput ipt, int64_t val, HelicsError *err)
Definition: ValueFederateExport.cpp:1056
void helicsPublicationAddTarget(HelicsPublication pub, const char *target, HelicsError *err)
Definition: ValueFederateExport.cpp:649
void * HelicsFederate
Definition: api-data.h:65
void helicsInputSetDefaultComplex(HelicsInput ipt, double real, double imag, HelicsError *err)
Definition: ValueFederateExport.cpp:1103
std::string localNameGenerator(std::string_view addition) const
Definition: Federate.cpp:1441
std::vector< int > queryUpdates()
Definition: ValueFederate.cpp:530
std::atomic< Modes > currentMode
the current state of the simulation
Definition: application_api/Federate.hpp:78
TimeRepresentation< count_time< 9 > > Time
Definition: helicsTime.hpp:27
virtual void registerInterfaces(const std::string &configString)
Definition: Federate.cpp:946
const Input & getInput(std::string_view name) const
Definition: ValueFederate.cpp:540
void setDefaultValue(const Input &inp, data_view block)
Definition: ValueFederate.cpp:173
HelicsTime helicsInputGetTime(HelicsInput ipt, HelicsError *err)
Definition: ValueFederateExport.cpp:815
void logWarningMessage(std::string_view message) const
Definition: application_api/Federate.hpp:728
void * HelicsInput
Definition: api-data.h:26
int helicsFederateGetInputCount(HelicsFederate fed)
Definition: ValueFederateExport.cpp:1602
Input & registerSubscription(std::string_view target, std::string_view units=std::string_view{})
Definition: ValueFederate.cpp:127
Definition: data_view.hpp:22
char nameSegmentSeparator
the separator between automatically prependend names
Definition: application_api/Federate.hpp:79
HelicsPublication helicsFederateGetPublication(HelicsFederate fed, const char *key, HelicsError *err)
Definition: ValueFederateExport.cpp:333
int getOptionIndex(std::string val)
Definition: FederateInfo.cpp:408
HelicsPublication helicsFederateRegisterTypePublication(HelicsFederate fed, const char *key, const char *type, const char *units, HelicsError *err)
Definition: ValueFederateExport.cpp:98
virtual void setFlagOption(int flag, bool flagValue=true)
Definition: Federate.cpp:544
void helicsFederateClearUpdates(HelicsFederate fed)
Definition: ValueFederateExport.cpp:466
Publication & getPublication(std::string_view name)
Definition: ValueFederate.cpp:589
void helicsFederatePublishJSON(HelicsFederate fed, const char *json, HelicsError *err)
Definition: ValueFederateExport.cpp:313
int getOptionValue(std::string val)
Definition: FederateInfo.cpp:427
Definition: core-exceptions.hpp:67
void removeTarget(const Publication &pub, std::string_view target)
Definition: ValueFederate.cpp:148
int getInputCount() const
Definition: ValueFederate.cpp:645
Definition: core-exceptions.hpp:48
HelicsPublication helicsFederateRegisterGlobalInput(HelicsFederate fed, const char *key, HelicsDataTypes type, const char *units, HelicsError *err)
Definition: ValueFederateExport.cpp:266
void helicsPublicationPublishInteger(HelicsPublication pub, int64_t val, HelicsError *err)
Definition: ValueFederateExport.cpp:510
void registerFromPublicationJSON(const std::string &jsonString)
Definition: ValueFederate.cpp:448
char helicsInputGetChar(HelicsInput ipt, HelicsError *err)
Definition: ValueFederateExport.cpp:833
Definition: core-exceptions.hpp:85
Definition: api-data.h:158
Definition: application_api/CoreApp.hpp:25
bool isMember(const toml::value &element, const std::string &key)
Definition: TomlProcessingFunctions.hpp:155
HelicsInput helicsFederateGetInput(HelicsFederate fed, const char *key, HelicsError *err)
Definition: ValueFederateExport.cpp:387
HelicsPublication helicsFederateRegisterGlobalPublication(HelicsFederate fed, const char *key, HelicsDataTypes type, const char *units, HelicsError *err)
Definition: ValueFederateExport.cpp:168
void setInputNotificationCallback(std::function< void(Input &, Time)> callback)
Definition: ValueFederate.cpp:629
Definition: FederateInfo.hpp:24
void helicsInputAddTarget(HelicsInput ipt, const char *target, HelicsError *err)
Definition: ValueFederateExport.cpp:678
bool isUpdated(const Input &inp) const
Definition: ValueFederate.cpp:501
void helicsInputGetComplexVector(HelicsInput ipt, double data[], int maxLength, int *actualSize, HelicsError *err)
Definition: ValueFederateExport.cpp:952
Federate & operator=(Federate &&fed) noexcept
Definition: Federate.cpp:192
bool useJsonSerialization
Definition: application_api/Federate.hpp:83
Input & registerInput(std::string_view name, std::string_view type, std::string_view units=std::string_view{})
Definition: ValueFederate.cpp:113
void publishBytes(const Publication &pub, data_view block)
Definition: ValueFederate.cpp:416
int helicsInputGetStringSize(HelicsInput ipt)
Definition: ValueFederateExport.cpp:909
double helicsInputGetDouble(HelicsInput ipt, HelicsError *err)
Definition: ValueFederateExport.cpp:800
bool useJsonSerialization
Definition: FederateInfo.hpp:39
void helicsPublicationPublishComplexVector(HelicsPublication pub, const double *vectorInput, int vectorLength, HelicsError *err)
Definition: ValueFederateExport.cpp:613
auto getID() const noexcept
Definition: application_api/Federate.hpp:701
virtual void updateTime(Time newTime, Time oldTime) override
Definition: ValueFederate.cpp:511
void helicsPublicationPublishTime(HelicsPublication pub, HelicsTime val, HelicsError *err)
Definition: ValueFederateExport.cpp:552
HelicsInput helicsFederateGetInputByIndex(HelicsFederate fed, int index, HelicsError *err)
Definition: ValueFederateExport.cpp:413
HelicsPublication helicsFederateRegisterPublication(HelicsFederate fed, const char *key, HelicsDataTypes type, const char *units, HelicsError *err)
Definition: ValueFederateExport.cpp:118
IterationResult
Definition: CoreTypes.hpp:83
void publishJSON(const std::string &jsonString)
Definition: ValueFederate.cpp:476
void helicsInputSetDefaultDouble(HelicsInput ipt, double val, HelicsError *err)
Definition: ValueFederateExport.cpp:1074
HelicsInput helicsFederateGetSubscription(HelicsFederate fed, const char *key, HelicsError *err)
Definition: ValueFederateExport.cpp:440
virtual void startupToInitializeStateTransition() override
Definition: ValueFederate.cpp:516
void helicsPublicationPublishNamedPoint(HelicsPublication pub, const char *field, double val, HelicsError *err)
Definition: ValueFederateExport.cpp:631
HelicsInput helicsFederateRegisterSubscription(HelicsFederate fed, const char *key, const char *units, HelicsError *err)
Definition: ValueFederateExport.cpp:77
virtual void registerInterfaces(const std::string &configString) override
Definition: ValueFederate.cpp:178
HelicsInput helicsFederateRegisterInput(HelicsFederate fed, const char *key, HelicsDataTypes type, const char *units, HelicsError *err)
Definition: ValueFederateExport.cpp:215
bool forceCoreUpdate(Input &inp)
Definition: ValueFederate.cpp:411
@ HELICS_FLAG_USE_JSON_SERIALIZATION
Definition: helics_enums.h:137
Definition: Publications.hpp:25
void helicsInputSetDefaultBytes(HelicsInput ipt, const void *data, int inputDataLength, HelicsError *err)
Definition: ValueFederateExport.cpp:1020
void helicsInputClearUpdate(HelicsInput ipt)
Definition: ValueFederateExport.cpp:1577
void helicsPublicationPublishChar(HelicsPublication pub, char val, HelicsError *err)
Definition: ValueFederateExport.cpp:567
void helicsPublicationPublishDouble(HelicsPublication pub, double val, HelicsError *err)
Definition: ValueFederateExport.cpp:538
void helicsInputSetDefaultChar(HelicsInput ipt, char val, HelicsError *err)
Definition: ValueFederateExport.cpp:1094
Definition: api-data.h:169
HelicsPublication helicsFederateRegisterGlobalTypePublication(HelicsFederate fed, const char *key, const char *type, const char *units, HelicsError *err)
Definition: ValueFederateExport.cpp:148
int helicsInputGetByteCount(HelicsInput ipt)
Definition: ValueFederateExport.cpp:688
the main namespace for the helics co-simulation library User functions will be in the helics namespac...
Definition: AsyncFedCallInfo.hpp:14
void * HelicsPublication
Definition: api-data.h:31
virtual void initializeToExecuteStateTransition(IterationResult result) override
Definition: ValueFederate.cpp:520
HelicsInput helicsFederateRegisterTypeInput(HelicsFederate fed, const char *key, const char *type, const char *units, HelicsError *err)
Definition: ValueFederateExport.cpp:196
HelicsPublication helicsFederateRegisterGlobalTypeInput(HelicsFederate fed, const char *key, const char *type, const char *units, HelicsError *err)
Definition: ValueFederateExport.cpp:246
void helicsFederateRegisterFromPublicationJSON(HelicsFederate fed, const char *json, HelicsError *err)
Definition: ValueFederateExport.cpp:296
HelicsBool helicsInputGetBoolean(HelicsInput ipt, HelicsError *err)
Definition: ValueFederateExport.cpp:782
ValueFederate & operator=(ValueFederate &&fed) noexcept
Definition: ValueFederate.cpp:89
HelicsComplex helicsInputGetComplexObject(HelicsInput ipt, HelicsError *err)
Definition: ValueFederateExport.cpp:872
void registerValueInterfaces(const std::string &configString)
Definition: ValueFederate.cpp:184
void helicsPublicationPublishVector(HelicsPublication pub, const double *vectorInput, int vectorLength, HelicsError *err)
Definition: ValueFederateExport.cpp:595
void helicsInputSetDefaultString(HelicsInput ipt, const char *defaultString, HelicsError *err)
Definition: ValueFederateExport.cpp:1040
void clearUpdates()
Definition: ValueFederate.cpp:650
int getPublicationCount() const
Definition: ValueFederate.cpp:640
Definition: application_api/Federate.hpp:48
int64_t helicsInputGetInteger(HelicsInput ipt, HelicsError *err)
Definition: ValueFederateExport.cpp:767
void helicsInputSetDefaultTime(HelicsInput ipt, HelicsTime val, HelicsError *err)
Definition: ValueFederateExport.cpp:1083
void helicsInputGetString(HelicsInput ipt, char *outputString, int maxStringLength, int *actualLength, HelicsError *err)
Definition: ValueFederateExport.cpp:741
const std::string & getTarget(const Input &inp) const
Definition: ValueFederate.cpp:535
void helicsPublicationPublishBytes(HelicsPublication pub, const void *data, int inputDataLength, HelicsError *err)
Definition: ValueFederateExport.cpp:482
Input & registerGlobalInput(std::string_view name, std::string_view type, std::string_view units=std::string_view{})
Definition: ValueFederate.cpp:120
HelicsBool helicsInputIsUpdated(HelicsInput ipt)
Definition: ValueFederateExport.cpp:1549
void helicsInputGetNamedPoint(HelicsInput ipt, char *outputString, int maxStringLength, int *actualLength, double *val, HelicsError *err)
Definition: ValueFederateExport.cpp:979
void helicsInputGetComplex(HelicsInput ipt, double *real, double *imag, HelicsError *err)
Definition: ValueFederateExport.cpp:850
data_view getBytes(const Input &inp)
Definition: ValueFederate.cpp:406
void helicsInputGetVector(HelicsInput ipt, double data[], int maxLength, int *actualSize, HelicsError *err)
Definition: ValueFederateExport.cpp:925
HelicsPublication helicsFederateGetPublicationByIndex(HelicsFederate fed, int index, HelicsError *err)
Definition: ValueFederateExport.cpp:358
std::shared_ptr< Core > coreObject
reference to the core simulation API
Definition: application_api/Federate.hpp:90
void helicsInputSetDefaultVector(HelicsInput ipt, const double *vectorInput, int vectorLength, HelicsError *err)
Definition: ValueFederateExport.cpp:1113
int HelicsBool
Definition: api-data.h:112
void helicsInputSetDefaultBoolean(HelicsInput ipt, HelicsBool val, HelicsError *err)
Definition: ValueFederateExport.cpp:1065
void helicsPublicationPublishBoolean(HelicsPublication pub, HelicsBool val, HelicsError *err)
Definition: ValueFederateExport.cpp:524
Publication & registerGlobalPublication(std::string_view name, std::string_view type, std::string_view units=std::string_view{})
Definition: ValueFederate.cpp:106
virtual void disconnect()
Definition: Federate.cpp:653