00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031 #ifndef PX_PHYSICS_COMMON_NX
00032 #define PX_PHYSICS_COMMON_NX
00033
00037 #include "foundation/Px.h"
00038
00039
00040
00041
00042 #if (PX_VC == 15) && PX_WINDOWS && (_MSC_FULL_VER < 191225830)
00043 #error Visual studio 2017 prior to 15.5.1 is not supported because of a compiler bug.
00044 #endif
00045
00046
00047 #if defined PX_PHYSX_STATIC_LIB || defined PX_PHYSX_CORE_STATIC_LIB
00048 #define PX_PHYSX_CORE_API
00049 #else
00050 #if PX_WINDOWS
00051 #if defined PX_PHYSX_CORE_EXPORTS
00052 #define PX_PHYSX_CORE_API __declspec(dllexport)
00053 #else
00054 #define PX_PHYSX_CORE_API __declspec(dllimport)
00055 #endif
00056 #elif PX_UNIX_FAMILY
00057 #define PX_PHYSX_CORE_API PX_UNIX_EXPORT
00058 #else
00059 #define PX_PHYSX_CORE_API
00060 #endif
00061 #endif
00062
00063 #if PX_SUPPORT_GPU_PHYSX
00064
00065 #if defined PX_PHYSX_GPU_STATIC
00066 #define PX_PHYSX_GPU_API
00067 #else
00068 #if PX_WINDOWS
00069 #if defined PX_PHYSX_GPU_EXPORTS
00070 #define PX_PHYSX_GPU_API __declspec(dllexport)
00071 #else
00072 #define PX_PHYSX_GPU_API __declspec(dllimport)
00073 #endif
00074 #elif PX_UNIX_FAMILY
00075 #define PX_PHYSX_GPU_API PX_UNIX_EXPORT
00076 #else
00077 #define PX_PHYSX_GPU_API
00078 #endif
00079 #endif
00080
00081 #else // PX_SUPPORT_GPU_PHYSX
00082 #define PX_PHYSX_GPU_API
00083 #endif // PX_SUPPORT_GPU_PHYSX
00084
00085 #if defined PX_PHYSX_STATIC_LIB || defined PX_PHYSX_CORE_STATIC_LIB
00086 #define PX_PHYSX_COMMON_API
00087 #else
00088 #if PX_WINDOWS && !defined(__CUDACC__)
00089 #if defined PX_PHYSX_COMMON_EXPORTS
00090 #define PX_PHYSX_COMMON_API __declspec(dllexport)
00091 #else
00092 #define PX_PHYSX_COMMON_API __declspec(dllimport)
00093 #endif
00094 #elif PX_UNIX_FAMILY
00095 #define PX_PHYSX_COMMON_API PX_UNIX_EXPORT
00096 #else
00097 #define PX_PHYSX_COMMON_API
00098 #endif
00099 #endif
00100
00101
00102
00103 #if !PX_DOXYGEN
00104 namespace physx
00105 {
00106 #endif
00107 class PxCollection;
00108 class PxBase;
00109
00110 class PxHeightField;
00111 class PxHeightFieldDesc;
00112
00113 class PxTriangleMesh;
00114 class PxConvexMesh;
00115
00116 typedef PxU32 PxTriangleID;
00117 typedef PxU16 PxMaterialTableIndex;
00118
00119 #if !PX_DOXYGEN
00120 }
00121 #endif
00122
00124 #endif