go home Home | Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Data Structures | File List | Namespace Members | Data Fields | Globals | Related Pages
Public Types | Public Member Functions | Private Attributes
itk::OpenCLCommandQueue Class Reference

#include <itkOpenCLCommandQueue.h>

Detailed Description

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.

See also
OpenCLContext, OpenCLBuffer, OpenCLImage, OpenCLKernel

Definition at line 51 of file itkOpenCLCommandQueue.h.

Public Types

typedef OpenCLCommandQueue Self

Public Member Functions

OpenCLContextGetContext () const
cl_command_queue GetQueueId () const
bool IsNull () const
bool IsOutOfOrder () const
bool IsProfilingEnabled () const
 OpenCLCommandQueue ()
 OpenCLCommandQueue (OpenCLContext *context, cl_command_queue id)
 OpenCLCommandQueue (const OpenCLCommandQueue &other)
OpenCLCommandQueueoperator= (const OpenCLCommandQueue &other)
 ~OpenCLCommandQueue ()

Private Attributes

cl_command_queue m_Id

Member Typedef Documentation

Standard class typedefs.

Definition at line 56 of file itkOpenCLCommandQueue.h.

Constructor & Destructor Documentation

itk::OpenCLCommandQueue::OpenCLCommandQueue ( )

Constructs a null OpenCL command queue object.

Definition at line 59 of file itkOpenCLCommandQueue.h.

itk::OpenCLCommandQueue::OpenCLCommandQueue ( OpenCLContext context,
cl_command_queue  id 

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.

Member Function Documentation

OpenCLContext* itk::OpenCLCommandQueue::GetContext ( ) const

Returns the OpenCL context that created this queue object.

Definition at line 94 of file itkOpenCLCommandQueue.h.

cl_command_queue itk::OpenCLCommandQueue::GetQueueId ( ) const

Returns the native OpenCL command queue identifier for this object.

Definition at line 91 of file itkOpenCLCommandQueue.h.

bool itk::OpenCLCommandQueue::IsNull ( ) const

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.

See also
OpenCLCommandQueue& itk::OpenCLCommandQueue::operator= ( const OpenCLCommandQueue other)

Assigns other to this object.

Field Documentation

OpenCLContext* itk::OpenCLCommandQueue::m_Context

Definition at line 98 of file itkOpenCLCommandQueue.h.

cl_command_queue itk::OpenCLCommandQueue::m_Id

Definition at line 99 of file itkOpenCLCommandQueue.h.

Generated on 04-09-2015 for elastix by doxygen elastix logo