]> gerrit.simantics Code Review - simantics/fmil.git/blob - org.simantics.fmil/native/FMUSimulator/include/FMIL/Util/FMI1/fmi1_types.h
Mavenized FMIL projects.
[simantics/fmil.git] / org.simantics.fmil / native / FMUSimulator / include / FMIL / Util / FMI1 / fmi1_types.h
1 /*
2     Copyright (C) 2012 Modelon AB
3
4     This program is free software: you can redistribute it and/or modify
5     it under the terms of the BSD style license.
6
7      This program is distributed in the hope that it will be useful,
8     but WITHOUT ANY WARRANTY; without even the implied warranty of
9     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
10     FMILIB_License.txt file for more details.
11
12     You should have received a copy of the FMILIB_License.txt file
13     along with this program. If not, contact Modelon AB <http://www.modelon.com>.
14 */\r
15 \r
16 #ifndef FMI1_TYPES_H_\r
17 #define FMI1_TYPES_H_\r
18 /** \file fmi1_types.h\r
19         Transformation of the standard FMI type names into fmi1_ prefixed.\r
20 */\r
21 /**\r
22         \addtogroup jm_utils\r
23         @{\r
24                 \addtogroup fmi1_utils\r
25         @}\r
26 */\r
27 \r
28 /**     \addtogroup fmi1_utils Functions and types supporting FMI 1.0 processing.\r
29         @{\r
30 */\r
31 /** \name Renaming of typedefs \r
32 @{*/\r
33 #define fmiComponent fmi1_component_t\r
34 #define fmiValueReference fmi1_value_reference_t\r
35 #define fmiReal fmi1_real_t\r
36 #define fmiInteger fmi1_integer_t\r
37 #define fmiBoolean fmi1_boolean_t\r
38 #define fmiString fmi1_string_t\r
39 /** @}*/\r
40 /* Standard FMI 1.0 ME and CS types */\r
41 #ifdef fmiPlatformTypes_h\r
42 #undef fmiPlatformTypes_h\r
43 #endif\r
44 #include <FMI1/fmiPlatformTypes.h>\r
45 #undef fmiPlatformTypes_h\r
46 \r
47 /** FMI platform name constant string.*/\r
48 static const char * fmi1_get_platform(void) {\r
49         return fmiPlatform;\r
50 }\r
51 \r
52 #undef fmiPlatform\r
53 \r
54 /** FMI boolean constants.*/\r
55 typedef enum {\r
56         fmi1_true=fmiTrue,\r
57         fmi1_false=fmiFalse\r
58 } fmi1_boolean_enu_t;\r
59 \r
60 #undef fmiTrue\r
61 #undef fmiFalse\r
62 \r
63 /** Undefined value for fmiValueReference (largest unsigned int value) */\r
64 typedef enum fmi1_value_reference_enu_t {\r
65         fmi1_undefined_value_reference = (int)fmiUndefinedValueReference\r
66 } fmi1_value_reference_enu_t;\r
67 \r
68 /**     \r
69         @}\r
70 */\r
71 \r
72 #undef fmiComponent\r
73 #undef fmiValueReference\r
74 #undef fmiReal\r
75 #undef fmiInteger\r
76 #undef fmiBoolean\r
77 #undef fmiString\r
78 #undef fmiUndefinedValueReference\r
79 \r
80 #endif /* End of header file FMI1_TYPES_H_ */