Container class for queueing PxGpuCopyDesc instances in pinned (non-pageable) CPU memory. More...
#include <PxGpuCopyDescQueue.h>
Public Member Functions | |
PxGpuCopyDescQueue (PxGpuDispatcher &d) | |
PxGpuCopyDescQueue constructor. More... | |
~PxGpuCopyDescQueue () | |
PxGpuCopyDescQueue destructor. More... | |
void | reset (CUstream stream, PxU32 reserveSize) |
Reset the enqueued copy descriptor list. More... | |
void | enqueue (PxGpuCopyDesc &desc) |
Enqueue the specified copy descriptor, or launch immediately if no room is available. More... | |
void | flushEnqueued () |
Launch all copies queued since the last flush or reset. More... | |
Private Member Functions | |
void | operator= (const PxGpuCopyDescQueue &) |
Private Attributes | |
PxGpuDispatcher & | mDispatcher |
PxGpuCopyDesc * | mBuffer |
CUstream | mStream |
PxU32 | mReserved |
PxU32 | mOccupancy |
PxU32 | mFlushed |
Container class for queueing PxGpuCopyDesc instances in pinned (non-pageable) CPU memory.
|
inline |
PxGpuCopyDescQueue constructor.
|
inline |
PxGpuCopyDescQueue destructor.
References PxCudaBufferMemorySpace::T_PINNED_HOST.
|
inline |
Enqueue the specified copy descriptor, or launch immediately if no room is available.
References PxGpuCopyDesc::bytes, PxGpuCopyDesc::isValid(), and PX_ASSERT.
|
inline |
Launch all copies queued since the last flush or reset.
|
private |
Reset the enqueued copy descriptor list.
Must be called at least once before any copies are enqueued, and each time the launched copies are known to have been completed. The recommended use case is to call this at the start of each simulation step.
References NV_ALLOC_INFO, and PxCudaBufferMemorySpace::T_PINNED_HOST.
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |