Home | Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Data Structures | File List | Namespace Members | Data Fields | Globals | Related Pages |
#include <itkOpenCLCommandQueue.h>
The OpenCLCommandQueue class represents an OpenCL a command-queue on a specific device and valid OpenCLContext.
OpenCL objects such as OpenCLBuffer, OpenCLProgram and OpenCLKernel objects are created using a OpenCLContext. Operations on these objects are performed using a command-queue. The command-queue can be used to queue a set of operations (referred to as commands) in order. Having multiple command-queues allows applications to queue multiple independent commands without requiring synchronization. Note that this should work as long as these objects are not being shared. Sharing of objects across multiple command-queues will require the application to perform appropriate synchronization. Commands are added to the command-queue by calling methods on OpenCLContext, OpenCLBuffer, OpenCLImage, OpenCLKernel. These methods use OpenCLContext::GetCommandQueue() as the command destination. OpenCLContext::SetCommandQueue() can be used to alter the destination queue.
Definition at line 51 of file itkOpenCLCommandQueue.h.
Public Types | |
typedef OpenCLCommandQueue | Self |
Public Member Functions | |
OpenCLContext * | GetContext () const |
cl_command_queue | GetQueueId () const |
bool | IsNull () const |
bool | IsOutOfOrder () const |
bool | IsProfilingEnabled () const |
OpenCLCommandQueue () | |
OpenCLCommandQueue (const OpenCLCommandQueue &other) | |
OpenCLCommandQueue (OpenCLContext *context, cl_command_queue id) | |
OpenCLCommandQueue & | operator= (const OpenCLCommandQueue &other) |
~OpenCLCommandQueue () | |
Private Attributes | |
OpenCLContext * | m_Context |
cl_command_queue | m_Id |
Standard class typedefs.
Definition at line 56 of file itkOpenCLCommandQueue.h.
|
inline |
Constructs a null OpenCL command queue object.
Definition at line 59 of file itkOpenCLCommandQueue.h.
|
inline |
Constructs an OpenCL command queue object based on the supplied native OpenCL id, and associates it with context. This class will take over ownership of id and release it in the destructor.
Definition at line 64 of file itkOpenCLCommandQueue.h.
itk::OpenCLCommandQueue::OpenCLCommandQueue | ( | const OpenCLCommandQueue & | other | ) |
Constructs a copy of other.
itk::OpenCLCommandQueue::~OpenCLCommandQueue | ( | ) |
Releases this OpenCL command queue. If this object is the last reference, the queue will be destroyed.
|
inline |
Returns the OpenCL context that created this queue object.
Definition at line 94 of file itkOpenCLCommandQueue.h.
|
inline |
Returns the native OpenCL command queue identifier for this object.
Definition at line 91 of file itkOpenCLCommandQueue.h.
|
inline |
Returns true if this OpenCL command queue is null.
Definition at line 78 of file itkOpenCLCommandQueue.h.
bool itk::OpenCLCommandQueue::IsOutOfOrder | ( | ) | const |
Returns true if this command queue executes commands out of order, otherwise false if commands are executed in order.
bool itk::OpenCLCommandQueue::IsProfilingEnabled | ( | ) | const |
Returns true if this command queue will perform profiling on commands; false otherwise. Profiling information is made available when a OpenCLEvent finishes execution.
OpenCLCommandQueue & itk::OpenCLCommandQueue::operator= | ( | const OpenCLCommandQueue & | other | ) |
Assigns other to this object.
|
private |
Definition at line 98 of file itkOpenCLCommandQueue.h.
|
private |
Definition at line 99 of file itkOpenCLCommandQueue.h.
Generated on 1667476801 for elastix by 1.9.4 |