--- /dev/null
+#ifndef fmi2TypesPlatform_h\r
+#define fmi2TypesPlatform_h\r
+\r
+/* Standard header file to define the argument types of the\r
+ functions of the Functional Mock-up Interface 2.0.\r
+ This header file must be utilized both by the model and\r
+ by the simulation engine.\r
+\r
+ Revisions:\r
+ - Apr. 9, 2014: all prefixes "fmi" renamed to "fmi2" (decision from April 8)\r
+ - Mar 31, 2014: New datatype fmiChar introduced.\r
+ - Feb. 17, 2013: Changed fmiTypesPlatform from "standard32" to "default".\r
+ Removed fmiUndefinedValueReference since no longer needed\r
+ (because every state is defined in ScalarVariables).\r
+ - March 20, 2012: Renamed from fmiPlatformTypes.h to fmiTypesPlatform.h\r
+ - Nov. 14, 2011: Use the header file "fmiPlatformTypes.h" for FMI 2.0\r
+ both for "FMI for model exchange" and for "FMI for co-simulation"\r
+ New types "fmiComponentEnvironment", "fmiState", and "fmiByte".\r
+ The implementation of "fmiBoolean" is change from "char" to "int".\r
+ The #define "fmiPlatform" changed to "fmiTypesPlatform"\r
+ (in order that #define and function call are consistent)\r
+ - Oct. 4, 2010: Renamed header file from "fmiModelTypes.h" to fmiPlatformTypes.h"\r
+ for the co-simulation interface\r
+ - Jan. 4, 2010: Renamed meModelTypes_h to fmiModelTypes_h (by Mauss, QTronic)\r
+ - Dec. 21, 2009: Changed "me" to "fmi" and "meModel" to "fmiComponent"\r
+ according to meeting on Dec. 18 (by Martin Otter, DLR)\r
+ - Dec. 6, 2009: Added meUndefinedValueReference (by Martin Otter, DLR)\r
+ - Sept. 9, 2009: Changes according to FMI-meeting on July 21:\r
+ Changed "version" to "platform", "standard" to "standard32",\r
+ Added a precise definition of "standard32" as comment\r
+ (by Martin Otter, DLR)\r
+ - July 19, 2009: Added "me" as prefix to file names, added meTrue/meFalse,\r
+ and changed meValueReferenced from int to unsigned int\r
+ (by Martin Otter, DLR).\r
+ - March 2, 2009: Moved enums and function pointer definitions to\r
+ ModelFunctions.h (by Martin Otter, DLR).\r
+ - Dec. 3, 2008 : First version by Martin Otter (DLR) and\r
+ Hans Olsson (Dynasim).\r
+\r
+\r
+ Copyright © 2008-2011 MODELISAR consortium,\r
+ 2012-2013 Modelica Association Project "FMI"\r
+ All rights reserved.\r
+ This file is licensed by the copyright holders under the BSD 2-Clause License\r
+ (http://www.opensource.org/licenses/bsd-license.html):\r
+\r
+ ----------------------------------------------------------------------------\r
+ Redistribution and use in source and binary forms, with or without\r
+ modification, are permitted provided that the following conditions are met:\r
+\r
+ - Redistributions of source code must retain the above copyright notice,\r
+ this list of conditions and the following disclaimer.\r
+ - Redistributions in binary form must reproduce the above copyright notice,\r
+ this list of conditions and the following disclaimer in the documentation\r
+ and/or other materials provided with the distribution.\r
+ - Neither the name of the copyright holders nor the names of its\r
+ contributors may be used to endorse or promote products derived\r
+ from this software without specific prior written permission.\r
+\r
+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS\r
+ "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED\r
+ TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR\r
+ PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR\r
+ CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,\r
+ EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,\r
+ PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;\r
+ OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,\r
+ WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR\r
+ OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF\r
+ ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\r
+ ----------------------------------------------------------------------------\r
+\r
+ with the extension:\r
+\r
+ You may distribute or publicly perform any modification only under the\r
+ terms of this license.\r
+ (Note, this means that if you distribute a modified file,\r
+ the modified file must also be provided under this license).\r
+*/\r
+\r
+/* Platform (unique identification of this header file) */\r
+#define fmi2TypesPlatform "default"\r
+\r
+/* Type definitions of variables passed as arguments\r
+ Version "default" means:\r
+\r
+ fmi2Component : an opaque object pointer\r
+ fmi2ComponentEnvironment: an opaque object pointer\r
+ fmi2FMUstate : an opaque object pointer\r
+ fmi2ValueReference : handle to the value of a variable\r
+ fmi2Real : double precision floating-point data type\r
+ fmi2Integer : basic signed integer data type\r
+ fmi2Boolean : basic signed integer data type\r
+ fmi2Char : character data type\r
+ fmi2String : a pointer to a vector of fmi2Char characters\r
+ ('\0' terminated, UTF8 encoded)\r
+ fmi2Byte : smallest addressable unit of the machine, typically one byte.\r
+*/\r
+ typedef void* fmi2Component; /* Pointer to FMU instance */\r
+ typedef void* fmi2ComponentEnvironment; /* Pointer to FMU environment */\r
+ typedef void* fmi2FMUstate; /* Pointer to internal FMU state */\r
+ typedef unsigned int fmi2ValueReference;\r
+ typedef double fmi2Real ;\r
+ typedef int fmi2Integer;\r
+ typedef int fmi2Boolean;\r
+ typedef char fmi2Char;\r
+ typedef const fmi2Char* fmi2String;\r
+ typedef char fmi2Byte;\r
+\r
+/* Values for fmi2Boolean */\r
+#define fmi2True 1\r
+#define fmi2False 0\r
+\r
+\r
+#endif /* fmi2TypesPlatform_h */\r