Name Description Size Coverage
PxAlignedMalloc.h ! Allocate aligned memory. Alignment must be a power of 2! -- should be templated by a base allocator 1908 -
PxAlloca.h ! Stack allocation for \c count instances of \c type. Falling back to temp allocator if using more than 4kB. 1746 -
PxAllocator.h \brief Allocator used to access the global PxAllocatorCallback instance without providing additional information. 4896 -
PxAllocatorCallback.h \brief Abstract base class for an application defined memory allocator that can be used by the Nv library. \note The SDK state should not be modified from within any allocation/free function. <b>Threading:</b> All methods of this class should be thread safe as it can be called from the user thread or the physics processing thread(s). 1925 -
PxAoS.h 492 -
PxArray.h ! \brief An array is a sequential container. Implementation note: - entries between 0 and size are valid objects - we use inheritance to build this because the array is included inline in a lot of objects and we want the allocator to take no space if it's not stateful, which aggregation doesn't allow. Also, we want the metadata at the front for the inline case where the allocator contains some inline storage space \tparam T Element type \tparam Alloc Allocator type (defaults to PxAllocatorTraits<T>::Type) 20272 -
PxAssert.h \brief Built-in assert function 2267 -
PxAtomic.h set *dest equal to val. Return the old value of *dest 2307 -
PxBasicTemplates.h 2364 -
PxBitAndData.h 1368 -
PxBitMap.h ! Holds a bitmap with operations to set, reset or test individual bits. We inhibit copy to prevent unintentional copies. If a copy is desired copy() should be used or alternatively a copy constructor implemented. 17893 -
PxBitUtils.h ! Return the index of the lowest set bit. Not valid for zero arg. 2979 -
PxBounds3.h \brief Class representing 3D range or axis aligned bounding box. Stored as minimum and maximum extent corners. Alternate representation would be center and dimensions. May be empty or nonempty. For nonempty bounds, minimum <= maximum has to hold for all axes. Empty bounds have to be represented as minimum = PX_MAX_BOUNDS_EXTENTS and maximum = -PX_MAX_BOUNDS_EXTENTS for all axes. All other representations are invalid and the behavior is undefined. 14139 -
PxBroadcast.h \brief Abstract listener class that listens to allocation and deallocation events from the foundation memory system. <b>Threading:</b> All methods of this class should be thread safe as it can be called from the user thread or the physics processing thread(s). 6438 -
PxConstructor.h enum for zero constructor tag for vectors and matrices 650 -
PxErrorCallback.h \brief User defined interface class. Used by the library to emit debug information. \note The SDK state should not be modified from within any error reporting functions. <b>Threading:</b> The SDK sequences its calls to the output stream using a mutex, so the class need not be implemented in a thread-safe manner if the SDK is the only client. 1192 -
PxErrors.h \brief Error codes These error codes are passed to #PxErrorCallback \see PxErrorCallback 3289 -
PxFlags.h \brief Container for bitfield flag variables associated with a specific enum type. This allows for type safe manipulation for bitfields. <h3>Example</h3> // enum that defines each bit... struct MyEnum { enum Enum { eMAN = 1, eBEAR = 2, ePIG = 4, }; }; // implements some convenient global operators. PX_FLAGS_OPERATORS(MyEnum::Enum, PxU8); PxFlags<MyEnum::Enum, PxU8> myFlags; myFlags |= MyEnum::eMAN; myFlags |= MyEnum::eBEAR | MyEnum::ePIG; if(myFlags & MyEnum::eBEAR) { doSomething(); } 11815 -
PxFoundation.h \brief Foundation SDK singleton class. You need to have an instance of this class to instance the higher level SDKs. 6283 -
PxFoundationConfig.h 778 -
PxFPU.h \brief Enables floating point exceptions for the scalar and SIMD unit 2098 -
PxHash.h ! Central definition of hash functions 2963 -
PxHashInternals.h 18012 -
PxHashMap.h 3301 -
PxHashSet.h 3369 -
PxInlineAllocator.h 1946 -
PxInlineAoS.h 628 -
PxInlineArray.h 1281 -
PxIntrinsics.h 609 -
PxIO.h enum for empty constructor tag 2442 -
PxMat33.h ! \brief 3x3 matrix class Some clarifications, as there have been much confusion about matrix formats etc in the past. Short: - Matrix have base vectors in columns (vectors are column matrices, 3x1 matrices). - Matrix is physically stored in column major format - Matrices are concaternated from left Long: Given three base vectors a, b and c the matrix is stored as |a.x b.x c.x| |a.y b.y c.y| |a.z b.z c.z| Vectors are treated as columns, so the vector v is |x| |y| |z| And matrices are applied _before_ the vector (pre-multiplication) v' = M*v |x'| |a.x b.x c.x| |x| |a.x*x + b.x*y + c.x*z| |y'| = |a.y b.y c.y| * |y| = |a.y*x + b.y*y + c.y*z| |z'| |a.z b.z c.z| |z| |a.z*x + b.z*y + c.z*z| Physical storage and indexing: To be compatible with popular 3d rendering APIs (read D3d and OpenGL) the physical indexing is |0 3 6| |1 4 7| |2 5 8| index = column*3 + row which in C++ translates to M[column][row] The mathematical indexing is M_row,column and this is what is used for _-notation so _12 is 1st row, second column and operator(row, column)! 12489 -
PxMat34.h ! Basic mathematical 3x4 matrix, implemented as a 3x3 rotation matrix and a translation See PxMat33 for the format of the rotation matrix. 6463 -
PxMat44.h ! \brief 4x4 matrix class This class is layout-compatible with D3D and OpenGL matrices. More notes on layout are given in the PxMat33 \see PxMat33 PxTransform 10274 -
PxMath.h \brief The return value is the greater of the two specified values. 7841 -
PxMathIntrinsics.h Platform specific defines 833 -
PxMathUtils.h \brief finds the shortest rotation between two vectors. \param[in] from the vector to start from \param[in] target the vector to rotate to \return a rotation about an axis normal to the two vectors which takes one to the other via the shortest path 26229 -
PxMemory.h \brief Sets the bytes of the provided buffer to zero. \param dest [out] Pointer to block of memory to set zero. \param count [in] Number of bytes to set to zero. \return Pointer to memory block (same as input) 2987 -
PxMutex.h This <new> inclusion is a best known fix for gcc 4.4.1 error: Creating object file for apex/src/PsAllocator.cpp ... In file included from apex/include/PsFoundation.h:30, from apex/src/PsAllocator.cpp:26: apex/include/PsMutex.h: In constructor 'physx::PxMutexT<Alloc>::MutexT(const Alloc&)': apex/include/PsMutex.h:92: error: no matching function for call to 'operator new(unsigned int, physx::PxMutexImpl*&)' <built-in>:0: note: candidates are: void* operator new(unsigned int) 3454 -
PxPhysicsVersion.h VersionNumbers: The combination of these numbers uniquely identifies the API, and should be incremented when the SDK API changes. This may include changes to file formats. This header is included in the main SDK header files so that the entire SDK and everything that builds on it is completely rebuilt when this file changes. Thus, this file is not to include a frequently changing build number. See BuildNumber.h for that. Each of these three values should stay below 255 because sometimes they are stored in a byte. 1310 -
PxPlane.h \brief Representation of a plane. Plane equation used: n.dot(v) + d = 0 2877 -
PxPool.h ! Simple allocation pool 6078 -
PxPreprocessor.h The following preprocessor identifiers specify compiler, OS, and architecture. All definitions have a value of 1 or 0, use '#if' instead of '#ifdef'. 12406 -
PxProfiler.h \brief The pure virtual callback interface for general purpose instrumentation and profiling of GameWorks modules as well as applications 4137 -
PxQuat.h \brief This is a quaternion class. For more information on quaternion mathematics consult a mathematics source on complex numbers. 10237 -
PxSIMDHelpers.h 3272 -
PxSimpleTypes.h 2546 -
PxSList.h 2203 -
PxSocket.h Socket abstraction API 3669 -
PxSort.h \brief Sorts an array of objects in ascending order, assuming that the predicate implements the < operator: \see PxLess, PxGreater 2474 -
PxSortInternals.h This creates sentinels because we know there is an element at the start minimum(or equal) than the pivot and an element at the end greater(or equal) than the pivot. Plus the median of 3 reduces the chance of degenerate behavour. 3793 -
PxStrideIterator.h \brief Iterator class for iterating over arrays of data that may be interleaved with other data. This class is used for iterating over arrays of elements that may have a larger element to element offset, called the stride, than the size of the element itself (non-contiguous). The template parameter T denotes the type of the element accessed. The stride itself is stored as a member field so multiple instances of a PxStrideIterator class can have different strides. This is useful for cases were the stride depends on runtime configuration. The stride iterator can be used for index based access, e.g.: \code PxStrideIterator<PxVec3> strideArray(...); for (unsigned i = 0; i < 10; ++i) { PxVec3& vec = strideArray[i]; ... } \endcode or iteration by increment, e.g.: \code PxStrideIterator<PxVec3> strideBegin(...); PxStrideIterator<PxVec3> strideEnd(strideBegin + 10); for (PxStrideIterator<PxVec3> it = strideBegin; it < strideEnd; ++it) { PxVec3& vec = *it; ... } \endcode Two special cases: - A stride of sizeof(T) represents a regular c array of type T. - A stride of 0 can be used to describe re-occurrence of the same element multiple times. 7041 -
PxString.h \brief Prints the string literally (does not consume % specifier), trying to make sure it's visible to the app programmer 2215 -
PxSync.h ! Implementation notes: - Calling set() on an already signaled Sync does not change its state. - Calling reset() on an already reset Sync does not change its state. - Calling set() on a reset Sync wakes all waiting threads (potential for thread contention). - Calling wait() on an already signaled Sync will return true immediately. - NOTE: be careful when pulsing an event with set() followed by reset(), because a thread that is not waiting on the event will miss the signal. 2992 -
PxTempAllocator.h 686 -
PxThread.h Construct (but do not start) the thread object. The OS thread object will not be created until start() is called. Executes in the context of the spawning thread. 8282 -
PxTime.h 1666 -
PxTransform.h ! \brief class representing a rigid euclidean transform as a quaternion and a vector 5901 -
PxUnionCast.h 798 -
PxUserAllocated.h Provides new and delete using a UserAllocator. Guarantees that 'delete x;' uses the UserAllocator too. 2364 -
PxUtilities.h ! Get number of elements in array 2603 -
PxVec2.h \brief 2 Element vector class. This is a 2-dimensional vector class with public data members. 6121 -
PxVec3.h \brief 3 Element vector class. This is a 3-dimensional vector class with public data members. 8641 -
PxVec4.h \brief 4 Element vector class. This is a 4-dimensional vector class with public data members. 6887 -
PxVecMath.h 49342 -
PxVecMathAoSScalar.h 3666 -
PxVecMathAoSScalarInline.h 56995 -
PxVecMathSSE.h 74448 -
PxVecQuat.h const FloatV sina = FSin(hangle); const FloatV cosa = FCos(hangle); 13619 -
PxVecTransform.h \brief returns true if finite and q is a unit quaternion 6211 -
unix -
windows -