From 3dfe2108cfab31ba3ee5527e217d0d8e99a51162 Mon Sep 17 00:00:00 2001 From: git perforce import user Date: Tue, 25 Oct 2016 12:29:14 -0600 Subject: Initial commit: PhysX 3.4.0 Update @ 21294896 APEX 1.4.0 Update @ 21275617 [CL 21300167] --- .../PhysXAPI/files/PxVehicleDrive4W_8h-source.html | 202 +++++++++++++++++++++ 1 file changed, 202 insertions(+) create mode 100644 PhysX_3.4/Documentation/PhysXAPI/files/PxVehicleDrive4W_8h-source.html (limited to 'PhysX_3.4/Documentation/PhysXAPI/files/PxVehicleDrive4W_8h-source.html') diff --git a/PhysX_3.4/Documentation/PhysXAPI/files/PxVehicleDrive4W_8h-source.html b/PhysX_3.4/Documentation/PhysXAPI/files/PxVehicleDrive4W_8h-source.html new file mode 100644 index 00000000..e2377eac --- /dev/null +++ b/PhysX_3.4/Documentation/PhysXAPI/files/PxVehicleDrive4W_8h-source.html @@ -0,0 +1,202 @@ + + + NVIDIA(R) PhysX(R) SDK 3.4 API Reference: PxVehicleDrive4W.h Source File + + + + + + + +

PxVehicleDrive4W.h

Go to the documentation of this file.
00001 // This code contains NVIDIA Confidential Information and is disclosed to you
+00002 // under a form of NVIDIA software license agreement provided separately to you.
+00003 //
+00004 // Notice
+00005 // NVIDIA Corporation and its licensors retain all intellectual property and
+00006 // proprietary rights in and to this software and related documentation and
+00007 // any modifications thereto. Any use, reproduction, disclosure, or
+00008 // distribution of this software and related documentation without an express
+00009 // license agreement from NVIDIA Corporation is strictly prohibited.
+00010 //
+00011 // ALL NVIDIA DESIGN SPECIFICATIONS, CODE ARE PROVIDED "AS IS.". NVIDIA MAKES
+00012 // NO WARRANTIES, EXPRESSED, IMPLIED, STATUTORY, OR OTHERWISE WITH RESPECT TO
+00013 // THE MATERIALS, AND EXPRESSLY DISCLAIMS ALL IMPLIED WARRANTIES OF NONINFRINGEMENT,
+00014 // MERCHANTABILITY, AND FITNESS FOR A PARTICULAR PURPOSE.
+00015 //
+00016 // Information and code furnished is believed to be accurate and reliable.
+00017 // However, NVIDIA Corporation assumes no responsibility for the consequences of use of such
+00018 // information or for any infringement of patents or other rights of third parties that may
+00019 // result from its use. No license is granted by implication or otherwise under any patent
+00020 // or patent rights of NVIDIA Corporation. Details are subject to change without notice.
+00021 // This code supersedes and replaces all information previously supplied.
+00022 // NVIDIA Corporation products are not authorized for use as critical
+00023 // components in life support devices or systems without express written approval of
+00024 // NVIDIA Corporation.
+00025 //
+00026 // Copyright (c) 2008-2016 NVIDIA Corporation. All rights reserved.
+00027 // Copyright (c) 2004-2008 AGEIA Technologies, Inc. All rights reserved.
+00028 // Copyright (c) 2001-2004 NovodeX AG. All rights reserved.  
+00029 
+00030 #ifndef PX_VEHICLE_4WDRIVE_H
+00031 #define PX_VEHICLE_4WDRIVE_H
+00032 
+00036 #include "vehicle/PxVehicleDrive.h"
+00037 #include "vehicle/PxVehicleWheels.h"
+00038 #include "vehicle/PxVehicleComponents.h"
+00039 
+00040 
+00041 #if !PX_DOXYGEN
+00042 namespace physx
+00043 {
+00044 #endif
+00045 
+00046 struct PxFilterData;
+00047 class PxGeometry;
+00048 class PxPhysics;
+00049 class PxBatchQuery;
+00050 class PxVehicleDrivableSurfaceToTireFrictionPairs;
+00051 class PxShape;
+00052 class PxMaterial;
+00053 class PxRigidDynamic;
+00054 
+00060 class PxVehicleDriveSimData4W : public PxVehicleDriveSimData
+00061 {
+00062 //= ATTENTION! =====================================================================================
+00063 // Changing the data layout of this class breaks the binary serialization format.  See comments for 
+00064 // PX_BINARY_SERIAL_VERSION.  If a modification is required, please adjust the getBinaryMetaData 
+00065 // function.  If the modification is made on a custom branch, please change PX_BINARY_SERIAL_VERSION
+00066 // accordingly.
+00067 //==================================================================================================
+00068 public:
+00069 
+00070     friend class PxVehicleDrive4W;
+00071 
+00072     PxVehicleDriveSimData4W() 
+00073         : PxVehicleDriveSimData()
+00074     {
+00075     }
+00076 
+00081     PX_FORCE_INLINE const PxVehicleDifferential4WData& getDiffData() const 
+00082     {
+00083         return mDiff;
+00084     }
+00085 
+00090     PX_FORCE_INLINE const PxVehicleAckermannGeometryData& getAckermannGeometryData() const 
+00091     {
+00092         return mAckermannGeometry;
+00093     }
+00094 
+00099     void setDiffData(const PxVehicleDifferential4WData& diff);
+00100 
+00105     void setAckermannGeometryData(const PxVehicleAckermannGeometryData& ackermannData);
+00106 
+00107 private:
+00108 
+00113     PxVehicleDifferential4WData     mDiff;
+00114 
+00119     PxVehicleAckermannGeometryData  mAckermannGeometry;
+00120 
+00126     bool isValid() const;
+00127 
+00128 //serialization
+00129 public:
+00130     PxVehicleDriveSimData4W(const PxEMPTY) : PxVehicleDriveSimData(PxEmpty), mDiff(PxEmpty), mAckermannGeometry(PxEmpty)  {}
+00131     static void getBinaryMetaData(PxOutputStream& stream);
+00132 //~serialization
+00133 };
+00134 PX_COMPILE_TIME_ASSERT(0==(sizeof(PxVehicleDriveSimData4W) & 15));
+00135 
+00136 
+00137 
+00144 struct PxVehicleDrive4WWheelOrder
+00145 {
+00146     enum Enum
+00147     {
+00148         eFRONT_LEFT=0,
+00149         eFRONT_RIGHT,
+00150         eREAR_LEFT,
+00151         eREAR_RIGHT
+00152     };
+00153 };
+00154 
+00161 struct PxVehicleDrive4WControl
+00162 {
+00163     enum Enum
+00164     {
+00165         eANALOG_INPUT_ACCEL=0,
+00166         eANALOG_INPUT_BRAKE,        
+00167         eANALOG_INPUT_HANDBRAKE,    
+00168         eANALOG_INPUT_STEER_LEFT,   
+00169         eANALOG_INPUT_STEER_RIGHT,  
+00170         eMAX_NB_DRIVE4W_ANALOG_INPUTS
+00171     };
+00172 };
+00173 
+00177 class PxVehicleDrive4W : public PxVehicleDrive
+00178 {
+00179 //= ATTENTION! =====================================================================================
+00180 // Changing the data layout of this class breaks the binary serialization format.  See comments for 
+00181 // PX_BINARY_SERIAL_VERSION.  If a modification is required, please adjust the getBinaryMetaData 
+00182 // function.  If the modification is made on a custom branch, please change PX_BINARY_SERIAL_VERSION
+00183 // accordingly.
+00184 //==================================================================================================
+00185 public:
+00186     friend class PxVehicleUpdate;
+00187         
+00197     static PxVehicleDrive4W* allocate(const PxU32 nbWheels);
+00198 
+00203     void free();
+00204 
+00216     void setup
+00217         (PxPhysics* physics, PxRigidDynamic* vehActor,
+00218          const PxVehicleWheelsSimData& wheelsData, const PxVehicleDriveSimData4W& driveData,
+00219          const PxU32 nbNonDrivenWheels);
+00220 
+00233     static PxVehicleDrive4W* create
+00234         (PxPhysics* physics, PxRigidDynamic* vehActor,
+00235          const PxVehicleWheelsSimData& wheelsData, const PxVehicleDriveSimData4W& driveData,
+00236          const PxU32 nbNonDrivenWheels);
+00237 
+00245     void setToRestState();
+00246 
+00251     PxVehicleDriveSimData4W mDriveSimData;
+00252 
+00253 private:
+00254 
+00258     bool isValid() const;   
+00259 
+00260 //serialization
+00261 protected:
+00262                                     PxVehicleDrive4W();
+00263                                     ~PxVehicleDrive4W(){}
+00264     virtual     bool                isKindOf(const char* name)  const   { return !::strcmp("PxVehicleDrive4W", name) || PxBase::isKindOf(name); }
+00265 public:
+00266     static      PxVehicleDrive4W*   createObject(PxU8*& address, PxDeserializationContext& context);
+00267     static      void                getBinaryMetaData(PxOutputStream& stream);
+00268                                     PxVehicleDrive4W(PxBaseFlags baseFlags) : PxVehicleDrive(baseFlags), mDriveSimData(PxEmpty) {}
+00269     virtual     const char*         getConcreteTypeName() const         { return "PxVehicleDrive4W";    }
+00270 //~serialization    
+00271 };
+00272 PX_COMPILE_TIME_ASSERT(0==(sizeof(PxVehicleDrive4W) & 15));
+00273 
+00274 #if !PX_DOXYGEN
+00275 } // namespace physx
+00276 #endif
+00277 
+00279 #endif //PX_VEHICLE_4WDRIVE_H
+
+ +

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