2 Copyright (C) 2012 Modelon AB
\r
4 This program is free software: you can redistribute it and/or modify
\r
5 it under the terms of the BSD style license.
7 the Free Software Foundation, version 3 of the License.
\r
9 This program is distributed in the hope that it will be useful,
\r
10 but WITHOUT ANY WARRANTY; without even the implied warranty of
\r
11 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
\r
12 FMILIB_License.txt file for more details.
\r
14 You should have received a copy of the FMILIB_License.txt file
\r
15 along with this program. If not, contact Modelon AB <http://www.modelon.com>.
\r
23 #pragma GCC visibility push(default)
\r
26 /* Standard FMI 1.0 ME and CS types */
\r
27 #include <FMI1/fmiPlatformTypes.h>
\r
28 #include <FMI1/fmiFunctions.h>
\r
30 #include <fmu_dummy/fmu1_model.h>
\r
31 #include "config_test.h"
\r
32 #define MODEL_IDENTIFIER FMU_DUMMY_CS_MODEL_IDENTIFIER
\r
34 #include "fmu1_model.c"
\r
38 /* FMI 1.0 Common Functions */
\r
39 DllExport const char* fmiGetVersion()
\r
41 return fmi_get_version();
\r
44 DllExport fmiStatus fmiSetDebugLogging(fmiComponent c, fmiBoolean loggingOn)
\r
46 return fmi_set_debug_logging(c, loggingOn);
\r
49 DllExport fmiStatus fmiGetReal(fmiComponent c, const fmiValueReference vr[], size_t nvr, fmiReal value[])
\r
51 return fmi_get_real(c, vr, nvr, value);
\r
54 DllExport fmiStatus fmiGetInteger(fmiComponent c, const fmiValueReference vr[], size_t nvr, fmiInteger value[])
\r
56 return fmi_get_integer(c, vr, nvr, value);
\r
59 DllExport fmiStatus fmiGetBoolean(fmiComponent c, const fmiValueReference vr[], size_t nvr, fmiBoolean value[])
\r
61 return fmi_get_boolean(c, vr, nvr, value);
\r
64 DllExport fmiStatus fmiGetString(fmiComponent c, const fmiValueReference vr[], size_t nvr, fmiString value[])
\r
66 return fmi_get_string(c, vr, nvr, value);
\r
69 DllExport fmiStatus fmiSetReal(fmiComponent c, const fmiValueReference vr[], size_t nvr, const fmiReal value[])
\r
71 return fmi_set_real(c, vr, nvr, value);
\r
74 DllExport fmiStatus fmiSetInteger(fmiComponent c, const fmiValueReference vr[], size_t nvr, const fmiInteger value[])
\r
76 return fmi_set_integer(c, vr, nvr, value);
\r
79 DllExport fmiStatus fmiSetBoolean(fmiComponent c, const fmiValueReference vr[], size_t nvr, const fmiBoolean value[])
\r
81 return fmi_set_boolean(c, vr, nvr, value);
\r
84 DllExport fmiStatus fmiSetString(fmiComponent c, const fmiValueReference vr[], size_t nvr, const fmiString value[])
\r
86 return fmi_set_string(c, vr, nvr, value);
\r
89 /* FMI 1.0 CS Functions */
\r
90 DllExport const char* fmiGetTypesPlatform()
\r
92 return fmi_get_types_platform();
\r
95 DllExport fmiComponent fmiInstantiateSlave(fmiString instanceName, fmiString fmuGUID, fmiString fmuLocation, fmiString mimeType, fmiReal timeout, fmiBoolean visible, fmiBoolean interactive, fmiCallbackFunctions functions, fmiBoolean loggingOn)
\r
97 return fmi_instantiate_slave(instanceName, fmuGUID, fmuLocation, mimeType, timeout, visible, interactive, functions, loggingOn);
\r
100 DllExport fmiStatus fmiInitializeSlave(fmiComponent c, fmiReal tStart, fmiBoolean StopTimeDefined, fmiReal tStop)
\r
102 return fmi_initialize_slave(c, tStart, StopTimeDefined, tStop);
\r
105 DllExport fmiStatus fmiTerminateSlave(fmiComponent c)
\r
107 return fmi_terminate_slave(c);
\r
110 DllExport fmiStatus fmiResetSlave(fmiComponent c)
\r
112 return fmi_reset_slave(c);
\r
115 DllExport void fmiFreeSlaveInstance(fmiComponent c)
\r
117 fmi_free_slave_instance(c);
\r
120 DllExport fmiStatus fmiSetRealInputDerivatives(fmiComponent c, const fmiValueReference vr[], size_t nvr, const fmiInteger order[], const fmiReal value[])
\r
122 return fmi_set_real_input_derivatives(c, vr, nvr, order, value);
\r
125 DllExport fmiStatus fmiGetRealOutputDerivatives(fmiComponent c, const fmiValueReference vr[], size_t nvr, const fmiInteger order[], fmiReal value[])
\r
127 return fmi_get_real_output_derivatives(c, vr, nvr, order, value);
\r
130 DllExport fmiStatus fmiCancelStep(fmiComponent c)
\r
132 return fmi_cancel_step(c);
\r
135 DllExport fmiStatus fmiDoStep(fmiComponent c, fmiReal currentCommunicationPoint, fmiReal communicationStepSize, fmiBoolean newStep)
\r
137 return fmi_do_step(c, currentCommunicationPoint, communicationStepSize, newStep);
\r
140 DllExport fmiStatus fmiGetStatus(fmiComponent c, const fmiStatusKind s, fmiStatus* value)
\r
142 return fmi_get_status(c, s, value);
\r
145 DllExport fmiStatus fmiGetRealStatus(fmiComponent c, const fmiStatusKind s, fmiReal* value)
\r
147 return fmi_get_real_status(c, s, value);
\r
150 DllExport fmiStatus fmiGetIntegerStatus(fmiComponent c, const fmiStatusKind s, fmiInteger* value)
\r
152 return fmi_get_integer_status(c, s, value);
\r
155 DllExport fmiStatus fmiGetBooleanStatus(fmiComponent c, const fmiStatusKind s, fmiBoolean* value)
\r
157 return fmi_get_boolean_status(c, s, value);
\r
160 DllExport fmiStatus fmiGetStringStatus(fmiComponent c, const fmiStatusKind s, fmiString* value)
\r
162 return fmi_get_string_status(c, s, value);
\r