pxtask::GpuTask Class Reference
Task implementation for launching CUDA work. More...
#include <PxGpuTask.h>


Public Member Functions | |
GpuTask () | |
virtual bool | launchInstance (CUstream stream, int kernelIndex)=0 |
iterative "run" function for a GpuTask | |
virtual GpuTaskHint::Enum | getTaskHint () const =0 |
Returns a hint indicating the function of this task. | |
void | setCompletionTask (BaseTask &task) |
Specify a task that will have its reference count decremented when this task is released. | |
void | release () |
Release method implementation. | |
Protected Attributes | |
pxtask::BaseTask * | mComp |
A pointer to the completion task. |
Detailed Description
Task implementation for launching CUDA work.Constructor & Destructor Documentation
pxtask::GpuTask::GpuTask | ( | ) | [inline] |
Member Function Documentation
virtual GpuTaskHint::Enum pxtask::GpuTask::getTaskHint | ( | ) | const [pure virtual] |
Returns a hint indicating the function of this task.
virtual bool pxtask::GpuTask::launchInstance | ( | CUstream | stream, | |
int | kernelIndex | |||
) | [pure virtual] |
iterative "run" function for a GpuTask
The GpuDispatcher acquires the CUDA context for the duration of this function call, and it is highly recommended that the GpuTask use the provided CUstream for all kernels.
kernelIndex will be 0 for the initial call and incremented before each subsequent call. Once launchInstance() returns false, its GpuTask is considered completed and is released.
void pxtask::GpuTask::release | ( | ) | [inline, virtual] |
Release method implementation.
Reimplemented from pxtask::Task.
References NULL, and pxtask::BaseTask::removeReference().
void pxtask::GpuTask::setCompletionTask | ( | BaseTask & | task | ) | [inline] |
Specify a task that will have its reference count decremented when this task is released.
Member Data Documentation
pxtask::BaseTask* pxtask::GpuTask::mComp [protected] |
A pointer to the completion task.
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