helics  3.0.1
ValueFederate.h
Go to the documentation of this file.
1 /*
2 Copyright (c) 2017-2021,
3 Battelle Memorial Institute; Lawrence Livermore National Security, LLC; Alliance for Sustainable Energy, LLC. See the top-level NOTICE for
4 additional details. All rights reserved.
5 SPDX-License-Identifier: BSD-3-Clause
6 */
7 
14 #ifndef HELICS_APISHARED_VALUE_FEDERATE_FUNCTIONS_H_
15 #define HELICS_APISHARED_VALUE_FEDERATE_FUNCTIONS_H_
16 
17 #include "helicsCore.h"
18 
19 #ifdef __cplusplus
20 extern "C" {
21 #endif
22 
43 HELICS_EXPORT HelicsInput helicsFederateRegisterSubscription(HelicsFederate fed, const char* key, const char* units, HelicsError* err);
44 
61 HELICS_EXPORT HelicsPublication
62  helicsFederateRegisterPublication(HelicsFederate fed, const char* key, HelicsDataTypes type, const char* units, HelicsError* err);
63 
80 HELICS_EXPORT HelicsPublication
81  helicsFederateRegisterTypePublication(HelicsFederate fed, const char* key, const char* type, const char* units, HelicsError* err);
82 
99 HELICS_EXPORT HelicsPublication
100  helicsFederateRegisterGlobalPublication(HelicsFederate fed, const char* key, HelicsDataTypes type, const char* units, HelicsError* err);
101 
118 HELICS_EXPORT HelicsPublication
119  helicsFederateRegisterGlobalTypePublication(HelicsFederate fed, const char* key, const char* type, const char* units, HelicsError* err);
120 
137 HELICS_EXPORT HelicsInput
138  helicsFederateRegisterInput(HelicsFederate fed, const char* key, HelicsDataTypes type, const char* units, HelicsError* err);
139 
156 HELICS_EXPORT HelicsInput
157  helicsFederateRegisterTypeInput(HelicsFederate fed, const char* key, const char* type, const char* units, HelicsError* err);
158 
175 HELICS_EXPORT HelicsPublication
176  helicsFederateRegisterGlobalInput(HelicsFederate fed, const char* key, HelicsDataTypes type, const char* units, HelicsError* err);
177 
194 HELICS_EXPORT HelicsPublication
195  helicsFederateRegisterGlobalTypeInput(HelicsFederate fed, const char* key, const char* type, const char* units, HelicsError* err);
196 
209 HELICS_EXPORT HelicsPublication helicsFederateGetPublication(HelicsFederate fed, const char* key, HelicsError* err);
210 
223 
236 HELICS_EXPORT HelicsInput helicsFederateGetInput(HelicsFederate fed, const char* key, HelicsError* err);
237 
249 HELICS_EXPORT HelicsInput helicsFederateGetInputByIndex(HelicsFederate fed, int index, HelicsError* err);
250 
263 HELICS_EXPORT HelicsInput helicsFederateGetSubscription(HelicsFederate fed, const char* key, HelicsError* err);
264 
270 HELICS_EXPORT void helicsFederateClearUpdates(HelicsFederate fed);
271 
283 HELICS_EXPORT void helicsFederateRegisterFromPublicationJSON(HelicsFederate fed, const char* json, HelicsError* err);
284 
294 HELICS_EXPORT void helicsFederatePublishJSON(HelicsFederate fed, const char* json, HelicsError* err);
295 
312 
323 HELICS_EXPORT void helicsPublicationPublishBytes(HelicsPublication pub, const void* data, int inputDataLength, HelicsError* err);
324 
334 HELICS_EXPORT void helicsPublicationPublishString(HelicsPublication pub, const char* str, HelicsError* err);
335 
345 HELICS_EXPORT void helicsPublicationPublishInteger(HelicsPublication pub, int64_t val, HelicsError* err);
346 
357 
367 HELICS_EXPORT void helicsPublicationPublishDouble(HelicsPublication pub, double val, HelicsError* err);
368 
378 HELICS_EXPORT void helicsPublicationPublishTime(HelicsPublication pub, HelicsTime val, HelicsError* err);
379 
389 HELICS_EXPORT void helicsPublicationPublishChar(HelicsPublication pub, char val, HelicsError* err);
390 
401 HELICS_EXPORT void helicsPublicationPublishComplex(HelicsPublication pub, double real, double imag, HelicsError* err);
402 
413 HELICS_EXPORT void helicsPublicationPublishVector(HelicsPublication pub, const double* vectorInput, int vectorLength, HelicsError* err);
414 
425 HELICS_EXPORT void
426  helicsPublicationPublishComplexVector(HelicsPublication pub, const double* vectorInput, int vectorLength, HelicsError* err);
427 
438 HELICS_EXPORT void helicsPublicationPublishNamedPoint(HelicsPublication pub, const char* str, double val, HelicsError* err);
439 
449 HELICS_EXPORT void helicsPublicationAddTarget(HelicsPublication pub, const char* target, HelicsError* err);
450 
458 HELICS_EXPORT HelicsBool helicsInputIsValid(HelicsInput ipt);
459 
469 HELICS_EXPORT void helicsInputAddTarget(HelicsInput ipt, const char* target, HelicsError* err);
470 
485 HELICS_EXPORT int helicsInputGetByteCount(HelicsInput ipt);
486 
497 HELICS_EXPORT void helicsInputGetBytes(HelicsInput ipt, void* data, int maxDataLength, int* actualSize, HelicsError* err);
498 
504 HELICS_EXPORT int helicsInputGetStringSize(HelicsInput ipt);
505 
516 HELICS_EXPORT void helicsInputGetString(HelicsInput ipt, char* outputString, int maxStringLength, int* actualLength, HelicsError* err);
517 
527 HELICS_EXPORT int64_t helicsInputGetInteger(HelicsInput ipt, HelicsError* err);
528 
539 
549 HELICS_EXPORT double helicsInputGetDouble(HelicsInput ipt, HelicsError* err);
550 
560 HELICS_EXPORT HelicsTime helicsInputGetTime(HelicsInput ipt, HelicsError* err);
561 
572 HELICS_EXPORT char helicsInputGetChar(HelicsInput ipt, HelicsError* err);
573 
585 
596 HELICS_EXPORT void helicsInputGetComplex(HelicsInput ipt, double* real, double* imag, HelicsError* err);
597 
603 HELICS_EXPORT int helicsInputGetVectorSize(HelicsInput ipt);
604 
615 HELICS_EXPORT void helicsInputGetVector(HelicsInput ipt, double data[], int maxLength, int* actualSize, HelicsError* err);
616 
627 HELICS_EXPORT void helicsInputGetComplexVector(HelicsInput ipt, double data[], int maxLength, int* actualSize, HelicsError* err);
628 
640 HELICS_EXPORT void
641  helicsInputGetNamedPoint(HelicsInput ipt, char* outputString, int maxStringLength, int* actualLength, double* val, HelicsError* err);
642 
660 HELICS_EXPORT void helicsInputSetDefaultBytes(HelicsInput ipt, const void* data, int inputDataLength, HelicsError* err);
661 
670 HELICS_EXPORT void helicsInputSetDefaultString(HelicsInput ipt, const char* str, HelicsError* err);
671 
680 HELICS_EXPORT void helicsInputSetDefaultInteger(HelicsInput ipt, int64_t val, HelicsError* err);
681 
690 HELICS_EXPORT void helicsInputSetDefaultBoolean(HelicsInput ipt, HelicsBool val, HelicsError* err);
691 
700 HELICS_EXPORT void helicsInputSetDefaultTime(HelicsInput ipt, HelicsTime val, HelicsError* err);
701 
710 HELICS_EXPORT void helicsInputSetDefaultChar(HelicsInput ipt, char val, HelicsError* err);
711 
720 HELICS_EXPORT void helicsInputSetDefaultDouble(HelicsInput ipt, double val, HelicsError* err);
721 
731 HELICS_EXPORT void helicsInputSetDefaultComplex(HelicsInput ipt, double real, double imag, HelicsError* err);
732 
742 HELICS_EXPORT void helicsInputSetDefaultVector(HelicsInput ipt, const double* vectorInput, int vectorLength, HelicsError* err);
743 
753 HELICS_EXPORT void helicsInputSetDefaultComplexVector(HelicsInput ipt, const double* vectorInput, int vectorLength, HelicsError* err);
754 
764 HELICS_EXPORT void helicsInputSetDefaultNamedPoint(HelicsInput ipt, const char* str, double val, HelicsError* err);
765 
780 HELICS_EXPORT const char* helicsInputGetType(HelicsInput ipt);
781 
789 HELICS_EXPORT const char* helicsInputGetPublicationType(HelicsInput ipt);
790 
798 HELICS_EXPORT int helicsInputGetPublicationDataType(HelicsInput ipt);
799 
807 HELICS_EXPORT const char* helicsPublicationGetType(HelicsPublication pub);
808 
816 HELICS_EXPORT const char* helicsInputGetName(HelicsInput ipt);
817 
823 HELICS_EXPORT const char* helicsSubscriptionGetTarget(HelicsInput ipt);
824 
834 HELICS_EXPORT const char* helicsPublicationGetName(HelicsPublication pub);
835 
843 HELICS_EXPORT const char* helicsInputGetUnits(HelicsInput ipt);
844 
852 HELICS_EXPORT const char* helicsInputGetInjectionUnits(HelicsInput ipt);
853 
863 HELICS_EXPORT const char* helicsInputGetExtractionUnits(HelicsInput ipt);
864 
872 HELICS_EXPORT const char* helicsPublicationGetUnits(HelicsPublication pub);
873 
881 HELICS_EXPORT const char* helicsInputGetInfo(HelicsInput inp);
882 
891 HELICS_EXPORT void helicsInputSetInfo(HelicsInput inp, const char* info, HelicsError* err);
892 
900 HELICS_EXPORT const char* helicsInputGetTag(HelicsInput inp, const char* tagname);
901 
911 HELICS_EXPORT void helicsInputSetTag(HelicsInput inp, const char* tagname, const char* tagvalue, HelicsError* err);
912 
920 HELICS_EXPORT const char* helicsPublicationGetInfo(HelicsPublication pub);
921 
930 HELICS_EXPORT void helicsPublicationSetInfo(HelicsPublication pub, const char* info, HelicsError* err);
931 
939 HELICS_EXPORT const char* helicsPublicationGetTag(HelicsPublication pub, const char* tagname);
940 
950 HELICS_EXPORT void helicsPublicationSetTag(HelicsPublication pub, const char* tagname, const char* tagvalue, HelicsError* err);
951 
960 HELICS_EXPORT int helicsInputGetOption(HelicsInput inp, int option);
961 
971 HELICS_EXPORT void helicsInputSetOption(HelicsInput inp, int option, int value, HelicsError* err);
972 
981 HELICS_EXPORT int helicsPublicationGetOption(HelicsPublication pub, int option);
982 
992 HELICS_EXPORT void helicsPublicationSetOption(HelicsPublication pub, int option, int val, HelicsError* err);
993 
1002 HELICS_EXPORT void helicsPublicationSetMinimumChange(HelicsPublication pub, double tolerance, HelicsError* err);
1003 
1012 HELICS_EXPORT void helicsInputSetMinimumChange(HelicsInput inp, double tolerance, HelicsError* err);
1013 
1021 HELICS_EXPORT HelicsBool helicsInputIsUpdated(HelicsInput ipt);
1022 
1027 
1031 HELICS_EXPORT void helicsInputClearUpdate(HelicsInput ipt);
1032 
1038 HELICS_EXPORT int helicsFederateGetPublicationCount(HelicsFederate fed);
1039 
1045 HELICS_EXPORT int helicsFederateGetInputCount(HelicsFederate fed);
1046 
1047 #ifdef __cplusplus
1048 } /* end of extern "C" { */
1049 #endif
1050 
1051 #endif /* HELICS_APISHARED_VALUE_FEDERATE_FUNCTIONS_H_*/
helics::ValueFederate::removeTarget
void removeTarget(const Publication &pub, const std::string &target)
Definition: ValueFederate.cpp:152
helics::ValueFederate::getLastUpdateTime
Time getLastUpdateTime(const Input &inp) const
Definition: ValueFederate.cpp:494
helics::Input
Definition: Inputs.hpp:38
helicsInputGetUnits
const char * helicsInputGetUnits(HelicsInput ipt)
Definition: ValueFederateExport.cpp:1314
helicsCore.h
Common functions for the HELICS C api.
helicsInputGetVectorSize
int helicsInputGetVectorSize(HelicsInput ipt)
Definition: ValueFederateExport.cpp:888
helicsPublicationGetName
const char * helicsPublicationGetName(HelicsPublication pub)
Definition: ValueFederateExport.cpp:1263
HelicsTime
double HelicsTime
Definition: api-data.h:90
helicsTypes.hpp
helics::ValueFederate::setFlagOption
virtual void setFlagOption(int flag, bool flagValue=true) override
Definition: ValueFederate.cpp:162
helicsInputLastUpdateTime
HelicsTime helicsInputLastUpdateTime(HelicsInput ipt)
Definition: ValueFederateExport.cpp:1554
helics::ValueFederate::clearUpdate
void clearUpdate(const Input &inp)
Definition: ValueFederate.cpp:642
helicsInputSetOption
void helicsInputSetOption(HelicsInput inp, int option, int value, HelicsError *err)
Definition: ValueFederateExport.cpp:1477
helics::ValueFederate::getPublication
Publication & getPublication(const std::string &name)
Definition: ValueFederate.cpp:576
helicsInputGetName
const char * helicsInputGetName(HelicsInput ipt)
Definition: ValueFederateExport.cpp:1227
helicsInputGetBytes
void helicsInputGetBytes(HelicsInput ipt, void *data, int maxDataLength, int *actualSize, HelicsError *err)
Definition: ValueFederateExport.cpp:702
helics::Federate::getName
const std::string & getName() const
Definition: application_api/Federate.hpp:570
helicsInputSetDefaultComplexVector
void helicsInputSetDefaultComplexVector(HelicsInput ipt, const double *vectorInput, int vectorLength, HelicsError *err)
Definition: ValueFederateExport.cpp:1128
helics::ValueFederate
Definition: application_api/ValueFederate.hpp:25
helics::loadFederateInfo
FederateInfo loadFederateInfo(const std::string &configString)
Definition: FederateInfo.cpp:675
helicsPublicationIsValid
HelicsBool helicsPublicationIsValid(HelicsPublication pub)
Definition: ValueFederateExport.cpp:655
HelicsDataTypes
HelicsDataTypes
Definition: helics_enums.h:63
helicsFederateGetPublicationCount
int helicsFederateGetPublicationCount(HelicsFederate fed)
Definition: ValueFederateExport.cpp:1586
helicsPublicationPublishComplex
void helicsPublicationPublishComplex(HelicsPublication pub, double real, double imag, HelicsError *err)
Definition: ValueFederateExport.cpp:576
helicsInputIsValid
HelicsBool helicsInputIsValid(HelicsInput ipt)
Definition: ValueFederateExport.cpp:664
helics::ValueFederate::addAlias
void addAlias(const Input &inp, const std::string &shortcutName)
Definition: ValueFederate.cpp:148
helicsInputSetDefaultInteger
void helicsInputSetDefaultInteger(HelicsInput ipt, int64_t val, HelicsError *err)
Definition: ValueFederateExport.cpp:1051
helicsPublicationAddTarget
void helicsPublicationAddTarget(HelicsPublication pub, const char *target, HelicsError *err)
Definition: ValueFederateExport.cpp:644
HelicsFederate
void * HelicsFederate
Definition: api-data.h:60
helicsInputSetDefaultComplex
void helicsInputSetDefaultComplex(HelicsInput ipt, double real, double imag, HelicsError *err)
Definition: ValueFederateExport.cpp:1098
helics::ValueFederate::ValueFederate
ValueFederate()
helics::ValueFederate::queryUpdates
std::vector< int > queryUpdates()
Definition: ValueFederate.cpp:518
helics::Federate::currentMode
std::atomic< Modes > currentMode
the current state of the simulation
Definition: application_api/Federate.hpp:77
helicsInputSetDefaultNamedPoint
void helicsInputSetDefaultNamedPoint(HelicsInput ipt, const char *str, double val, HelicsError *err)
Definition: ValueFederateExport.cpp:1152
helics::Time
TimeRepresentation< count_time< 9 > > Time
Definition: helicsTime.hpp:27
helics::Federate::registerInterfaces
virtual void registerInterfaces(const std::string &configString)
Definition: Federate.cpp:813
helics::ValueFederate::setDefaultValue
void setDefaultValue(const Input &inp, data_view block)
Definition: ValueFederate.cpp:177
helicsInputGetTime
HelicsTime helicsInputGetTime(HelicsInput ipt, HelicsError *err)
Definition: ValueFederateExport.cpp:810
HelicsInput
void * HelicsInput
Definition: api-data.h:26
helics::ValueFederate::registerPublication
Publication & registerPublication(const std::string &name, const std::string &type, const std::string &units=std::string())
Definition: ValueFederate.cpp:99
helicsFederateGetInputCount
int helicsFederateGetInputCount(HelicsFederate fed)
Definition: ValueFederateExport.cpp:1596
helics::data_view
Definition: data_view.hpp:22
helics::Federate::nameSegmentSeparator
char nameSegmentSeparator
the separator between automatically prependend names
Definition: application_api/Federate.hpp:78
helicsPublicationGetInfo
const char * helicsPublicationGetInfo(HelicsPublication pub)
Definition: ValueFederateExport.cpp:1362
helicsFederateGetPublication
HelicsPublication helicsFederateGetPublication(HelicsFederate fed, const char *key, HelicsError *err)
Definition: ValueFederateExport.cpp:328
helics::getOptionIndex
int getOptionIndex(std::string val)
Definition: FederateInfo.cpp:385
helicsFederateRegisterTypePublication
HelicsPublication helicsFederateRegisterTypePublication(HelicsFederate fed, const char *key, const char *type, const char *units, HelicsError *err)
Definition: ValueFederateExport.cpp:98
helics::ValueFederate::registerGlobalInput
Input & registerGlobalInput(const std::string &name, const std::string &type, const std::string &units=std::string())
Definition: ValueFederate.cpp:124
helics::Federate::setFlagOption
virtual void setFlagOption(int flag, bool flagValue=true)
Definition: Federate.cpp:493
helicsFederateClearUpdates
void helicsFederateClearUpdates(HelicsFederate fed)
Definition: ValueFederateExport.cpp:461
helicsFederatePublishJSON
void helicsFederatePublishJSON(HelicsFederate fed, const char *json, HelicsError *err)
Definition: ValueFederateExport.cpp:308
helics::getOptionValue
int getOptionValue(std::string val)
Definition: FederateInfo.cpp:404
helics::InvalidFunctionCall
Definition: core-exceptions.hpp:66
helics::ValueFederate::getInputCount
int getInputCount() const
Definition: ValueFederate.cpp:632
helics::InvalidParameter
Definition: core-exceptions.hpp:47
helicsFederateRegisterGlobalInput
HelicsPublication helicsFederateRegisterGlobalInput(HelicsFederate fed, const char *key, HelicsDataTypes type, const char *units, HelicsError *err)
Definition: ValueFederateExport.cpp:262
helicsPublicationPublishInteger
void helicsPublicationPublishInteger(HelicsPublication pub, int64_t val, HelicsError *err)
Definition: ValueFederateExport.cpp:505
helics::ValueFederate::registerFromPublicationJSON
void registerFromPublicationJSON(const std::string &jsonString)
Definition: ValueFederate.cpp:436
helicsInputGetChar
char helicsInputGetChar(HelicsInput ipt, HelicsError *err)
Definition: ValueFederateExport.cpp:828
helics::RegistrationFailure
Definition: core-exceptions.hpp:84
HelicsComplex
Definition: api-data.h:147
helics::CoreApp
Definition: application_api/CoreApp.hpp:25
helicsInputSetTag
void helicsInputSetTag(HelicsInput inp, const char *tagname, const char *tagvalue, HelicsError *err)
Definition: ValueFederateExport.cpp:1412
helics::fileops::isMember
bool isMember(const toml::value &element, const std::string &key)
Definition: TomlProcessingFunctions.hpp:152
helicsFederateGetInput
HelicsInput helicsFederateGetInput(HelicsFederate fed, const char *key, HelicsError *err)
Definition: ValueFederateExport.cpp:382
helicsPublicationPublishNamedPoint
void helicsPublicationPublishNamedPoint(HelicsPublication pub, const char *str, double val, HelicsError *err)
Definition: ValueFederateExport.cpp:626
helicsInputGetPublicationDataType
int helicsInputGetPublicationDataType(HelicsInput ipt)
Definition: ValueFederateExport.cpp:1204
helicsFederateRegisterGlobalPublication
HelicsPublication helicsFederateRegisterGlobalPublication(HelicsFederate fed, const char *key, HelicsDataTypes type, const char *units, HelicsError *err)
Definition: ValueFederateExport.cpp:165
helics::ValueFederate::setInputNotificationCallback
void setInputNotificationCallback(std::function< void(Input &, Time)> callback)
Definition: ValueFederate.cpp:616
helicsInputGetType
const char * helicsInputGetType(HelicsInput ipt)
Definition: ValueFederateExport.cpp:1168
helics::FederateInfo
Definition: FederateInfo.hpp:20
helicsInputAddTarget
void helicsInputAddTarget(HelicsInput ipt, const char *target, HelicsError *err)
Definition: ValueFederateExport.cpp:673
helics::ValueFederate::isUpdated
bool isUpdated(const Input &inp) const
Definition: ValueFederate.cpp:489
helicsPublicationGetType
const char * helicsPublicationGetType(HelicsPublication pub)
Definition: ValueFederateExport.cpp:1209
helicsInputGetComplexVector
void helicsInputGetComplexVector(HelicsInput ipt, double data[], int maxLength, int *actualSize, HelicsError *err)
Definition: ValueFederateExport.cpp:947
helics::Federate::operator=
Federate & operator=(Federate &&fed) noexcept
Definition: Federate.cpp:190
helics::Federate::useJsonSerialization
bool useJsonSerialization
Definition: application_api/Federate.hpp:82
helics::ValueFederate::publishBytes
void publishBytes(const Publication &pub, data_view block)
Definition: ValueFederate.cpp:404
helicsInputGetStringSize
int helicsInputGetStringSize(HelicsInput ipt)
Definition: ValueFederateExport.cpp:904
helicsInputGetDouble
double helicsInputGetDouble(HelicsInput ipt, HelicsError *err)
Definition: ValueFederateExport.cpp:795
helics::FederateInfo::useJsonSerialization
bool useJsonSerialization
Definition: FederateInfo.hpp:35
helicsPublicationPublishComplexVector
void helicsPublicationPublishComplexVector(HelicsPublication pub, const double *vectorInput, int vectorLength, HelicsError *err)
Definition: ValueFederateExport.cpp:608
helics::Federate::getID
auto getID() const noexcept
Definition: application_api/Federate.hpp:563
helics::Federate::Modes::INITIALIZING
@ INITIALIZING
helics::ValueFederate::updateTime
virtual void updateTime(Time newTime, Time oldTime) override
Definition: ValueFederate.cpp:499
helicsPublicationPublishTime
void helicsPublicationPublishTime(HelicsPublication pub, HelicsTime val, HelicsError *err)
Definition: ValueFederateExport.cpp:547
helicsFederateGetInputByIndex
HelicsInput helicsFederateGetInputByIndex(HelicsFederate fed, int index, HelicsError *err)
Definition: ValueFederateExport.cpp:408
helicsFederateRegisterPublication
HelicsPublication helicsFederateRegisterPublication(HelicsFederate fed, const char *key, HelicsDataTypes type, const char *units, HelicsError *err)
Definition: ValueFederateExport.cpp:118
helics::IterationResult
IterationResult
Definition: CoreTypes.hpp:80
helicsInputSetInfo
void helicsInputSetInfo(HelicsInput inp, const char *info, HelicsError *err)
Definition: ValueFederateExport.cpp:1346
helicsPublicationGetUnits
const char * helicsPublicationGetUnits(HelicsPublication pub)
Definition: ValueFederateExport.cpp:1319
helics::ValueFederate::publishJSON
void publishJSON(const std::string &jsonString)
Definition: ValueFederate.cpp:464
helicsInputSetDefaultDouble
void helicsInputSetDefaultDouble(HelicsInput ipt, double val, HelicsError *err)
Definition: ValueFederateExport.cpp:1069
helicsInputGetExtractionUnits
const char * helicsInputGetExtractionUnits(HelicsInput ipt)
Definition: ValueFederateExport.cpp:1297
helicsFederateGetSubscription
HelicsInput helicsFederateGetSubscription(HelicsFederate fed, const char *key, HelicsError *err)
Definition: ValueFederateExport.cpp:435
helics::ValueFederate::startupToInitializeStateTransition
virtual void startupToInitializeStateTransition() override
Definition: ValueFederate.cpp:504
helicsFederateRegisterSubscription
HelicsInput helicsFederateRegisterSubscription(HelicsFederate fed, const char *key, const char *units, HelicsError *err)
Definition: ValueFederateExport.cpp:77
helics::ValueFederate::registerInterfaces
virtual void registerInterfaces(const std::string &configString) override
Definition: ValueFederate.cpp:182
helicsPublicationGetTag
const char * helicsPublicationGetTag(HelicsPublication pub, const char *tagname)
Definition: ValueFederateExport.cpp:1428
helics::ValueFederate::getSubscription
const Input & getSubscription(const std::string &target) const
Definition: ValueFederate.cpp:566
helicsSubscriptionGetTarget
const char * helicsSubscriptionGetTarget(HelicsInput ipt)
Definition: ValueFederateExport.cpp:1245
helicsInputGetTag
const char * helicsInputGetTag(HelicsInput inp, const char *tagname)
Definition: ValueFederateExport.cpp:1395
helicsInputGetPublicationType
const char * helicsInputGetPublicationType(HelicsInput ipt)
Definition: ValueFederateExport.cpp:1186
helicsPublicationPublishString
void helicsPublicationPublishString(HelicsPublication pub, const char *str, HelicsError *err)
Definition: ValueFederateExport.cpp:491
helicsFederateRegisterInput
HelicsInput helicsFederateRegisterInput(HelicsFederate fed, const char *key, HelicsDataTypes type, const char *units, HelicsError *err)
Definition: ValueFederateExport.cpp:212
helics::ValueFederate::forceCoreUpdate
bool forceCoreUpdate(Input &inp)
Definition: ValueFederate.cpp:399
HELICS_FLAG_USE_JSON_SERIALIZATION
@ HELICS_FLAG_USE_JSON_SERIALIZATION
Definition: helics_enums.h:134
helicsInputSetMinimumChange
void helicsInputSetMinimumChange(HelicsInput inp, double tolerance, HelicsError *err)
Definition: ValueFederateExport.cpp:1534
helics::ValueFederate::registerInput
Input & registerInput(const std::string &name, const std::string &type, const std::string &units=std::string())
Definition: ValueFederate.cpp:114
helicsPublicationSetTag
void helicsPublicationSetTag(HelicsPublication pub, const char *tagname, const char *tagvalue, HelicsError *err)
Definition: ValueFederateExport.cpp:1445
helics::ValueFederate::registerSubscription
Input & registerSubscription(const std::string &target, const std::string &units=std::string())
Definition: ValueFederate.cpp:131
helics::Publication
Definition: Publications.hpp:24
helicsInputSetDefaultBytes
void helicsInputSetDefaultBytes(HelicsInput ipt, const void *data, int inputDataLength, HelicsError *err)
Definition: ValueFederateExport.cpp:1015
helicsInputClearUpdate
void helicsInputClearUpdate(HelicsInput ipt)
Definition: ValueFederateExport.cpp:1571
helicsInputGetInfo
const char * helicsInputGetInfo(HelicsInput inp)
Definition: ValueFederateExport.cpp:1329
helicsPublicationPublishChar
void helicsPublicationPublishChar(HelicsPublication pub, char val, HelicsError *err)
Definition: ValueFederateExport.cpp:562
helicsPublicationPublishDouble
void helicsPublicationPublishDouble(HelicsPublication pub, double val, HelicsError *err)
Definition: ValueFederateExport.cpp:533
helicsInputSetDefaultChar
void helicsInputSetDefaultChar(HelicsInput ipt, char val, HelicsError *err)
Definition: ValueFederateExport.cpp:1089
HelicsError
Definition: api-data.h:160
helicsFederateRegisterGlobalTypePublication
HelicsPublication helicsFederateRegisterGlobalTypePublication(HelicsFederate fed, const char *key, const char *type, const char *units, HelicsError *err)
Definition: ValueFederateExport.cpp:145
helicsInputGetByteCount
int helicsInputGetByteCount(HelicsInput ipt)
Definition: ValueFederateExport.cpp:683
helics
the main namespace for the helics co-simulation library User functions will be in the helics namespac...
Definition: AsyncFedCallInfo.hpp:14
helicsPublicationGetOption
int helicsPublicationGetOption(HelicsPublication pub, int option)
Definition: ValueFederateExport.cpp:1493
HelicsPublication
void * HelicsPublication
Definition: api-data.h:31
helics::ValueFederate::initializeToExecuteStateTransition
virtual void initializeToExecuteStateTransition(IterationResult result) override
Definition: ValueFederate.cpp:508
helicsFederateRegisterTypeInput
HelicsInput helicsFederateRegisterTypeInput(HelicsFederate fed, const char *key, const char *type, const char *units, HelicsError *err)
Definition: ValueFederateExport.cpp:193
helicsFederateRegisterGlobalTypeInput
HelicsPublication helicsFederateRegisterGlobalTypeInput(HelicsFederate fed, const char *key, const char *type, const char *units, HelicsError *err)
Definition: ValueFederateExport.cpp:242
helicsFederateRegisterFromPublicationJSON
void helicsFederateRegisterFromPublicationJSON(HelicsFederate fed, const char *json, HelicsError *err)
Definition: ValueFederateExport.cpp:291
helicsPublicationSetMinimumChange
void helicsPublicationSetMinimumChange(HelicsPublication pub, double tolerance, HelicsError *err)
Definition: ValueFederateExport.cpp:1525
helics::Federate::logWarningMessage
void logWarningMessage(const std::string &message) const
Definition: application_api/Federate.hpp:592
helicsInputGetBoolean
HelicsBool helicsInputGetBoolean(HelicsInput ipt, HelicsError *err)
Definition: ValueFederateExport.cpp:777
helics::ValueFederate::operator=
ValueFederate & operator=(ValueFederate &&fed) noexcept
Definition: ValueFederate.cpp:89
helicsInputGetComplexObject
HelicsComplex helicsInputGetComplexObject(HelicsInput ipt, HelicsError *err)
Definition: ValueFederateExport.cpp:867
helics::ValueFederate::registerValueInterfaces
void registerValueInterfaces(const std::string &configString)
Definition: ValueFederate.cpp:188
helicsPublicationSetInfo
void helicsPublicationSetInfo(HelicsPublication pub, const char *info, HelicsError *err)
Definition: ValueFederateExport.cpp:1379
helicsPublicationSetOption
void helicsPublicationSetOption(HelicsPublication pub, int option, int val, HelicsError *err)
Definition: ValueFederateExport.cpp:1509
helics::ValueFederate::addTarget
void addTarget(const Publication &pub, const std::string &target)
Definition: ValueFederate.cpp:138
helicsPublicationPublishVector
void helicsPublicationPublishVector(HelicsPublication pub, const double *vectorInput, int vectorLength, HelicsError *err)
Definition: ValueFederateExport.cpp:590
helics::ValueFederate::clearUpdates
void clearUpdates()
Definition: ValueFederate.cpp:637
helics::ValueFederate::getPublicationCount
int getPublicationCount() const
Definition: ValueFederate.cpp:627
helics::Federate
Definition: application_api/Federate.hpp:47
helicsInputGetInteger
int64_t helicsInputGetInteger(HelicsInput ipt, HelicsError *err)
Definition: ValueFederateExport.cpp:762
helicsInputSetDefaultTime
void helicsInputSetDefaultTime(HelicsInput ipt, HelicsTime val, HelicsError *err)
Definition: ValueFederateExport.cpp:1078
helicsInputGetString
void helicsInputGetString(HelicsInput ipt, char *outputString, int maxStringLength, int *actualLength, HelicsError *err)
Definition: ValueFederateExport.cpp:736
helics::ValueFederate::getTarget
const std::string & getTarget(const Input &inp) const
Definition: ValueFederate.cpp:523
helicsPublicationPublishBytes
void helicsPublicationPublishBytes(HelicsPublication pub, const void *data, int inputDataLength, HelicsError *err)
Definition: ValueFederateExport.cpp:477
helicsInputGetInjectionUnits
const char * helicsInputGetInjectionUnits(HelicsInput ipt)
Definition: ValueFederateExport.cpp:1280
helicsInputIsUpdated
HelicsBool helicsInputIsUpdated(HelicsInput ipt)
Definition: ValueFederateExport.cpp:1543
helics::ValueFederate::getInput
const Input & getInput(const std::string &name) const
Definition: ValueFederate.cpp:528
helicsInputGetNamedPoint
void helicsInputGetNamedPoint(HelicsInput ipt, char *outputString, int maxStringLength, int *actualLength, double *val, HelicsError *err)
Definition: ValueFederateExport.cpp:974
helicsInputGetComplex
void helicsInputGetComplex(HelicsInput ipt, double *real, double *imag, HelicsError *err)
Definition: ValueFederateExport.cpp:845
helics::ValueFederate::getBytes
data_view getBytes(const Input &inp)
Definition: ValueFederate.cpp:394
helicsInputGetOption
int helicsInputGetOption(HelicsInput inp, int option)
Definition: ValueFederateExport.cpp:1461
helics::ValueFederate::localQuery
virtual std::string localQuery(const std::string &queryStr) const override
Definition: ValueFederate.cpp:513
helicsInputGetVector
void helicsInputGetVector(HelicsInput ipt, double data[], int maxLength, int *actualSize, HelicsError *err)
Definition: ValueFederateExport.cpp:920
helicsFederateGetPublicationByIndex
HelicsPublication helicsFederateGetPublicationByIndex(HelicsFederate fed, int index, HelicsError *err)
Definition: ValueFederateExport.cpp:353
helics::Federate::coreObject
std::shared_ptr< Core > coreObject
reference to the core simulation API
Definition: application_api/Federate.hpp:89
helicsInputSetDefaultVector
void helicsInputSetDefaultVector(HelicsInput ipt, const double *vectorInput, int vectorLength, HelicsError *err)
Definition: ValueFederateExport.cpp:1108
helicsInputSetDefaultString
void helicsInputSetDefaultString(HelicsInput ipt, const char *str, HelicsError *err)
Definition: ValueFederateExport.cpp:1035
helics::ValueFederate::registerGlobalPublication
Publication & registerGlobalPublication(const std::string &name, const std::string &type, const std::string &units=std::string())
Definition: ValueFederate.cpp:107
HelicsBool
int HelicsBool
Definition: api-data.h:102
helicsInputSetDefaultBoolean
void helicsInputSetDefaultBoolean(HelicsInput ipt, HelicsBool val, HelicsError *err)
Definition: ValueFederateExport.cpp:1060
helics::Federate::Modes::EXECUTING
@ EXECUTING
helicsPublicationPublishBoolean
void helicsPublicationPublishBoolean(HelicsPublication pub, HelicsBool val, HelicsError *err)
Definition: ValueFederateExport.cpp:519
helics::Federate::disconnect
virtual void disconnect()
Definition: Federate.cpp:599