Bullet Collision Detection & Physics Library
PlatformDefinitions.h
Go to the documentation of this file.
1 #ifndef BT_TYPE_DEFINITIONS_H
2 #define BT_TYPE_DEFINITIONS_H
3 
5 #include "LinearMath/btScalar.h"
6 #include "LinearMath/btMinMax.h"
7 
8 #ifdef PFX_USE_FREE_VECTORMATH
9 #include "physics_effects/base_level/base/pfx_vectormath_include.win32.h"
15 #else
16 #include "vectormath/vmInclude.h"
17 #endif//PFX_USE_FREE_VECTORMATH
18 
19 
20 
21 
22 
23 #ifdef _WIN32
24 
25 typedef union
26 {
27  unsigned int u;
28  void *p;
29 } addr64;
30 
31 #define USE_WIN32_THREADING 1
32 
33  #if defined(__MINGW32__) || defined(__CYGWIN__) || (defined (_MSC_VER) && _MSC_VER < 1300)
34  #else
35  #endif //__MINGW32__
36 
37  typedef unsigned char uint8_t;
38 #ifndef __PHYSICS_COMMON_H__
39 #ifndef PFX_USE_FREE_VECTORMATH
40 #ifndef __BT_SKIP_UINT64_H
41 #if defined(_WIN64) && defined(_MSC_VER)
42  typedef unsigned __int64 uint64_t;
43 #else
44  typedef unsigned long int uint64_t;
45 #endif
46 #endif //__BT_SKIP_UINT64_H
47 #endif //PFX_USE_FREE_VECTORMATH
48  typedef unsigned int uint32_t;
49 #endif //__PHYSICS_COMMON_H__
50  typedef unsigned short uint16_t;
51 
52  #include <malloc.h>
53  #define memalign(alignment, size) malloc(size);
54 
55 #include <string.h> //memcpy
56 
57 
58 
59  #include <stdio.h>
60  #define spu_printf printf
61 
62 #else
63  #include <stdint.h>
64  #include <stdlib.h>
65  #include <string.h> //for memcpy
66 
67 #if defined (__CELLOS_LV2__)
68  // Playstation 3 Cell SDK
69 #include <spu_printf.h>
70 
71 #else
72  // posix system
73 
74 #define USE_PTHREADS (1)
75 
76 #ifdef USE_LIBSPE2
77 #include <stdio.h>
78 #define spu_printf printf
79 #define DWORD unsigned int
80  typedef union
81  {
82  unsigned long long ull;
83  unsigned int ui[2];
84  void *p;
85  } addr64;
86 #endif // USE_LIBSPE2
87 
88 #endif //__CELLOS_LV2__
89 
90 #endif
91 
92 #ifdef __SPU__
93 #include <stdio.h>
94 #define printf spu_printf
95 #endif
96 
97 /* Included here because we need uint*_t typedefs */
98 #include "PpuAddressSpace.h"
99 
100 #endif //BT_TYPE_DEFINITIONS_H
101 
102 
103 
unsigned int u
Vectormath::Aos::Point3 vmPoint3
Definition: vmInclude.h:27
unsigned long int uint64_t
Vectormath::Aos::Quat vmQuat
Definition: vmInclude.h:24
unsigned short uint16_t
Vectormath::Aos::Matrix3 vmMatrix3
Definition: vmInclude.h:25
unsigned char uint8_t
unsigned int uint32_t
Vectormath::Aos::Transform3 vmTransform3
Definition: vmInclude.h:26
This file provides some platform/compiler checks for common definitions.
Vectormath::Aos::Vector3 vmVector3
Definition: vmInclude.h:23