pxtask::Task Class Reference
A BaseTask implementation with deferred execution and full dependencies. More...
#include <PxTask.h>


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] |
PX_INLINE PxI32 pxtask::Task::getReference | ( | ) | const [inline, virtual] |
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] |
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
bool pxtask::Task::mPreSyncRequired [protected] |
GpuTask sync flag.
PxU32 pxtask::Task::mStreamIndex [protected] |
GpuTask CUDA stream index.
TaskID pxtask::Task::mTaskID [protected] |
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