PlatformDefinitions.h

Go to the documentation of this file.
00001 #ifndef BT_TYPE_DEFINITIONS_H
00002 #define BT_TYPE_DEFINITIONS_H
00003 
00005 #include "LinearMath/btScalar.h"
00006 #include "LinearMath/btMinMax.h"
00007 
00008 #ifdef PFX_USE_FREE_VECTORMATH
00009 #include "physics_effects/base_level/base/pfx_vectormath_include.win32.h"
00010 typedef Vectormath::Aos::Vector3    vmVector3;
00011 typedef Vectormath::Aos::Quat       vmQuat;
00012 typedef Vectormath::Aos::Matrix3    vmMatrix3;
00013 typedef Vectormath::Aos::Transform3 vmTransform3;
00014 typedef Vectormath::Aos::Point3     vmPoint3;
00015 #else
00016 #include "vectormath/vmInclude.h"
00017 #endif//PFX_USE_FREE_VECTORMATH
00018 
00019 
00020 
00021 
00022 
00023 #ifdef _WIN32
00024 
00025 typedef union
00026 {
00027   unsigned int u;
00028   void *p;
00029 } addr64;
00030 
00031 #define USE_WIN32_THREADING 1
00032 
00033                 #if defined(__MINGW32__) || defined(__CYGWIN__) || (defined (_MSC_VER) && _MSC_VER < 1300)
00034                 #else
00035                 #endif //__MINGW32__
00036 
00037                 typedef unsigned char     uint8_t;
00038 #ifndef __PHYSICS_COMMON_H__
00039 #ifndef PFX_USE_FREE_VECTORMATH
00040 #ifndef __BT_SKIP_UINT64_H
00041                 typedef unsigned long int uint64_t;
00042 #endif //__BT_SKIP_UINT64_H
00043 #endif //PFX_USE_FREE_VECTORMATH
00044                 typedef unsigned int      uint32_t;
00045 #endif //__PHYSICS_COMMON_H__
00046                 typedef unsigned short    uint16_t;
00047 
00048                 #include <malloc.h>
00049                 #define memalign(alignment, size) malloc(size);
00050                         
00051 #include <string.h> //memcpy
00052 
00053                 
00054 
00055                 #include <stdio.h>              
00056                 #define spu_printf printf
00057                 
00058 #else
00059                 #include <stdint.h>
00060                 #include <stdlib.h>
00061                 #include <string.h> //for memcpy
00062 
00063 #if defined     (__CELLOS_LV2__)
00064         // Playstation 3 Cell SDK
00065 #include <spu_printf.h>
00066                 
00067 #else
00068         // posix system
00069 
00070 #define USE_PTHREADS    (1)
00071 
00072 #ifdef USE_LIBSPE2
00073 #include <stdio.h>              
00074 #define spu_printf printf       
00075 #define DWORD unsigned int
00076                         typedef union
00077                         {
00078                           unsigned long long ull;
00079                           unsigned int ui[2];
00080                           void *p;
00081                         } addr64;
00082 #endif // USE_LIBSPE2
00083 
00084 #endif  //__CELLOS_LV2__
00085         
00086 #endif
00087 
00088 #ifdef __SPU__
00089 #include <stdio.h>              
00090 #define printf spu_printf
00091 #endif
00092 
00093 /* Included here because we need uint*_t typedefs */
00094 #include "PpuAddressSpace.h"
00095 
00096 #endif //BT_TYPE_DEFINITIONS_H
00097 
00098 
00099