PhysX SDK 3.2 API Reference: pxtask::Task Class Reference

PhysX SDK 3.2 API

pxtask::Task Class Reference

A BaseTask implementation with deferred execution and full dependencies. More...

#include <PxTask.h>

Inheritance diagram for pxtask::Task:
Collaboration diagram for pxtask::Task:

List of all members.


Public Member Functions

 Task ()
virtual ~Task ()
virtual void release ()
 Release method implementation.
PX_INLINE void finishBefore (TaskID taskID)
 Inform the TaskManager this task must finish before the given.
PX_INLINE void startAfter (TaskID taskID)
 Inform the TaskManager this task cannot start until the given.
PX_INLINE void addReference ()
 Manually increment this task's reference count. The task will not be allowed to run until removeReference() is called.
PX_INLINE void removeReference ()
 Manually decrement this task's reference count. If the reference count reaches zero, the task will be dispatched.
PX_INLINE PxI32 getReference () const
 Return the ref-count for this task.
PX_INLINE TaskID getTaskID () const
 Return the unique ID for this task.
virtual void submitted ()
 Called by TaskManager at submission time for initialization.
PX_INLINE void requestSyncPoint ()
 Specify that the GpuTask sync flag be set.

Protected Attributes

TaskID mTaskID
 ID assigned at submission.
PxU32 mStreamIndex
 GpuTask CUDA stream index.
bool mPreSyncRequired
 GpuTask sync flag.

Friends

class TaskMgr
class GpuWorkerThread

Detailed Description

A BaseTask implementation with deferred execution and full dependencies.

A Task must be submitted to a TaskManager to to be executed, Tasks may optionally be named when they are submitted.


Constructor & Destructor Documentation

pxtask::Task::Task (  )  [inline]

virtual pxtask::Task::~Task (  )  [inline, virtual]


Member Function Documentation

PX_INLINE void pxtask::Task::addReference (  )  [inline, virtual]

Manually increment this task's reference count. The task will not be allowed to run until removeReference() is called.

Implements pxtask::BaseTask.

References PX_ASSERT.

PX_INLINE void pxtask::Task::finishBefore ( TaskID  taskID  )  [inline]

Inform the TaskManager this task must finish before the given.

References PX_ASSERT.

PX_INLINE PxI32 pxtask::Task::getReference (  )  const [inline, virtual]

Return the ref-count for this task.

Implements pxtask::BaseTask.

PX_INLINE TaskID pxtask::Task::getTaskID (  )  const [inline]

Return the unique ID for this task.

virtual void pxtask::Task::release (  )  [inline, virtual]

Release method implementation.

Implements pxtask::BaseTask.

Reimplemented in pxtask::GpuTask.

References NULL, PX_ASSERT, and pxtask::TaskManager::taskCompleted().

PX_INLINE void pxtask::Task::removeReference (  )  [inline, virtual]

Manually decrement this task's reference count. If the reference count reaches zero, the task will be dispatched.

Implements pxtask::BaseTask.

References PX_ASSERT.

PX_INLINE void pxtask::Task::requestSyncPoint (  )  [inline]

Specify that the GpuTask sync flag be set.

PX_INLINE void pxtask::Task::startAfter ( TaskID  taskID  )  [inline]

Inform the TaskManager this task cannot start until the given.

References PX_ASSERT.

virtual void pxtask::Task::submitted (  )  [inline, virtual]

Called by TaskManager at submission time for initialization.

Perform simulation step initialization here.


Friends And Related Function Documentation

friend class GpuWorkerThread [friend]

friend class TaskMgr [friend]

Reimplemented from pxtask::BaseTask.


Member Data Documentation

GpuTask sync flag.

GpuTask CUDA stream index.

ID assigned at submission.


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



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