1 #ifndef __khrplatform_h_ 2 #define __khrplatform_h_ 100 #if defined(_WIN32) && !defined(__SCITECH_SNAP__) 101 # define KHRONOS_APICALL __declspec(dllimport) 102 #elif defined (__SYMBIAN32__) 103 # define KHRONOS_APICALL IMPORT_C 105 # define KHRONOS_APICALL 114 #if defined(_WIN32) && !defined(_WIN32_WCE) && !defined(__SCITECH_SNAP__) 116 # define KHRONOS_APIENTRY __stdcall 118 # define KHRONOS_APIENTRY 126 #if defined (__ARMCC_2__) 127 #define KHRONOS_APIATTRIBUTES __softfp 129 #define KHRONOS_APIATTRIBUTES 135 #if (defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L) || defined(__GNUC__) || defined(__SCO__) || defined(__USLC__) 142 typedef int32_t khronos_int32_t;
143 typedef uint32_t khronos_uint32_t;
144 typedef int64_t khronos_int64_t;
145 typedef uint64_t khronos_uint64_t;
146 #define KHRONOS_SUPPORT_INT64 1 147 #define KHRONOS_SUPPORT_FLOAT 1 149 #elif defined(__VMS ) || defined(__sgi) 154 #include <inttypes.h> 155 typedef int32_t khronos_int32_t;
156 typedef uint32_t khronos_uint32_t;
157 typedef int64_t khronos_int64_t;
158 typedef uint64_t khronos_uint64_t;
159 #define KHRONOS_SUPPORT_INT64 1 160 #define KHRONOS_SUPPORT_FLOAT 1 162 #elif defined(_WIN32) && !defined(__SCITECH_SNAP__) 167 typedef __int32 khronos_int32_t;
168 typedef unsigned __int32 khronos_uint32_t;
169 typedef __int64 khronos_int64_t;
170 typedef unsigned __int64 khronos_uint64_t;
171 #define KHRONOS_SUPPORT_INT64 1 172 #define KHRONOS_SUPPORT_FLOAT 1 174 #elif defined(__sun__) || defined(__digital__) 179 typedef int khronos_int32_t;
180 typedef unsigned int khronos_uint32_t;
181 #if defined(__arch64__) || defined(_LP64) 182 typedef long int khronos_int64_t;
183 typedef unsigned long int khronos_uint64_t;
185 typedef long long int khronos_int64_t;
186 typedef unsigned long long int khronos_uint64_t;
188 #define KHRONOS_SUPPORT_INT64 1 189 #define KHRONOS_SUPPORT_FLOAT 1 196 typedef int khronos_int32_t;
197 typedef unsigned int khronos_uint32_t;
198 #define KHRONOS_SUPPORT_INT64 0 199 #define KHRONOS_SUPPORT_FLOAT 0 207 typedef int32_t khronos_int32_t;
208 typedef uint32_t khronos_uint32_t;
209 typedef int64_t khronos_int64_t;
210 typedef uint64_t khronos_uint64_t;
211 #define KHRONOS_SUPPORT_INT64 1 212 #define KHRONOS_SUPPORT_FLOAT 1 220 typedef signed char khronos_int8_t;
221 typedef unsigned char khronos_uint8_t;
222 typedef signed short int khronos_int16_t;
223 typedef unsigned short int khronos_uint16_t;
231 typedef signed long long int khronos_intptr_t;
232 typedef unsigned long long int khronos_uintptr_t;
233 typedef signed long long int khronos_ssize_t;
234 typedef unsigned long long int khronos_usize_t;
236 typedef signed long int khronos_intptr_t;
237 typedef unsigned long int khronos_uintptr_t;
238 typedef signed long int khronos_ssize_t;
239 typedef unsigned long int khronos_usize_t;
242 #if KHRONOS_SUPPORT_FLOAT 246 typedef float khronos_float_t;
249 #if KHRONOS_SUPPORT_INT64 259 typedef khronos_uint64_t khronos_utime_nanoseconds_t;
260 typedef khronos_int64_t khronos_stime_nanoseconds_t;
266 #ifndef KHRONOS_MAX_ENUM 267 #define KHRONOS_MAX_ENUM 0x7FFFFFFF 279 KHRONOS_BOOLEAN_ENUM_FORCE_SIZE = KHRONOS_MAX_ENUM
280 } khronos_boolean_enum_t;