1 /* 2 * Copyright 2006 Sony Computer Entertainment Inc. 3 * 4 * Licensed under the MIT Open Source License, for details please see license.txt or the website 5 * http://www.opensource.org/licenses/mit-license.php 6 * 7 */ 8 9 #ifndef __DAE_TYPES_H__ 10 #define __DAE_TYPES_H__ 11 12 #include <dae/daePlatform.h> 13 #include <sys/types.h> 14 #include <stdio.h> 15 #include <stdlib.h> 16 #include <assert.h> 17 #include <wchar.h> 18 #include <string.h> 19 20 #include <dae/daeError.h> 21 22 #define daeOffsetOf(class, member) \ 23 ((size_t)&(((class *) 0x0100)->member) - (size_t)0x0100) 24 25 typedef PLATFORM_INT8 daeChar; 26 typedef PLATFORM_INT16 daeShort; 27 typedef PLATFORM_INT32 daeInt; 28 typedef PLATFORM_INT64 daeLong; 29 typedef PLATFORM_UINT8 daeUChar; 30 typedef PLATFORM_UINT16 daeUShort; 31 typedef PLATFORM_UINT32 daeUInt; 32 typedef PLATFORM_UINT64 daeULong; 33 #ifdef COLLADA_DOM_DAEFLOAT_IS64 34 typedef PLATFORM_FLOAT64 daeFloat; 35 #else 36 typedef PLATFORM_FLOAT32 daeFloat; 37 #endif 38 typedef PLATFORM_FLOAT64 daeDouble; 39 40 // base types 41 42 typedef const char* daeString; 43 typedef bool daeBool; 44 typedef const void* daeConstRawRef; 45 typedef void* daeRawRef; 46 typedef daeInt daeEnum; 47 typedef daeChar* daeMemoryRef; 48 49 typedef daeChar daeFixedName[512]; 50 51 #include <dae/daeArray.h> 52 #include <dae/daeArrayTypes.h> 53 54 #if defined(COLLADA_DOM_SUPPORT150) 55 namespace ColladaDOM150 {} 56 #endif 57 #if defined(COLLADA_DOM_SUPPORT141) 58 namespace ColladaDOM141 {} 59 #endif 60 61 #if defined(COLLADA_DOM_USING_150) 62 using namespace ColladaDOM150; 63 #elif defined(COLLADA_DOM_USING_141) 64 using namespace ColladaDOM141; 65 #elif !defined(COLLADA_DOM_NAMESPACE) 66 67 // find the highest version namespace 68 #if defined(COLLADA_DOM_SUPPORT150) 69 using namespace ColladaDOM150; 70 #elif defined(COLLADA_DOM_SUPPORT141) 71 using namespace ColladaDOM141; 72 #endif 73 74 #endif 75 76 #endif //__DAE_TYPES_H__ 77