PxVehicleTireFriction.h
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2008-2015, NVIDIA CORPORATION. All rights reserved.
3  *
4  * NVIDIA CORPORATION and its licensors retain all intellectual property
5  * and proprietary rights in and to this software, related documentation
6  * and any modifications thereto. Any use, reproduction, disclosure or
7  * distribution of this software and related documentation without an express
8  * license agreement from NVIDIA CORPORATION is strictly prohibited.
9  */
10 // Copyright (c) 2004-2008 AGEIA Technologies, Inc. All rights reserved.
11 // Copyright (c) 2001-2004 NovodeX AG. All rights reserved.
12 
13 #ifndef PX_VEHICLE_TIREFRICTION_H
14 #define PX_VEHICLE_TIREFRICTION_H
15 
20 
21 #ifndef PX_DOXYGEN
22 namespace physx
23 {
24 #endif
25 
26 class PxMaterial;
27 
33 {
34  enum
35  {
36  eSURFACE_TYPE_UNKNOWN=0xffffffff
37  };
39 };
40 
46 {
47 public:
48 
49  friend class VehicleSurfaceTypeHashTable;
50 
51  enum
52  {
53  eMAX_NB_SURFACE_TYPES=256
54  };
55 
68  (const PxU32 maxNbTireTypes, const PxU32 maxNbSurfaceTypes);
69 
84  void setup
85  (const PxU32 nbTireTypes, const PxU32 nbSurfaceTypes,
86  const PxMaterial** drivableSurfaceMaterials, const PxVehicleDrivableSurfaceType* drivableSurfaceTypes);
87 
91  void release();
92 
100  void setTypePairFriction(const PxU32 surfaceType, const PxU32 tireType, const PxReal value);
101 
109  PxReal getTypePairFriction(const PxU32 surfaceType, const PxU32 tireType) const;
110 
116  PxU32 getMaxNbSurfaceTypes() const {return mMaxNbSurfaceTypes;}
117 
123  PxU32 getMaxNbTireTypes() const {return mMaxNbTireTypes;}
124 
125 private:
126 
134 
146 
158 
167 
174 
181 
188 
189 
190 #if !defined(PX_P64)
191  PxU32 mPad[1];
192 #else
193  PxU32 mPad[2];
194 #endif
195 
198 };
200 
201 #ifndef PX_DOXYGEN
202 } // namespace physx
203 #endif
204 
206 #endif //PX_VEHICLE_TIREFRICTION_H


Copyright © 2008-2015 NVIDIA Corporation, 2701 San Tomas Expressway, Santa Clara, CA 95050 U.S.A. All rights reserved. www.nvidia.com