 |
helics
2.8.1
|
Go to the documentation of this file.
14 #ifndef HELICS_APISHARED_VALUE_FEDERATE_FUNCTIONS_H_
15 #define HELICS_APISHARED_VALUE_FEDERATE_FUNCTIONS_H_
void removeTarget(const Publication &pub, const std::string &target)
Definition: ValueFederate.cpp:151
Time getLastUpdateTime(const Input &inp) const
Definition: ValueFederate.cpp:501
@ data
print timing+data transmissions
Definition: loggingHelper.hpp:30
std::atomic< modes > currentMode
the current state of the simulation
Definition: application_api/Federate.hpp:65
@ helics_flag_use_json_serialization
Definition: helics_enums.h:121
virtual void setFlagOption(int flag, bool flagValue=true) override
Definition: ValueFederate.cpp:161
bool isMember(const toml::value &element, const std::string &key)
Definition: TomlProcessingFunctions.hpp:148
void clearUpdate(const Input &inp)
Definition: ValueFederate.cpp:649
void helicsInputGetRawValue(helics_input ipt, void *data, int maxDataLength, int *actualSize, helics_error *err)
Definition: ValueFederateExport.cpp:690
void helicsInputSetDefaultBoolean(helics_input ipt, helics_bool val, helics_error *err)
Definition: ValueFederateExport.cpp:1021
void helicsInputGetVector(helics_input ipt, double data[], int maxLength, int *actualSize, helics_error *err)
Definition: ValueFederateExport.cpp:908
const std::string & getName() const
Definition: application_api/Federate.hpp:546
virtual void initializeToExecuteStateTransition(iteration_result result) override
Definition: ValueFederate.cpp:515
Definition: application_api/ValueFederate.hpp:25
helics_input helicsFederateRegisterSubscription(helics_federate fed, const char *key, const char *units, helics_error *err)
Definition: ValueFederateExport.cpp:77
FederateInfo loadFederateInfo(const std::string &configString)
Definition: FederateInfo.cpp:639
helics_bool helicsInputGetBoolean(helics_input ipt, helics_error *err)
Definition: ValueFederateExport.cpp:765
helics_publication helicsFederateGetPublication(helics_federate fed, const char *key, helics_error *err)
Definition: ValueFederateExport.cpp:334
void helicsPublicationPublishTime(helics_publication pub, helics_time val, helics_error *err)
Definition: ValueFederateExport.cpp:553
void helicsInputGetString(helics_input ipt, char *outputString, int maxStringLength, int *actualLength, helics_error *err)
Definition: ValueFederateExport.cpp:724
void addAlias(const Input &inp, const std::string &shortcutName)
Definition: ValueFederate.cpp:147
iteration_result
Definition: core-types.hpp:81
helics_publication helicsFederateRegisterGlobalTypeInput(helics_federate fed, const char *key, const char *type, const char *units, helics_error *err)
Definition: ValueFederateExport.cpp:248
int helicsFederateGetInputCount(helics_federate fed)
Definition: ValueFederateExport.cpp:1450
int helicsInputGetRawValueSize(helics_input ipt)
Definition: ValueFederateExport.cpp:671
void * helics_publication
Definition: api-data.h:31
std::vector< int > queryUpdates()
Definition: ValueFederate.cpp:525
void helicsInputGetNamedPoint(helics_input ipt, char *outputString, int maxStringLength, int *actualLength, double *val, helics_error *err)
Definition: ValueFederateExport.cpp:935
TimeRepresentation< count_time< 9 > > Time
Definition: helics-time.hpp:27
toml::value loadToml(const std::string &tomlString)
Definition: TomlProcessingFunctions.cpp:22
double helics_time
Definition: api-data.h:81
virtual void registerInterfaces(const std::string &configString)
Definition: Federate.cpp:793
void helicsInputSetDefaultTime(helics_input ipt, helics_time val, helics_error *err)
Definition: ValueFederateExport.cpp:1039
void setDefaultValue(const Input &inp, data_view block)
Definition: ValueFederate.cpp:176
helics_publication helicsFederateGetPublicationByIndex(helics_federate fed, int index, helics_error *err)
Definition: ValueFederateExport.cpp:359
helics_complex helicsInputGetComplexObject(helics_input ipt, helics_error *err)
Definition: ValueFederateExport.cpp:855
Common functions for the HELICS C api.
static double getDouble(Input &inp)
Definition: ValueFederate.cpp:391
void publishRaw(const Publication &pub, data_view block)
Definition: ValueFederate.cpp:401
void helicsPublicationPublishComplex(helics_publication pub, double real, double imag, helics_error *err)
Definition: ValueFederateExport.cpp:582
helics_input helicsFederateGetSubscription(helics_federate fed, const char *key, helics_error *err)
Definition: ValueFederateExport.cpp:441
void helicsInputSetDefaultChar(helics_input ipt, char val, helics_error *err)
Definition: ValueFederateExport.cpp:1050
Definition: data_view.hpp:22
char nameSegmentSeparator
the separator between automatically prependend names
Definition: application_api/Federate.hpp:66
std::string getKey(const Json::Value &element)
Definition: JsonProcessingFunctions.cpp:90
helics_publication helicsFederateRegisterGlobalTypePublication(helics_federate fed, const char *key, const char *type, const char *units, helics_error *err)
Definition: ValueFederateExport.cpp:144
void helicsPublicationPublishChar(helics_publication pub, char val, helics_error *err)
Definition: ValueFederateExport.cpp:568
int getOptionIndex(std::string val)
Definition: FederateInfo.cpp:356
virtual void setFlagOption(int flag, bool flagValue=true)
Definition: Federate.cpp:466
helics_publication helicsFederateRegisterGlobalPublication(helics_federate fed, const char *key, helics_data_type type, const char *units, helics_error *err)
Definition: ValueFederateExport.cpp:167
helics_time helicsInputLastUpdateTime(helics_input ipt)
Definition: ValueFederateExport.cpp:1408
int getOptionValue(std::string val)
Definition: FederateInfo.cpp:375
void helicsInputAddTarget(helics_input ipt, const char *target, helics_error *err)
Definition: ValueFederateExport.cpp:661
Definition: core-exceptions.hpp:67
int getInputCount() const
Definition: ValueFederate.cpp:639
Definition: core-exceptions.hpp:48
helics_input helicsFederateRegisterInput(helics_federate fed, const char *key, helics_data_type type, const char *units, helics_error *err)
Definition: ValueFederateExport.cpp:218
void helicsPublicationPublishVector(helics_publication pub, const double *vectorInput, int vectorLength, helics_error *err)
Definition: ValueFederateExport.cpp:596
void registerFromPublicationJSON(const std::string &jsonString)
Definition: ValueFederate.cpp:443
Definition: core-exceptions.hpp:85
helics_publication helicsFederateRegisterTypePublication(helics_federate fed, const char *key, const char *type, const char *units, helics_error *err)
Definition: ValueFederateExport.cpp:98
Definition: application_api/CoreApp.hpp:25
helics_time helicsInputGetTime(helics_input ipt, helics_error *err)
Definition: ValueFederateExport.cpp:798
Definition: api-data.h:137
void setInputNotificationCallback(std::function< void(Input &, Time)> callback)
Definition: ValueFederate.cpp:623
Definition: FederateInfo.hpp:20
void helicsPublicationPublishNamedPoint(helics_publication pub, const char *str, double val, helics_error *err)
Definition: ValueFederateExport.cpp:614
void helicsPublicationPublishInteger(helics_publication pub, int64_t val, helics_error *err)
Definition: ValueFederateExport.cpp:511
bool isUpdated(const Input &inp) const
Definition: ValueFederate.cpp:496
void helicsPublicationPublishBoolean(helics_publication pub, helics_bool val, helics_error *err)
Definition: ValueFederateExport.cpp:525
Federate & operator=(Federate &&fed) noexcept
Definition: Federate.cpp:183
bool useJsonSerialization
Definition: application_api/Federate.hpp:70
Publication & registerGlobalPublication(const std::string &key, const std::string &type, const std::string &units=std::string())
Definition: ValueFederate.cpp:107
Json::Value loadJson(const std::string &jsonString)
Definition: JsonProcessingFunctions.cpp:24
int helicsInputGetVectorSize(helics_input ipt)
Definition: ValueFederateExport.cpp:876
Publication & getPublication(const std::string &key)
Definition: ValueFederate.cpp:583
bool useJsonSerialization
Definition: FederateInfo.hpp:34
auto getID() const noexcept
Definition: application_api/Federate.hpp:539
virtual void updateTime(Time newTime, Time oldTime) override
Definition: ValueFederate.cpp:506
helics_publication helicsFederateRegisterPublication(helics_federate fed, const char *key, helics_data_type type, const char *units, helics_error *err)
Definition: ValueFederateExport.cpp:118
@ fed
special logging command for message coming from a fed
Definition: loggingHelper.hpp:32
void helicsPublicationPublishDouble(helics_publication pub, double val, helics_error *err)
Definition: ValueFederateExport.cpp:539
void publishJSON(const std::string &jsonString)
Definition: ValueFederate.cpp:471
virtual void startupToInitializeStateTransition() override
Definition: ValueFederate.cpp:511
virtual void registerInterfaces(const std::string &configString) override
Definition: ValueFederate.cpp:181
const Input & getSubscription(const std::string &target) const
Definition: ValueFederate.cpp:573
void helicsInputClearUpdate(helics_input ipt)
Definition: ValueFederateExport.cpp:1425
helics_data_type
Definition: helics_enums.h:51
void helicsInputSetDefaultNamedPoint(helics_input ipt, const char *str, double val, helics_error *err)
Definition: ValueFederateExport.cpp:1089
void helicsInputSetDefaultRaw(helics_input ipt, const void *data, int inputDataLength, helics_error *err)
Definition: ValueFederateExport.cpp:976
void helicsInputSetDefaultComplex(helics_input ipt, double real, double imag, helics_error *err)
Definition: ValueFederateExport.cpp:1059
helics_bool helicsPublicationIsValid(helics_publication pub)
Definition: ValueFederateExport.cpp:643
Definition: api-data.h:166
Input & registerSubscription(const std::string &target, const std::string &units=std::string())
Definition: ValueFederate.cpp:130
Definition: Publications.hpp:23
void helicsPublicationPublishString(helics_publication pub, const char *str, helics_error *err)
Definition: ValueFederateExport.cpp:497
int64_t helicsInputGetInteger(helics_input ipt, helics_error *err)
Definition: ValueFederateExport.cpp:750
void helicsInputGetComplex(helics_input ipt, double *real, double *imag, helics_error *err)
Definition: ValueFederateExport.cpp:833
int helicsFederateGetPublicationCount(helics_federate fed)
Definition: ValueFederateExport.cpp:1440
void helicsInputSetDefaultString(helics_input ipt, const char *str, helics_error *err)
Definition: ValueFederateExport.cpp:996
void publish(double val)
Definition: Publications.cpp:70
the main namespace for the helics co-simulation library User functions will be in the helics namespac...
Definition: AsyncFedCallInfo.hpp:14
helics_publication helicsFederateRegisterGlobalInput(helics_federate fed, const char *key, helics_data_type type, const char *units, helics_error *err)
Definition: ValueFederateExport.cpp:268
static void publish(Publication &pub, const std::string &str)
Definition: ValueFederate.cpp:411
Input & registerInput(const std::string &key, const std::string &type, const std::string &units=std::string())
Definition: ValueFederate.cpp:114
ValueFederate & operator=(ValueFederate &&fed) noexcept
Definition: ValueFederate.cpp:89
char helicsInputGetChar(helics_input ipt, helics_error *err)
Definition: ValueFederateExport.cpp:816
void helicsFederateClearUpdates(helics_federate fed)
Definition: ValueFederateExport.cpp:467
void registerValueInterfaces(const std::string &configString)
Definition: ValueFederate.cpp:187
void helicsPublicationPublishRaw(helics_publication pub, const void *data, int inputDataLength, helics_error *err)
Definition: ValueFederateExport.cpp:483
void addTarget(const Publication &pub, const std::string &target)
Definition: ValueFederate.cpp:137
void helicsPublicationAddTarget(helics_publication pub, const char *target, helics_error *err)
Definition: ValueFederateExport.cpp:632
void clearUpdates()
Definition: ValueFederate.cpp:644
int getPublicationCount() const
Definition: ValueFederate.cpp:634
Definition: application_api/Federate.hpp:44
double helicsInputGetDouble(helics_input ipt, helics_error *err)
Definition: ValueFederateExport.cpp:783
void helicsInputSetDefaultInteger(helics_input ipt, int64_t val, helics_error *err)
Definition: ValueFederateExport.cpp:1012
const std::string & getTarget(const Input &inp) const
Definition: ValueFederate.cpp:530
int helicsInputGetStringSize(helics_input ipt)
Definition: ValueFederateExport.cpp:892
helics_input helicsFederateRegisterTypeInput(helics_federate fed, const char *key, const char *type, const char *units, helics_error *err)
Definition: ValueFederateExport.cpp:199
void helicsFederatePublishJSON(helics_federate fed, const char *json, helics_error *err)
Definition: ValueFederateExport.cpp:314
void helicsFederateRegisterFromPublicationJSON(helics_federate fed, const char *json, helics_error *err)
Definition: ValueFederateExport.cpp:297
void * helics_input
Definition: api-data.h:26
virtual std::string localQuery(const std::string &queryStr) const override
Definition: ValueFederate.cpp:520
static const std::string & getString(Input &inp)
Definition: ValueFederate.cpp:396
helics_bool helicsInputIsUpdated(helics_input ipt)
Definition: ValueFederateExport.cpp:1397
int helics_bool
Definition: api-data.h:92
void helicsInputSetDefaultVector(helics_input ipt, const double *vectorInput, int vectorLength, helics_error *err)
Definition: ValueFederateExport.cpp:1069
const Input & getInput(const std::string &key) const
Definition: ValueFederate.cpp:535
Publication & registerPublication(const std::string &key, const std::string &type, const std::string &units=std::string())
Definition: ValueFederate.cpp:99
std::shared_ptr< Core > coreObject
reference to the core simulation API
Definition: application_api/Federate.hpp:75
helics_bool helicsInputIsValid(helics_input ipt)
Definition: ValueFederateExport.cpp:652
helics_input helicsFederateGetInput(helics_federate fed, const char *key, helics_error *err)
Definition: ValueFederateExport.cpp:388
helics_input helicsFederateGetInputByIndex(helics_federate fed, int index, helics_error *err)
Definition: ValueFederateExport.cpp:414
Input & registerGlobalInput(const std::string &key, const std::string &type, const std::string &units=std::string())
Definition: ValueFederate.cpp:123
void helicsInputSetDefaultDouble(helics_input ipt, double val, helics_error *err)
Definition: ValueFederateExport.cpp:1030
@ initializing
entered after the enterInitializingMode call has returned
void * helics_federate
Definition: api-data.h:56
@ executing
entered after the enterExectuationState call has returned
data_view getValueRaw(const Input &inp)
Definition: ValueFederate.cpp:386
virtual void disconnect()
Definition: Federate.cpp:567