Public Member Functions | Private Member Functions | Private Attributes | List of all members
PxGpuCopyDescQueue Class Reference

Container class for queueing PxGpuCopyDesc instances in pinned (non-pageable) CPU memory. More...

#include <PxGpuCopyDescQueue.h>

Collaboration diagram for PxGpuCopyDescQueue:
Collaboration graph
[legend]

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

PxGpuDispatchermDispatcher
 
PxGpuCopyDescmBuffer
 
CUstream mStream
 
PxU32 mReserved
 
PxU32 mOccupancy
 
PxU32 mFlushed
 

Detailed Description

Container class for queueing PxGpuCopyDesc instances in pinned (non-pageable) CPU memory.

Constructor & Destructor Documentation

PxGpuCopyDescQueue::PxGpuCopyDescQueue ( PxGpuDispatcher d)
inline

PxGpuCopyDescQueue constructor.

PxGpuCopyDescQueue::~PxGpuCopyDescQueue ( )
inline

Member Function Documentation

void PxGpuCopyDescQueue::enqueue ( PxGpuCopyDesc desc)
inline

Enqueue the specified copy descriptor, or launch immediately if no room is available.

References PxGpuCopyDesc::bytes, PxGpuCopyDesc::isValid(), and PX_ASSERT.

void PxGpuCopyDescQueue::flushEnqueued ( )
inline

Launch all copies queued since the last flush or reset.

void PxGpuCopyDescQueue::operator= ( const PxGpuCopyDescQueue )
private
void PxGpuCopyDescQueue::reset ( CUstream  stream,
PxU32  reserveSize 
)
inline

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.

Member Data Documentation

PxGpuCopyDesc* PxGpuCopyDescQueue::mBuffer
private
PxGpuDispatcher& PxGpuCopyDescQueue::mDispatcher
private
PxU32 PxGpuCopyDescQueue::mFlushed
private
PxU32 PxGpuCopyDescQueue::mOccupancy
private
PxU32 PxGpuCopyDescQueue::mReserved
private
CUstream PxGpuCopyDescQueue::mStream
private

The documentation for this class was generated from the following file:


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