source: GTP/trunk/App/Games/Jungle_Rumble/src/physic/physxloader/include/PhysXLoader.h @ 1378

Revision 1378, 3.0 KB checked in by giegl, 18 years ago (diff)

GTPD - Jungle Rumble - integrate into GTP SVN structure

Line 
1#ifndef PHYSX_LOADER_H
2#define PHYSX_LOADER_H
3/*----------------------------------------------------------------------------*\
4|
5|                                                               NovodeX Technology
6|
7|                                                            www.novodex.com
8|
9\*----------------------------------------------------------------------------*/
10
11#include "NxPhysicsSDK.h"
12#include "NxUtilLib.h"
13
14#ifdef _USRDLL
15        #define NXPHYSXLOADERDLL_API extern "C" __declspec(dllexport)
16#elif defined NX_USE_SDK_STATICLIBS
17        #define NXPHYSXLOADERDLL_API
18#else
19        #define NXPHYSXLOADERDLL_API extern "C" __declspec(dllimport)
20#endif
21
22
23/** \addtogroup PhysXLoader
24  @{
25*/
26
27/**
28\brief Creates an instance of the physics SDK.
29
30Creates an instance of this class. May not be a class member to avoid name mangling.
31Pass the constant NX_PHYSICS_SDK_VERSION as the argument.
32Because the class is a singleton class, multiple calls return the same object.
33
34\param sdkVersion Version number we are expecting(should be NX_PHYSICS_SDK_VERSION)
35\param allocator User supplied interface for allocating memory(see #NxUserAllocator)
36\param outputStream User supplied interface for reporting errors and displaying messages(see #NxUserOutputStream)
37\param desc Optional descriptor used to define hardware allocation parameters
38*/
39NXPHYSXLOADERDLL_API NxPhysicsSDK    *NxCreatePhysicsSDK(NxU32 sdkVersion, NxUserAllocator* allocator = NULL, NxUserOutputStream* outputStream = NULL, const NxPhysicsSDKDesc &desc = NxPhysicsSDKDesc());
40
41/**
42\brief Release an instance of the PhysX SDK.
43*/
44NXPHYSXLOADERDLL_API void             NxReleasePhysicsSDK(NxPhysicsSDK *sdk);
45
46/**
47\brief Retrieves the Physics SDK allocator.
48
49Used by NxAllocateable's inlines and other macros below.
50
51Before using this function the user must call #NxCreatePhysicsSDK(). If #NxCreatePhysicsSDK()
52has not been called then NULL will be returned.
53*/
54NXPHYSXLOADERDLL_API NxUserAllocator *NxGetPhysicsSDKAllocator();
55
56/**
57\brief Retrieves the Foundation SDK after it has been created.
58
59Before using this function the user must call #NxCreatePhysicsSDK(). If #NxCreatePhysicsSDK()
60has not been called then NULL will be returned..
61*/
62NXPHYSXLOADERDLL_API NxFoundationSDK* NxGetFoundationSDK();
63
64/**
65\brief Retrieves the Physics SDK after it has been created.
66
67Before using this function the user must call #NxCreatePhysicsSDK(). If #NxCreatePhysicsSDK()
68has not been called then NULL will be returned.
69*/
70NXPHYSXLOADERDLL_API NxPhysicsSDK*    NxGetPhysicsSDK();
71
72/**
73\brief Retrieves the Physics SDK Utility Library
74
75Before using this function the user must call #NxCreatePhysicsSDK(). If #NxCreatePhysicsSDK()
76has not been called then NULL will be returned.
77*/
78
79NXPHYSXLOADERDLL_API NxUtilLib *NxGetUtilLib();
80
81/** @} */
82
83#endif
84
85
86//AGCOPYRIGHTBEGIN
87///////////////////////////////////////////////////////////////////////////
88// Copyright © 2005 AGEIA Technologies.
89// All rights reserved. www.ageia.com
90///////////////////////////////////////////////////////////////////////////
91//AGCOPYRIGHTEND
92
Note: See TracBrowser for help on using the repository browser.