]> gerrit.simantics Code Review - simantics/fmil.git/blob - org.simantics.fmil/native/FMUSimulator/include/fmi1_cs.h
(refs #6290) Import initial FMI Studio codebase
[simantics/fmil.git] / org.simantics.fmil / native / FMUSimulator / include / fmi1_cs.h
1 #ifndef __FMI1_CS_H__\r
2 #define __FMI1_CS_H__\r
3 \r
4 #ifdef __cplusplus\r
5 extern "C" {\r
6 #endif\r
7 \r
8 typedef struct {\r
9         char *name;\r
10         char *description;\r
11         long vr;\r
12         // 0 = real\r
13         // 1 = integer\r
14         // 2 = boolean\r
15         // 3 = string\r
16         // 4 = enumeration\r
17         int type;\r
18         // 0 = constant\r
19         // 1 = parameter\r
20         // 2 = discrete\r
21         // 3 = continuous\r
22         // 4 = unknown\r
23         int variability;\r
24         // 0 = input\r
25         // 1 = output\r
26         // 2 = internal\r
27         // 3 = none\r
28         // 4 = unknown\r
29         int causality;\r
30 } FMIL_Variable;\r
31 \r
32 __declspec(dllexport) void* FMI1_CS_LOAD(const char *zipFilePath, const char *unzipFolder);\r
33 __declspec(dllexport) int FMI1_CS_UNLOAD(void* fmu);\r
34 __declspec(dllexport) FMIL_Variable *FMI1_CS_GET_VARIABLES(void* fmu, int *count);\r
35 __declspec(dllexport) int FMI1_CS_INSTANTIATE(void* fmu);\r
36 __declspec(dllexport) int FMI1_CS_INITIALIZE(void* fmu);\r
37 __declspec(dllexport) int FMI1_CS_STEP(void* fmu, double masterTime, double stepSize);\r
38 __declspec(dllexport) double FMI1_CS_SET_REAL(void* fmu, int vr, double value);\r
39 __declspec(dllexport) int FMI1_CS_GET_REALS(void* fmu, int *vrs, double *values, int count);\r
40 __declspec(dllexport) double FMI1_CS_GET_REAL(void* fmu, int vr);\r
41 \r
42 #ifdef __cplusplus\r
43 }\r
44 #endif\r
45 \r
46 #endif