helics 3.7.0
Loading...
Searching...
No Matches
helicsCallbacks.h
Go to the documentation of this file.
1/*
2Copyright (c) 2017-2026,
3Battelle Memorial Institute; Lawrence Livermore National Security, LLC; Alliance for Energy Innovation LLC. See the top-level NOTICE for
4additional details. All rights reserved.
5SPDX-License-Identifier: BSD-3-Clause
6*/
7
13#ifndef HELICS_APISHARED_CALLBACK_FUNCTIONS_H_
14#define HELICS_APISHARED_CALLBACK_FUNCTIONS_H_
15
16#include "helicsCore.h"
17
18#ifdef __cplusplus
19extern "C" {
20#endif
21
38 void (*logger)(int loglevel, const char* identifier, const char* message, void* userData),
39 void* userdata,
40 HelicsError* err);
41
57 void (*logger)(int loglevel, const char* identifier, const char* message, void* userData),
58 void* userdata,
59 HelicsError* err);
60
76HELICS_EXPORT void
78 void (*logger)(int loglevel, const char* identifier, const char* message, void* userData),
79 void* userdata,
80 HelicsError* err);
81
96HELICS_EXPORT void helicsFilterSetCustomCallback(HelicsFilter filter,
97 HelicsMessage (*filtCall)(HelicsMessage message, void* userData),
98 void* userdata,
99 HelicsError* err);
100
118HELICS_EXPORT void helicsTranslatorSetCustomCallback(HelicsTranslator translator,
119 void (*toMessageCall)(HelicsDataBuffer value, HelicsMessage message, void* userData),
120 void (*toValueCall)(HelicsMessage message, HelicsDataBuffer value, void* userData),
121 void* userdata,
122 HelicsError* err);
123
144HELICS_EXPORT void
146 void (*queryAnswer)(const char* query, int querySize, HelicsQueryBuffer buffer, void* userdata),
147 void* userdata,
148 HelicsError* err);
149
167 HelicsFederate fed,
168 void (*requestTime)(HelicsTime currentTime, HelicsTime requestTime, HelicsBool iterating, void* userdata),
169 void* userdata,
170 HelicsError* err);
171
187 void (*timeUpdate)(HelicsTime newTime, HelicsBool iterating, void* userdata),
188 void* userdata,
189 HelicsError* err);
190
204HELICS_EXPORT void
206 void (*stateChange)(HelicsFederateState newState, HelicsFederateState oldState, void* userdata),
207 void* userdata,
208 HelicsError* err);
209
210// Definition of helicsFederateStateChangeCallback located in FederateExport since it makes use of some data only available in that
211// compilation unit
212
228HELICS_EXPORT void
230 void (*requestTimeReturn)(HelicsTime newTime, HelicsBool iterating, void* userdata),
231 void* userdata,
232 HelicsError* err);
233
250 void (*initializingEntry)(HelicsBool iterating, void* userdata),
251 void* userdata,
252 HelicsError* err);
253
267HELICS_EXPORT void
268 helicsFederateExecutingEntryCallback(HelicsFederate fed, void (*executingEntry)(void* userdata), void* userdata, HelicsError* err);
269
286 void (*cosimTermination)(void* userdata),
287 void* userdata,
288 HelicsError* err);
289
304 void (*errorHandler)(int errorCode, const char* errorString, void* userdata),
305 void* userdata,
306 HelicsError* err);
307
322 HelicsTime (*timeUpdate)(HelicsTime time, void* userdata),
323 void* userdata,
324 HelicsError* err);
325
341 HelicsFederate fed,
342 HelicsTime (*timeUpdate)(HelicsTime time, HelicsIterationResult result, HelicsIterationRequest* iteration, void* userdata),
343 void* userdata,
344 HelicsError* err);
345
346// void setInitializeCallback(std::function<IterationRequest()> initializeCallback){initializationOperation=std::move(initializeCallback); }
361 HelicsIterationRequest (*initialize)(void* userdata),
362 void* userdata,
363 HelicsError* err);
364
378HELICS_EXPORT void helicsQueryBufferFill(HelicsQueryBuffer buffer, const char* queryResult, int strSize, HelicsError* err);
379
380#ifdef __cplusplus
381} /* end of extern "C" { */
382#endif
383
384#endif
void * HelicsDataBuffer
Definition api-data.h:88
void * HelicsCore
Definition api-data.h:54
void * HelicsFilter
Definition api-data.h:43
double HelicsTime
Definition api-data.h:106
HelicsIterationResult
Definition api-data.h:139
void * HelicsTranslator
Definition api-data.h:48
void * HelicsMessage
Definition api-data.h:100
int HelicsBool
Definition api-data.h:120
HelicsFederateState
Definition api-data.h:149
HelicsIterationRequest
Definition api-data.h:128
void * HelicsFederate
Definition api-data.h:65
void * HelicsQueryBuffer
Definition api-data.h:94
void * HelicsBroker
Definition api-data.h:60
void helicsFederateSetTimeRequestReturnCallback(HelicsFederate fed, void(*requestTimeReturn)(HelicsTime newTime, HelicsBool iterating, void *userdata), void *userdata, HelicsError *err)
Definition FederateExport.cpp:1396
void helicsFilterSetCustomCallback(HelicsFilter filter, HelicsMessage(*filtCall)(HelicsMessage message, void *userData), void *userdata, HelicsError *err)
Definition MessageFiltersExport.cpp:578
void helicsFederateExecutingEntryCallback(HelicsFederate fed, void(*executingEntry)(void *userdata), void *userdata, HelicsError *err)
Definition FederateExport.cpp:1329
void helicsFederateSetTimeRequestEntryCallback(HelicsFederate fed, void(*requestTime)(HelicsTime currentTime, HelicsTime requestTime, HelicsBool iterating, void *userdata), void *userdata, HelicsError *err)
Definition FederateExport.cpp:1256
void helicsFederateInitializingEntryCallback(HelicsFederate fed, void(*initializingEntry)(HelicsBool iterating, void *userdata), void *userdata, HelicsError *err)
Definition FederateExport.cpp:1306
void helicsFederateCosimulationTerminationCallback(HelicsFederate fed, void(*cosimTermination)(void *userdata), void *userdata, HelicsError *err)
Definition FederateExport.cpp:1348
void helicsFederateSetTimeUpdateCallback(HelicsFederate fed, void(*timeUpdate)(HelicsTime newTime, HelicsBool iterating, void *userdata), void *userdata, HelicsError *err)
Definition helicsCallbacks.cpp:125
void helicsTranslatorSetCustomCallback(HelicsTranslator translator, void(*toMessageCall)(HelicsDataBuffer value, HelicsMessage message, void *userData), void(*toValueCall)(HelicsMessage message, HelicsDataBuffer value, void *userData), void *userdata, HelicsError *err)
Definition TranslatorExport.cpp:474
void helicsFederateSetLoggingCallback(HelicsFederate fed, void(*logger)(int loglevel, const char *identifier, const char *message, void *userData), void *userdata, HelicsError *err)
void helicsBrokerSetLoggingCallback(HelicsBroker broker, void(*logger)(int loglevel, const char *identifier, const char *message, void *userData), void *userdata, HelicsError *err)
void helicsCallbackFederateInitializeCallback(HelicsFederate fed, HelicsIterationRequest(*initialize)(void *userdata), void *userdata, HelicsError *err)
Definition FederateExport.cpp:1469
void helicsCallbackFederateNextTimeCallback(HelicsFederate fed, HelicsTime(*timeUpdate)(HelicsTime time, void *userdata), void *userdata, HelicsError *err)
Definition FederateExport.cpp:1420
void helicsCallbackFederateNextTimeIterativeCallback(HelicsFederate fed, HelicsTime(*timeUpdate)(HelicsTime time, HelicsIterationResult result, HelicsIterationRequest *iteration, void *userdata), void *userdata, HelicsError *err)
void helicsFederateErrorHandlerCallback(HelicsFederate fed, void(*errorHandler)(int errorCode, const char *errorString, void *userdata), void *userdata, HelicsError *err)
Definition FederateExport.cpp:1370
void helicsFederateSetStateChangeCallback(HelicsFederate fed, void(*stateChange)(HelicsFederateState newState, HelicsFederateState oldState, void *userdata), void *userdata, HelicsError *err)
Definition FederateExport.cpp:1282
void helicsFederateSetQueryCallback(HelicsFederate fed, void(*queryAnswer)(const char *query, int querySize, HelicsQueryBuffer buffer, void *userdata), void *userdata, HelicsError *err)
Definition helicsCallbacks.cpp:98
void helicsCoreSetLoggingCallback(HelicsCore core, void(*logger)(int loglevel, const char *identifier, const char *message, void *userData), void *userdata, HelicsError *err)
void helicsQueryBufferFill(HelicsQueryBuffer buffer, const char *queryResult, int strSize, HelicsError *err)
Definition helicsCallbacks.cpp:149
Common functions for the HELICS C api.
Definition api-data.h:179