OpenCL C++ Bindings

Loading...
Searching...
No Matches
cl::CommandQueue Class Reference

CommandQueue interface for cl_command_queue. More...

`#include <opencl.hpp>`

Inheritance diagram for cl::CommandQueue:

## Public Member Functions
| CommandQueue (cl_command_queue_properties properties, cl_int *err=nullptr)
| Constructs a CommandQueue based on passed properties. Will return an CL_INVALID_QUEUE_PROPERTIES error if CL_QUEUE_ON_DEVICE is specified.
| CommandQueue (QueueProperties properties, cl_int *err=nullptr)
| Constructs a CommandQueue based on passed properties. Will return an CL_INVALID_QUEUE_PROPERTIES error if CL_QUEUE_ON_DEVICE is specified.
| CommandQueue (const Context &context, cl_command_queue_properties properties=0, cl_int *err=nullptr)
| Constructs a CommandQueue for an implementation defined device in the given context Will return an CL_INVALID_QUEUE_PROPERTIES error if CL_QUEUE_ON_DEVICE is specified.
| CommandQueue (const Context &context, QueueProperties properties, cl_int *err=nullptr)
| Constructs a CommandQueue for an implementation defined device in the given context Will return an CL_INVALID_QUEUE_PROPERTIES error if CL_QUEUE_ON_DEVICE is specified.
| CommandQueue (const Context &context, const Device &device, cl_command_queue_properties properties=0, cl_int *err=nullptr)
| Constructs a CommandQueue for a passed device and context Will return an CL_INVALID_QUEUE_PROPERTIES error if CL_QUEUE_ON_DEVICE is specified.
| CommandQueue (const Context &context, const Device &device, QueueProperties properties, cl_int *err=nullptr)
| Constructs a CommandQueue for a passed device and context Will return an CL_INVALID_QUEUE_PROPERTIES error if CL_QUEUE_ON_DEVICE is specified.
| CommandQueue (const cl_command_queue &commandQueue, bool retainObject=false)
| Constructor from cl_command_queue - takes ownership.
CommandQueue & | operator= (const cl_command_queue &rhs)
template<typename T>
cl_int | getInfo (cl_command_queue_info name, T *param) const
template<cl_command_queue_info name>
detail::param_traits< detail::cl_command_queue_info, name >::param_type | getInfo (cl_int *err=nullptr) const
cl_int | enqueueReadBuffer (const Buffer &buffer, cl_bool blocking, size_type offset, size_type size, void *ptr, const vector< Event > *events=nullptr, Event *event=nullptr) const
cl_int | enqueueWriteBuffer (const Buffer &buffer, cl_bool blocking, size_type offset, size_type size, const void *ptr, const vector< Event > *events=nullptr, Event *event=nullptr) const
cl_int | enqueueCopyBuffer (const Buffer &src, const Buffer &dst, size_type src_offset, size_type dst_offset, size_type size, const vector< Event > *events=nullptr, Event *event=nullptr) const
cl_int | enqueueReadBufferRect (const Buffer &buffer, cl_bool blocking, const array< size_type, 3 > &buffer_offset, const array< size_type, 3 > &host_offset, const array< size_type, 3 > &region, size_type buffer_row_pitch, size_type buffer_slice_pitch, size_type host_row_pitch, size_type host_slice_pitch, void *ptr, const vector< Event > *events=nullptr, Event *event=nullptr) const
cl_int | enqueueReadBufferRect (const Buffer &buffer, cl_bool blocking, const array< size_type, 2 > &buffer_offset, const array< size_type, 2 > &host_offset, const array< size_type, 2 > &region, size_type buffer_row_pitch, size_type buffer_slice_pitch, size_type host_row_pitch, size_type host_slice_pitch, void *ptr, const vector< Event > *events=nullptr, Event *event=nullptr) const
cl_int | enqueueWriteBufferRect (const Buffer &buffer, cl_bool blocking, const array< size_type, 3 > &buffer_offset, const array< size_type, 3 > &host_offset, const array< size_type, 3 > &region, size_type buffer_row_pitch, size_type buffer_slice_pitch, size_type host_row_pitch, size_type host_slice_pitch, const void *ptr, const vector< Event > *events=nullptr, Event *event=nullptr) const
cl_int | enqueueWriteBufferRect (const Buffer &buffer, cl_bool blocking, const array< size_type, 2 > &buffer_offset, const array< size_type, 2 > &host_offset, const array< size_type, 2 > &region, size_type buffer_row_pitch, size_type buffer_slice_pitch, size_type host_row_pitch, size_type host_slice_pitch, const void *ptr, const vector< Event > *events=nullptr, Event *event=nullptr) const
cl_int | enqueueCopyBufferRect (const Buffer &src, const Buffer &dst, const array< size_type, 3 > &src_origin, const array< size_type, 3 > &dst_origin, const array< size_type, 3 > &region, size_type src_row_pitch, size_type src_slice_pitch, size_type dst_row_pitch, size_type dst_slice_pitch, const vector< Event > *events=nullptr, Event *event=nullptr) const
cl_int | enqueueCopyBufferRect (const Buffer &src, const Buffer &dst, const array< size_type, 2 > &src_origin, const array< size_type, 2 > &dst_origin, const array< size_type, 2 > &region, size_type src_row_pitch, size_type src_slice_pitch, size_type dst_row_pitch, size_type dst_slice_pitch, const vector< Event > *events=nullptr, Event *event=nullptr) const
template<typename PatternType>
cl_int | enqueueFillBuffer (const Buffer &buffer, PatternType pattern, size_type offset, size_type size, const vector< Event > *events=nullptr, Event *event=nullptr) const
cl_int | enqueueReadImage (const Image &image, cl_bool blocking, const array< size_type, 3 > &origin, const array< size_type, 3 > &region, size_type row_pitch, size_type slice_pitch, void *ptr, const vector< Event > *events=nullptr, Event *event=nullptr) const
cl_int | enqueueReadImage (const Image &image, cl_bool blocking, const array< size_type, 2 > &origin, const array< size_type, 2 > &region, size_type row_pitch, size_type slice_pitch, void *ptr, const vector< Event > *events=nullptr, Event *event=nullptr) const
cl_int | enqueueWriteImage (const Image &image, cl_bool blocking, const array< size_type, 3 > &origin, const array< size_type, 3 > &region, size_type row_pitch, size_type slice_pitch, const void *ptr, const vector< Event > *events=nullptr, Event *event=nullptr) const
cl_int | enqueueWriteImage (const Image &image, cl_bool blocking, const array< size_type, 2 > &origin, const array< size_type, 2 > &region, size_type row_pitch, size_type slice_pitch, const void *ptr, const vector< Event > *events=nullptr, Event *event=nullptr) const
cl_int | enqueueCopyImage (const Image &src, const Image &dst, const array< size_type, 3 > &src_origin, const array< size_type, 3 > &dst_origin, const array< size_type, 3 > &region, const vector< Event > *events=nullptr, Event *event=nullptr) const
cl_int | enqueueCopyImage (const Image &src, const Image &dst, const array< size_type, 2 > &src_origin, const array< size_type, 2 > &dst_origin, const array< size_type, 2 > &region, const vector< Event > *events=nullptr, Event *event=nullptr) const
template<typename T>
std::enable_if< std::is_same< T, cl_float4 >::value||std::is_same< T, cl_int4 >::value||std::is_same< T, cl_uint4 >::value, cl_int >::type | enqueueFillImage (const Image &image, T fillColor, const array< size_type, 3 > &origin, const array< size_type, 3 > &region, const vector< Event > *events=nullptr, Event *event=nullptr) const
template<typename T>
std::enable_if< std::is_same< T, cl_float4 >::value||std::is_same< T, cl_int4 >::value||std::is_same< T, cl_uint4 >::value, cl_int >::type | enqueueFillImage (const Image &image, T fillColor, const array< size_type, 2 > &origin, const array< size_type, 2 > &region, const vector< Event > *events=nullptr, Event *event=nullptr) const
cl_int | enqueueCopyImageToBuffer (const Image &src, const Buffer &dst, const array< size_type, 3 > &src_origin, const array< size_type, 3 > &region, size_type dst_offset, const vector< Event > *events=nullptr, Event *event=nullptr) const
cl_int | enqueueCopyImageToBuffer (const Image &src, const Buffer &dst, const array< size_type, 2 > &src_origin, const array< size_type, 2 > &region, size_type dst_offset, const vector< Event > *events=nullptr, Event *event=nullptr) const
cl_int | enqueueCopyBufferToImage (const Buffer &src, const Image &dst, size_type src_offset, const array< size_type, 3 > &dst_origin, const array< size_type, 3 > &region, const vector< Event > *events=nullptr, Event *event=nullptr) const
cl_int | enqueueCopyBufferToImage (const Buffer &src, const Image &dst, size_type src_offset, const array< size_type, 2 > &dst_origin, const array< size_type, 2 > &region, const vector< Event > *events=nullptr, Event *event=nullptr) const
void * | enqueueMapBuffer (const Buffer &buffer, cl_bool blocking, cl_map_flags flags, size_type offset, size_type size, const vector< Event > *events=nullptr, Event *event=nullptr, cl_int *err=nullptr) const
void * | enqueueMapImage (const Image &image, cl_bool blocking, cl_map_flags flags, const array< size_type, 3 > &origin, const array< size_type, 3 > &region, size_type *row_pitch, size_type *slice_pitch, const vector< Event > *events=nullptr, Event *event=nullptr, cl_int *err=nullptr) const
void * | enqueueMapImage (const Image &image, cl_bool blocking, cl_map_flags flags, const array< size_type, 2 > &origin, const array< size_type, 2 > &region, size_type *row_pitch, size_type *slice_pitch, const vector< Event > *events=nullptr, Event *event=nullptr, cl_int *err=nullptr) const
template<typename T>
cl_int | enqueueMemcpySVM (T *dst_ptr, const T *src_ptr, cl_bool blocking, size_type size, const vector< Event > *events=nullptr, Event *event=nullptr) const
template<typename T, class D>
cl_int | enqueueMemcpySVM (cl::pointer< T, D > &dst_ptr, const cl::pointer< T, D > &src_ptr, cl_bool blocking, size_type size, const vector< Event > *events=nullptr, Event *event=nullptr) const
template<typename T, class Alloc>
cl_int | enqueueMemcpySVM (cl::vector< T, Alloc > &dst_container, const cl::vector< T, Alloc > &src_container, cl_bool blocking, const vector< Event > *events=nullptr, Event *event=nullptr) const
template<typename T, typename PatternType>
cl_int | enqueueMemFillSVM (T *ptr, PatternType pattern, size_type size, const vector< Event > *events=nullptr, Event *event=nullptr) const
template<typename T, class D, typename PatternType>
cl_int | enqueueMemFillSVM (cl::pointer< T, D > &ptr, PatternType pattern, size_type size, const vector< Event > *events=nullptr, Event *event=nullptr) const
template<typename T, class Alloc, typename PatternType>
cl_int | enqueueMemFillSVM (cl::vector< T, Alloc > &container, PatternType pattern, const vector< Event > *events=nullptr, Event *event=nullptr) const
template<typename T>
cl_int | enqueueMapSVM (T *ptr, cl_bool blocking, cl_map_flags flags, size_type size, const vector< Event > *events=nullptr, Event *event=nullptr) const
template<typename T, class D>
cl_int | enqueueMapSVM (cl::pointer< T, D > &ptr, cl_bool blocking, cl_map_flags flags, size_type size, const vector< Event > *events=nullptr, Event *event=nullptr) const
template<typename T, class Alloc>
cl_int | enqueueMapSVM (cl::vector< T, Alloc > &container, cl_bool blocking, cl_map_flags flags, const vector< Event > *events=nullptr, Event *event=nullptr) const
cl_int | enqueueUnmapMemObject (const Memory &memory, void *mapped_ptr, const vector< Event > *events=nullptr, Event *event=nullptr) const
template<typename T>
cl_int | enqueueUnmapSVM (T *ptr, const vector< Event > *events=nullptr, Event *event=nullptr) const
template<typename T, class D>
cl_int | enqueueUnmapSVM (cl::pointer< T, D > &ptr, const vector< Event > *events=nullptr, Event *event=nullptr) const
template<typename T, class Alloc>
cl_int | enqueueUnmapSVM (cl::vector< T, Alloc > &container, const vector< Event > *events=nullptr, Event *event=nullptr) const
cl_int | enqueueMarkerWithWaitList (const vector< Event > *events=nullptr, Event *event=nullptr) const
cl_int | enqueueBarrierWithWaitList (const vector< Event > *events=nullptr, Event *event=nullptr) const
cl_int | enqueueMigrateMemObjects (const vector< Memory > &memObjects, cl_mem_migration_flags flags, const vector< Event > *events=nullptr, Event *event=nullptr) const
template<typename T>
cl_int | enqueueMigrateSVM (const cl::vector< T * > &svmRawPointers, const cl::vector< size_type > &sizes, cl_mem_migration_flags flags=0, const vector< Event > *events=nullptr, Event *event=nullptr) const
template<typename T>
cl_int | enqueueMigrateSVM (const cl::vector< T * > &svmRawPointers, cl_mem_migration_flags flags=0, const vector< Event > *events=nullptr, Event *event=nullptr) const
template<typename T, class D>
cl_int | enqueueMigrateSVM (const cl::vector< cl::pointer< T, D > > &svmPointers, const cl::vector< size_type > &sizes, cl_mem_migration_flags flags=0, const vector< Event > *events=nullptr, Event *event=nullptr) const
template<typename T, class D>
cl_int | enqueueMigrateSVM (const cl::vector< cl::pointer< T, D > > &svmPointers, cl_mem_migration_flags flags=0, const vector< Event > *events=nullptr, Event *event=nullptr) const
template<typename T, class Alloc>
cl_int | enqueueMigrateSVM (const cl::vector< cl::vector< T, Alloc > > &svmContainers, const cl::vector< size_type > &sizes, cl_mem_migration_flags flags=0, const vector< Event > *events=nullptr, Event *event=nullptr) const
template<typename T, class Alloc>
cl_int | enqueueMigrateSVM (const cl::vector< cl::vector< T, Alloc > > &svmContainers, cl_mem_migration_flags flags=0, const vector< Event > *events=nullptr, Event *event=nullptr) const
cl_int | enqueueNDRangeKernel (const Kernel &kernel, const NDRange &offset, const NDRange &global, const NDRange &local=NullRange, const vector< Event > *events=nullptr, Event *event=nullptr) const
CL_API_PREFIX__VERSION_1_2_DEPRECATED cl_int | enqueueTask (const Kernel &kernel, const vector< Event > *events=nullptr, Event *event=nullptr) const CL_API_SUFFIX__VERSION_1_2_DEPRECATED
cl_int | enqueueNativeKernel (void(CL_CALLBACK *userFptr)(void *), std::pair< void *, size_type > args, const vector< Memory > *mem_objects=nullptr, const vector< const void * > *mem_locs=nullptr, const vector< Event > *events=nullptr, Event *event=nullptr) const
CL_API_PREFIX__VERSION_1_1_DEPRECATED cl_int | enqueueMarker (Event *event=nullptr) const CL_API_SUFFIX__VERSION_1_1_DEPRECATED
CL_API_PREFIX__VERSION_1_1_DEPRECATED cl_int | enqueueWaitForEvents (const vector< Event > &events) const CL_API_SUFFIX__VERSION_1_1_DEPRECATED
cl_int | enqueueAcquireGLObjects (const vector< Memory > *mem_objects=nullptr, const vector< Event > *events=nullptr, Event *event=nullptr) const
cl_int | enqueueReleaseGLObjects (const vector< Memory > *mem_objects=nullptr, const vector< Event > *events=nullptr, Event *event=nullptr) const
CL_API_PREFIX__VERSION_1_1_DEPRECATED cl_int | enqueueBarrier () const CL_API_SUFFIX__VERSION_1_1_DEPRECATED
cl_int | flush () const
cl_int | finish () const
Public Member Functions inherited from cl::detail::Wrapper< cl_command_queue >
Wrapper< cl_type > & | operator= (const Wrapper< cl_type > &rhs)
const cl_type & | operator() () const
cl_type | get () const

## Static Public Member Functions
static CommandQueue | getDefault (cl_int *err=nullptr)
static CommandQueue | setDefault (const CommandQueue &default_queue)

## Additional Inherited Members
Public Types inherited from cl::detail::Wrapper< cl_command_queue >
typedef cl_command_queue | cl_type
Protected Member Functions inherited from cl::detail::Wrapper< cl_command_queue >
cl_int | retain () const
cl_int | release () const
Protected Attributes inherited from cl::detail::Wrapper< cl_command_queue >
cl_type | object_

## Detailed Description

CommandQueue interface for cl_command_queue.

Definition at line 7563 of file opencl.hpp.

## Constructor & Destructor Documentation

## ◆ CommandQueue() [1/8]

cl::CommandQueue::CommandQueue | ( | cl_command_queue_properties | properties,
|  | cl_int * | err = nullptr )
| inline

Constructs a CommandQueue based on passed properties. Will return an CL_INVALID_QUEUE_PROPERTIES error if CL_QUEUE_ON_DEVICE is specified.

Definition at line 7647 of file opencl.hpp.

## ◆ CommandQueue() [2/8]

cl::CommandQueue::CommandQueue | ( | QueueProperties | properties,
|  | cl_int * | err = nullptr )
| inline

Constructs a CommandQueue based on passed properties. Will return an CL_INVALID_QUEUE_PROPERTIES error if CL_QUEUE_ON_DEVICE is specified.

Definition at line 7713 of file opencl.hpp.

## ◆ CommandQueue() [3/8]

cl::CommandQueue::CommandQueue | ( | const Context & | context,
|  | cl_command_queue_properties | properties = 0,
|  | cl_int * | err = nullptr )
| inline explicit

Constructs a CommandQueue for an implementation defined device in the given context Will return an CL_INVALID_QUEUE_PROPERTIES error if CL_QUEUE_ON_DEVICE is specified.

Definition at line 7776 of file opencl.hpp.

## ◆ CommandQueue() [4/8]

cl::CommandQueue::CommandQueue | ( | const Context & | context,
|  | QueueProperties | properties,
|  | cl_int * | err = nullptr )
| inline explicit

Constructs a CommandQueue for an implementation defined device in the given context Will return an CL_INVALID_QUEUE_PROPERTIES error if CL_QUEUE_ON_DEVICE is specified.

Definition at line 7843 of file opencl.hpp.

## ◆ CommandQueue() [5/8]

cl::CommandQueue::CommandQueue | ( | const Context & | context,
|  | const Device & | device,
|  | cl_command_queue_properties | properties = 0,
|  | cl_int * | err = nullptr )
| inline

Constructs a CommandQueue for a passed device and context Will return an CL_INVALID_QUEUE_PROPERTIES error if CL_QUEUE_ON_DEVICE is specified.

Definition at line 7905 of file opencl.hpp.

## ◆ CommandQueue() [6/8]

cl::CommandQueue::CommandQueue | ( | const Context & | context,
|  | const Device & | device,
|  | QueueProperties | properties,
|  | cl_int * | err = nullptr )
| inline

Constructs a CommandQueue for a passed device and context Will return an CL_INVALID_QUEUE_PROPERTIES error if CL_QUEUE_ON_DEVICE is specified.

Definition at line 7956 of file opencl.hpp.

## ◆ CommandQueue() [7/8]

cl::CommandQueue::CommandQueue | ( |  | ) |
| inline

Definition at line 8031 of file opencl.hpp.

## ◆ CommandQueue() [8/8]

cl::CommandQueue::CommandQueue | ( | const cl_command_queue & | commandQueue,
|  | bool | retainObject = false )
| inline explicit

Constructor from cl_command_queue - takes ownership.

Parameters

  retainObject | will cause the constructor to retain its cl object. Defaults to false to maintain compatibility with earlier versions.

Definition at line 8040 of file opencl.hpp.

## Member Function Documentation

## ◆ enqueueAcquireGLObjects()

cl_int cl::CommandQueue::enqueueAcquireGLObjects | ( | const vector< Memory > * | mem_objects = nullptr,
|  | const vector< Event > * | events = nullptr,
|  | Event * | event = nullptr ) const
| inline

Definition at line 9457 of file opencl.hpp.

## ◆ enqueueBarrier()

CL_API_PREFIX__VERSION_1_1_DEPRECATED cl_int cl::CommandQueue::enqueueBarrier | ( |  | ) | const
| inline

Deprecated APIs for 1.2

Definition at line 9583 of file opencl.hpp.

## ◆ enqueueBarrierWithWaitList()

cl_int cl::CommandQueue::enqueueBarrierWithWaitList | ( | const vector< Event > * | events = nullptr,
|  | Event * | event = nullptr ) const
| inline

A synchronization point that enqueues a barrier operation.

Enqueues a barrier command which waits for either a list of events to complete, or if the list is empty it waits for all commands previously enqueued in command_queue to complete before it completes. This command blocks command execution, that is, any following commands enqueued after it do not execute until it completes. This command returns an event which can be waited on, i.e. this event can be waited on to insure that all events either in the event_wait_list or all previously enqueued commands, queued before this command to command_queue, have completed.

Definition at line 9173 of file opencl.hpp.

## ◆ enqueueCopyBuffer()

cl_int cl::CommandQueue::enqueueCopyBuffer | ( | const Buffer & | src,
|  | const Buffer & | dst,
|  | size_type | src_offset,
|  | size_type | dst_offset,
|  | size_type | size,
|  | const vector< Event > * | events = nullptr,
|  | Event * | event = nullptr ) const
| inline

Definition at line 8121 of file opencl.hpp.

## ◆ enqueueCopyBufferRect() [1/2]

cl_int cl::CommandQueue::enqueueCopyBufferRect | ( | const Buffer & | src,
|  | const Buffer & | dst,
|  | const array< size_type, 2 > & | src_origin,
|  | const array< size_type, 2 > & | dst_origin,
|  | const array< size_type, 2 > & | region,
|  | size_type | src_row_pitch,
|  | size_type | src_slice_pitch,
|  | size_type | dst_row_pitch,
|  | size_type | dst_slice_pitch,
|  | const vector< Event > * | events = nullptr,
|  | Event * | event = nullptr ) const
| inline

Definition at line 8318 of file opencl.hpp.

## ◆ enqueueCopyBufferRect() [2/2]

cl_int cl::CommandQueue::enqueueCopyBufferRect | ( | const Buffer & | src,
|  | const Buffer & | dst,
|  | const array< size_type, 3 > & | src_origin,
|  | const array< size_type, 3 > & | dst_origin,
|  | const array< size_type, 3 > & | region,
|  | size_type | src_row_pitch,
|  | size_type | src_slice_pitch,
|  | size_type | dst_row_pitch,
|  | size_type | dst_slice_pitch,
|  | const vector< Event > * | events = nullptr,
|  | Event * | event = nullptr ) const
| inline

Definition at line 8281 of file opencl.hpp.

## ◆ enqueueCopyBufferToImage() [1/2]

cl_int cl::CommandQueue::enqueueCopyBufferToImage | ( | const Buffer & | src,
|  | const Image & | dst,
|  | size_type | src_offset,
|  | const array< size_type, 2 > & | dst_origin,
|  | const array< size_type, 2 > & | region,
|  | const vector< Event > * | events = nullptr,
|  | Event * | event = nullptr ) const
| inline

Definition at line 8694 of file opencl.hpp.

## ◆ enqueueCopyBufferToImage() [2/2]

cl_int cl::CommandQueue::enqueueCopyBufferToImage | ( | const Buffer & | src,
|  | const Image & | dst,
|  | size_type | src_offset,
|  | const array< size_type, 3 > & | dst_origin,
|  | const array< size_type, 3 > & | region,
|  | const vector< Event > * | events = nullptr,
|  | Event * | event = nullptr ) const
| inline

Definition at line 8665 of file opencl.hpp.

## ◆ enqueueCopyImage() [1/2]

cl_int cl::CommandQueue::enqueueCopyImage | ( | const Image & | src,
|  | const Image & | dst,
|  | const array< size_type, 2 > & | src_origin,
|  | const array< size_type, 2 > & | dst_origin,
|  | const array< size_type, 2 > & | region,
|  | const vector< Event > * | events = nullptr,
|  | Event * | event = nullptr ) const
| inline

Definition at line 8529 of file opencl.hpp.

## ◆ enqueueCopyImage() [2/2]

cl_int cl::CommandQueue::enqueueCopyImage | ( | const Image & | src,
|  | const Image & | dst,
|  | const array< size_type, 3 > & | src_origin,
|  | const array< size_type, 3 > & | dst_origin,
|  | const array< size_type, 3 > & | region,
|  | const vector< Event > * | events = nullptr,
|  | Event * | event = nullptr ) const
| inline

Definition at line 8500 of file opencl.hpp.

## ◆ enqueueCopyImageToBuffer() [1/2]

cl_int cl::CommandQueue::enqueueCopyImageToBuffer | ( | const Image & | src,
|  | const Buffer & | dst,
|  | const array< size_type, 2 > & | src_origin,
|  | const array< size_type, 2 > & | region,
|  | size_type | dst_offset,
|  | const vector< Event > * | events = nullptr,
|  | Event * | event = nullptr ) const
| inline

Definition at line 8646 of file opencl.hpp.

## ◆ enqueueCopyImageToBuffer() [2/2]

cl_int cl::CommandQueue::enqueueCopyImageToBuffer | ( | const Image & | src,
|  | const Buffer & | dst,
|  | const array< size_type, 3 > & | src_origin,
|  | const array< size_type, 3 > & | region,
|  | size_type | dst_offset,
|  | const vector< Event > * | events = nullptr,
|  | Event * | event = nullptr ) const
| inline

Definition at line 8617 of file opencl.hpp.

## ◆ enqueueFillBuffer()

template<typename PatternType>

cl_int cl::CommandQueue::enqueueFillBuffer | ( | const Buffer & | buffer,
|  | PatternType | pattern,
|  | size_type | offset,
|  | size_type | size,
|  | const vector< Event > * | events = nullptr,
|  | Event * | event = nullptr ) const
| inline

Enqueue a command to fill a buffer object with a pattern of a given size. The pattern is specified as a vector type.

Template Parameters

  PatternType | The datatype of the pattern field. The pattern type must be an accepted OpenCL data type.
  offset | Is the offset in bytes into the buffer at which to start filling. This must be a multiple of the pattern size.
  size | Is the size in bytes of the region to fill. This must be a multiple of the pattern size.

Definition at line 8359 of file opencl.hpp.

## ◆ enqueueFillImage() [1/2]

template<typename T>

std::enable_if< std::is_same< T, cl_float4 >::value||std::is_same< T, cl_int4 >::value||std::is_same< T, cl_uint4 >::value, cl_int >::type cl::CommandQueue::enqueueFillImage | ( | const Image & | image,
|  | T | fillColor,
|  | const array< size_type, 2 > & | origin,
|  | const array< size_type, 2 > & | region,
|  | const vector< Event > * | events = nullptr,
|  | Event * | event = nullptr ) const
| inline

Enqueue a command to fill an image object with a specified color.

Parameters

  fillColor | is the color to use to fill the image. This is a four component RGBA floating-point, signed integer or unsigned integer color value if the image channel data type is an unnormalized signed integer type.

Definition at line 8598 of file opencl.hpp.

## ◆ enqueueFillImage() [2/2]

template<typename T>

std::enable_if< std::is_same< T, cl_float4 >::value||std::is_same< T, cl_int4 >::value||std::is_same< T, cl_uint4 >::value, cl_int >::type cl::CommandQueue::enqueueFillImage | ( | const Image & | image,
|  | T | fillColor,
|  | const array< size_type, 3 > & | origin,
|  | const array< size_type, 3 > & | region,
|  | const vector< Event > * | events = nullptr,
|  | Event * | event = nullptr ) const
| inline

Enqueue a command to fill an image object with a specified color.

Parameters

  fillColor | is the color to use to fill the image. This is a four component RGBA floating-point, signed integer or unsigned integer color value if the image channel data type is an unnormalized signed integer type.

Definition at line 8561 of file opencl.hpp.

## ◆ enqueueMapBuffer()

void * cl::CommandQueue::enqueueMapBuffer | ( | const Buffer & | buffer,
|  | cl_bool | blocking,
|  | cl_map_flags | flags,
|  | size_type | offset,
|  | size_type | size,
|  | const vector< Event > * | events = nullptr,
|  | Event * | event = nullptr,
|  | cl_int * | err = nullptr ) const
| inline

Definition at line 8713 of file opencl.hpp.

## ◆ enqueueMapImage() [1/2]

void * cl::CommandQueue::enqueueMapImage | ( | const Image & | image,
|  | cl_bool | blocking,
|  | cl_map_flags | flags,
|  | const array< size_type, 2 > & | origin,
|  | const array< size_type, 2 > & | region,
|  | size_type * | row_pitch,
|  | size_type * | slice_pitch,
|  | const vector< Event > * | events = nullptr,
|  | Event * | event = nullptr,
|  | cl_int * | err = nullptr ) const
| inline

Definition at line 8775 of file opencl.hpp.

## ◆ enqueueMapImage() [2/2]

void * cl::CommandQueue::enqueueMapImage | ( | const Image & | image,
|  | cl_bool | blocking,
|  | cl_map_flags | flags,
|  | const array< size_type, 3 > & | origin,
|  | const array< size_type, 3 > & | region,
|  | size_type * | row_pitch,
|  | size_type * | slice_pitch,
|  | const vector< Event > * | events = nullptr,
|  | Event * | event = nullptr,
|  | cl_int * | err = nullptr ) const
| inline

Definition at line 8742 of file opencl.hpp.

## ◆ enqueueMapSVM() [1/3]

template<typename T, class D>

cl_int cl::CommandQueue::enqueueMapSVM | ( | cl::pointer< T, D > & | ptr,
|  | cl_bool | blocking,
|  | cl_map_flags | flags,
|  | size_type | size,
|  | const vector< Event > * | events = nullptr,
|  | Event * | event = nullptr ) const
| inline

Enqueues a command that will allow the host to update a region of a coarse-grained SVM buffer. This variant takes a cl::pointer instance.

Definition at line 8983 of file opencl.hpp.

## ◆ enqueueMapSVM() [2/3]

template<typename T, class Alloc>

cl_int cl::CommandQueue::enqueueMapSVM | ( | cl::vector< T, Alloc > & | container,
|  | cl_bool | blocking,
|  | cl_map_flags | flags,
|  | const vector< Event > * | events = nullptr,
|  | Event * | event = nullptr ) const
| inline

Enqueues a command that will allow the host to update a region of a coarse-grained SVM buffer. This variant takes a cl::vector instance.

Definition at line 9010 of file opencl.hpp.

## ◆ enqueueMapSVM() [3/3]

template<typename T>

cl_int cl::CommandQueue::enqueueMapSVM | ( | T * | ptr,
|  | cl_bool | blocking,
|  | cl_map_flags | flags,
|  | size_type | size,
|  | const vector< Event > * | events = nullptr,
|  | Event * | event = nullptr ) const
| inline

Enqueues a command that will allow the host to update a region of a coarse-grained SVM buffer. This variant takes a raw SVM pointer.

Definition at line 8955 of file opencl.hpp.

## ◆ enqueueMarker()

CL_API_PREFIX__VERSION_1_1_DEPRECATED cl_int cl::CommandQueue::enqueueMarker | ( | Event * | event = nullptr | ) | const
| inline

Deprecated APIs for 1.2

Definition at line 9430 of file opencl.hpp.

## ◆ enqueueMarkerWithWaitList()

cl_int cl::CommandQueue::enqueueMarkerWithWaitList | ( | const vector< Event > * | events = nullptr,
|  | Event * | event = nullptr ) const
| inline

Enqueues a marker command which waits for either a list of events to complete, or all previously enqueued commands to complete.

Enqueues a marker command which waits for either a list of events to complete, or if the list is empty it waits for all commands previously enqueued in command_queue to complete before it completes. This command returns an event which can be waited on, i.e. this event can be waited on to insure that all events either in the event_wait_list or all previously enqueued commands, queued before this command to command_queue, have completed.

Definition at line 9143 of file opencl.hpp.

## ◆ enqueueMemcpySVM() [1/3]

template<typename T, class D>

cl_int cl::CommandQueue::enqueueMemcpySVM | ( | cl::pointer< T, D > & | dst_ptr,
|  | const cl::pointer< T, D > & | src_ptr,
|  | cl_bool | blocking,
|  | size_type | size,
|  | const vector< Event > * | events = nullptr,
|  | Event * | event = nullptr ) const
| inline

Enqueues a command that will copy data from one coarse-grained SVM buffer to another. This function takes two cl::pointer instances representing the destination and source buffers.

Definition at line 8825 of file opencl.hpp.

## ◆ enqueueMemcpySVM() [2/3]

template<typename T, class Alloc>

cl_int cl::CommandQueue::enqueueMemcpySVM | ( | cl::vector< T, Alloc > & | dst_container,
|  | const cl::vector< T, Alloc > & | src_container,
|  | cl_bool | blocking,
|  | const vector< Event > * | events = nullptr,
|  | Event * | event = nullptr ) const
| inline

Enqueues a command that will allow the host to update a region of a coarse-grained SVM buffer. This variant takes a cl::vector instance.

Definition at line 8851 of file opencl.hpp.

## ◆ enqueueMemcpySVM() [3/3]

template<typename T>

cl_int cl::CommandQueue::enqueueMemcpySVM | ( | T * | dst_ptr,
|  | const T * | src_ptr,
|  | cl_bool | blocking,
|  | size_type | size,
|  | const vector< Event > * | events = nullptr,
|  | Event * | event = nullptr ) const
| inline

Enqueues a command that copies a region of memory from the source pointer to the destination pointer. This function is specifically for transferring data between the host and a coarse-grained SVM buffer.

Definition at line 8800 of file opencl.hpp.

## ◆ enqueueMemFillSVM() [1/3]

template<typename T, class D, typename PatternType>

cl_int cl::CommandQueue::enqueueMemFillSVM | ( | cl::pointer< T, D > & | ptr,
|  | PatternType | pattern,
|  | size_type | size,
|  | const vector< Event > * | events = nullptr,
|  | Event * | event = nullptr ) const
| inline

Enqueues a command that fills a region of a coarse-grained SVM buffer with a specified pattern. This variant takes a cl::pointer instance.

Definition at line 8905 of file opencl.hpp.

## ◆ enqueueMemFillSVM() [2/3]

template<typename T, class Alloc, typename PatternType>

cl_int cl::CommandQueue::enqueueMemFillSVM | ( | cl::vector< T, Alloc > & | container,
|  | PatternType | pattern,
|  | const vector< Event > * | events = nullptr,
|  | Event * | event = nullptr ) const
| inline

Enqueues a command that will allow the host to fill a region of a coarse-grained SVM buffer with a specified pattern. This variant takes a cl::vector instance.

Definition at line 8930 of file opencl.hpp.

## ◆ enqueueMemFillSVM() [3/3]

template<typename T, typename PatternType>

cl_int cl::CommandQueue::enqueueMemFillSVM | ( | T * | ptr,
|  | PatternType | pattern,
|  | size_type | size,
|  | const vector< Event > * | events = nullptr,
|  | Event * | event = nullptr ) const
| inline

Enqueues a command to fill a SVM buffer with a pattern.

Definition at line 8880 of file opencl.hpp.

## ◆ enqueueMigrateMemObjects()

cl_int cl::CommandQueue::enqueueMigrateMemObjects | ( | const vector< Memory > & | memObjects,
|  | cl_mem_migration_flags | flags,
|  | const vector< Event > * | events = nullptr,
|  | Event * | event = nullptr ) const
| inline

Enqueues a command to indicate with which device a set of memory objects should be associated.

Definition at line 9196 of file opencl.hpp.

## ◆ enqueueMigrateSVM() [1/6]

template<typename T, class D>

cl_int cl::CommandQueue::enqueueMigrateSVM | ( | const cl::vector< cl::pointer< T, D > > & | svmPointers,
|  | cl_mem_migration_flags | flags = 0,
|  | const vector< Event > * | events = nullptr,
|  | Event * | event = nullptr ) const
| inline

Enqueues a command that will allow the host associate a set of SVM allocations with a device.

Definition at line 9304 of file opencl.hpp.

## ◆ enqueueMigrateSVM() [2/6]

template<typename T, class D>

cl_int cl::CommandQueue::enqueueMigrateSVM | ( | const cl::vector< cl::pointer< T, D > > & | svmPointers,
|  | const cl::vector< size_type > & | sizes,
|  | cl_mem_migration_flags | flags = 0,
|  | const vector< Event > * | events = nullptr,
|  | Event * | event = nullptr ) const
| inline

Enqueues a command that will allow the host associate ranges within a set of SVM allocations with a device.

Parameters

  sizes | - The length from each pointer to migrate.

Definition at line 9282 of file opencl.hpp.

## ◆ enqueueMigrateSVM() [3/6]

template<typename T, class Alloc>

cl_int cl::CommandQueue::enqueueMigrateSVM | ( | const cl::vector< cl::vector< T, Alloc > > & | svmContainers,
|  | cl_mem_migration_flags | flags = 0,
|  | const vector< Event > * | events = nullptr,
|  | Event * | event = nullptr ) const
| inline

Enqueues a command that will allow the host associate a set of SVM allocations with a device.

Definition at line 9340 of file opencl.hpp.

## ◆ enqueueMigrateSVM() [4/6]

template<typename T, class Alloc>

cl_int cl::CommandQueue::enqueueMigrateSVM | ( | const cl::vector< cl::vector< T, Alloc > > & | svmContainers,
|  | const cl::vector< size_type > & | sizes,
|  | cl_mem_migration_flags | flags = 0,
|  | const vector< Event > * | events = nullptr,
|  | Event * | event = nullptr ) const
| inline

Enqueues a command that will allow the host associate ranges within a set of SVM allocations with a device.

Parameters

  sizes | - The length from the beginning of each container to migrate.

Definition at line 9319 of file opencl.hpp.

## ◆ enqueueMigrateSVM() [5/6]

template<typename T>

cl_int cl::CommandQueue::enqueueMigrateSVM | ( | const cl::vector< T * > & | svmRawPointers,
|  | cl_mem_migration_flags | flags = 0,
|  | const vector< Event > * | events = nullptr,
|  | Event * | event = nullptr ) const
| inline

Enqueues a command that will allow the host associate a set of SVM allocations with a device.

Definition at line 9266 of file opencl.hpp.

## ◆ enqueueMigrateSVM() [6/6]

template<typename T>

cl_int cl::CommandQueue::enqueueMigrateSVM | ( | const cl::vector< T * > & | svmRawPointers,
|  | const cl::vector< size_type > & | sizes,
|  | cl_mem_migration_flags | flags = 0,
|  | const vector< Event > * | events = nullptr,
|  | Event * | event = nullptr ) const
| inline

Enqueues a command that will allow the host associate ranges within a set of SVM allocations with a device.

Parameters

  sizes | - The length from each pointer to migrate.

Definition at line 9237 of file opencl.hpp.

## ◆ enqueueNativeKernel()

cl_int cl::CommandQueue::enqueueNativeKernel | ( | void(CL_CALLBACK *userFptr)(void *) | ,
|  | std::pair< void *, size_type > | args,
|  | const vector< Memory > * | mem_objects = nullptr,
|  | const vector< const void * > * | mem_locs = nullptr,
|  | const vector< Event > * | events = nullptr,
|  | Event * | event = nullptr ) const
| inline

Definition at line 9399 of file opencl.hpp.

## ◆ enqueueNDRangeKernel()

cl_int cl::CommandQueue::enqueueNDRangeKernel | ( | const Kernel & | kernel,
|  | const NDRange & | offset,
|  | const NDRange & | global,
|  | const NDRange & | local = NullRange,
|  | const vector< Event > * | events = nullptr,
|  | Event * | event = nullptr ) const
| inline

Definition at line 9351 of file opencl.hpp.

## ◆ enqueueReadBuffer()

cl_int cl::CommandQueue::enqueueReadBuffer | ( | const Buffer & | buffer,
|  | cl_bool | blocking,
|  | size_type | offset,
|  | size_type | size,
|  | void * | ptr,
|  | const vector< Event > * | events = nullptr,
|  | Event * | event = nullptr ) const
| inline

Definition at line 8071 of file opencl.hpp.

## ◆ enqueueReadBufferRect() [1/2]

cl_int cl::CommandQueue::enqueueReadBufferRect | ( | const Buffer & | buffer,
|  | cl_bool | blocking,
|  | const array< size_type, 2 > & | buffer_offset,
|  | const array< size_type, 2 > & | host_offset,
|  | const array< size_type, 2 > & | region,
|  | size_type | buffer_row_pitch,
|  | size_type | buffer_slice_pitch,
|  | size_type | host_row_pitch,
|  | size_type | host_slice_pitch,
|  | void * | ptr,
|  | const vector< Event > * | events = nullptr,
|  | Event * | event = nullptr ) const
| inline

Definition at line 8184 of file opencl.hpp.

## ◆ enqueueReadBufferRect() [2/2]

cl_int cl::CommandQueue::enqueueReadBufferRect | ( | const Buffer & | buffer,
|  | cl_bool | blocking,
|  | const array< size_type, 3 > & | buffer_offset,
|  | const array< size_type, 3 > & | host_offset,
|  | const array< size_type, 3 > & | region,
|  | size_type | buffer_row_pitch,
|  | size_type | buffer_slice_pitch,
|  | size_type | host_row_pitch,
|  | size_type | host_slice_pitch,
|  | void * | ptr,
|  | const vector< Event > * | events = nullptr,
|  | Event * | event = nullptr ) const
| inline

Definition at line 8145 of file opencl.hpp.

## ◆ enqueueReadImage() [1/2]

cl_int cl::CommandQueue::enqueueReadImage | ( | const Image & | image,
|  | cl_bool | blocking,
|  | const array< size_type, 2 > & | origin,
|  | const array< size_type, 2 > & | region,
|  | size_type | row_pitch,
|  | size_type | slice_pitch,
|  | void * | ptr,
|  | const vector< Event > * | events = nullptr,
|  | Event * | event = nullptr ) const
| inline

Definition at line 8421 of file opencl.hpp.

## ◆ enqueueReadImage() [2/2]

cl_int cl::CommandQueue::enqueueReadImage | ( | const Image & | image,
|  | cl_bool | blocking,
|  | const array< size_type, 3 > & | origin,
|  | const array< size_type, 3 > & | region,
|  | size_type | row_pitch,
|  | size_type | slice_pitch,
|  | void * | ptr,
|  | const vector< Event > * | events = nullptr,
|  | Event * | event = nullptr ) const
| inline

Definition at line 8388 of file opencl.hpp.

## ◆ enqueueReleaseGLObjects()

cl_int cl::CommandQueue::enqueueReleaseGLObjects | ( | const vector< Memory > * | mem_objects = nullptr,
|  | const vector< Event > * | events = nullptr,
|  | Event * | event = nullptr ) const
| inline

Definition at line 9479 of file opencl.hpp.

## ◆ enqueueTask()

CL_API_PREFIX__VERSION_1_2_DEPRECATED cl_int cl::CommandQueue::enqueueTask | ( | const Kernel & | kernel,
|  | const vector< Event > * | events = nullptr,
|  | Event * | event = nullptr ) const
| inline

Definition at line 9378 of file opencl.hpp.

## ◆ enqueueUnmapMemObject()

cl_int cl::CommandQueue::enqueueUnmapMemObject | ( | const Memory & | memory,
|  | void * | mapped_ptr,
|  | const vector< Event > * | events = nullptr,
|  | Event * | event = nullptr ) const
| inline

Definition at line 9032 of file opencl.hpp.

## ◆ enqueueUnmapSVM() [1/3]

template<typename T, class D>

cl_int cl::CommandQueue::enqueueUnmapSVM | ( | cl::pointer< T, D > & | ptr,
|  | const vector< Event > * | events = nullptr,
|  | Event * | event = nullptr ) const
| inline

Enqueues a command that will release a coarse-grained SVM buffer back to the OpenCL runtime. This variant takes a cl::pointer instance.

Definition at line 9085 of file opencl.hpp.

## ◆ enqueueUnmapSVM() [2/3]

template<typename T, class Alloc>

cl_int cl::CommandQueue::enqueueUnmapSVM | ( | cl::vector< T, Alloc > & | container,
|  | const vector< Event > * | events = nullptr,
|  | Event * | event = nullptr ) const
| inline

Enqueues a command that will release a coarse-grained SVM buffer back to the OpenCL runtime. This variant takes a cl::vector instance.

Definition at line 9110 of file opencl.hpp.

## ◆ enqueueUnmapSVM() [3/3]

template<typename T>

cl_int cl::CommandQueue::enqueueUnmapSVM | ( | T * | ptr,
|  | const vector< Event > * | events = nullptr,
|  | Event * | event = nullptr ) const
| inline

Enqueues a command that will release a coarse-grained SVM buffer back to the OpenCL runtime. This variant takes a raw SVM pointer.

Definition at line 9060 of file opencl.hpp.

## ◆ enqueueWaitForEvents()

CL_API_PREFIX__VERSION_1_1_DEPRECATED cl_int cl::CommandQueue::enqueueWaitForEvents | ( | const vector< Event > & | events | ) | const
| inline

Definition at line 9446 of file opencl.hpp.

## ◆ enqueueWriteBuffer()

cl_int cl::CommandQueue::enqueueWriteBuffer | ( | const Buffer & | buffer,
|  | cl_bool | blocking,
|  | size_type | offset,
|  | size_type | size,
|  | const void * | ptr,
|  | const vector< Event > * | events = nullptr,
|  | Event * | event = nullptr ) const
| inline

Definition at line 8096 of file opencl.hpp.

## ◆ enqueueWriteBufferRect() [1/2]

cl_int cl::CommandQueue::enqueueWriteBufferRect | ( | const Buffer & | buffer,
|  | cl_bool | blocking,
|  | const array< size_type, 2 > & | buffer_offset,
|  | const array< size_type, 2 > & | host_offset,
|  | const array< size_type, 2 > & | region,
|  | size_type | buffer_row_pitch,
|  | size_type | buffer_slice_pitch,
|  | size_type | host_row_pitch,
|  | size_type | host_slice_pitch,
|  | const void * | ptr,
|  | const vector< Event > * | events = nullptr,
|  | Event * | event = nullptr ) const
| inline

Definition at line 8252 of file opencl.hpp.

## ◆ enqueueWriteBufferRect() [2/2]

cl_int cl::CommandQueue::enqueueWriteBufferRect | ( | const Buffer & | buffer,
|  | cl_bool | blocking,
|  | const array< size_type, 3 > & | buffer_offset,
|  | const array< size_type, 3 > & | host_offset,
|  | const array< size_type, 3 > & | region,
|  | size_type | buffer_row_pitch,
|  | size_type | buffer_slice_pitch,
|  | size_type | host_row_pitch,
|  | size_type | host_slice_pitch,
|  | const void * | ptr,
|  | const vector< Event > * | events = nullptr,
|  | Event * | event = nullptr ) const
| inline

Definition at line 8213 of file opencl.hpp.

## ◆ enqueueWriteImage() [1/2]

cl_int cl::CommandQueue::enqueueWriteImage | ( | const Image & | image,
|  | cl_bool | blocking,
|  | const array< size_type, 2 > & | origin,
|  | const array< size_type, 2 > & | region,
|  | size_type | row_pitch,
|  | size_type | slice_pitch,
|  | const void * | ptr,
|  | const vector< Event > * | events = nullptr,
|  | Event * | event = nullptr ) const
| inline

Definition at line 8477 of file opencl.hpp.

## ◆ enqueueWriteImage() [2/2]

cl_int cl::CommandQueue::enqueueWriteImage | ( | const Image & | image,
|  | cl_bool | blocking,
|  | const array< size_type, 3 > & | origin,
|  | const array< size_type, 3 > & | region,
|  | size_type | row_pitch,
|  | size_type | slice_pitch,
|  | const void * | ptr,
|  | const vector< Event > * | events = nullptr,
|  | Event * | event = nullptr ) const
| inline

Definition at line 8444 of file opencl.hpp.

## ◆ finish()

cl_int cl::CommandQueue::finish | ( |  | ) | const
| inline

Definition at line 9596 of file opencl.hpp.

## ◆ flush()

cl_int cl::CommandQueue::flush | ( |  | ) | const
| inline

Definition at line 9591 of file opencl.hpp.

## ◆ getDefault()

CommandQueue cl::CommandQueue::getDefault | ( | cl_int * | err = nullptr | ) |
| inline static

Definition at line 8003 of file opencl.hpp.

## ◆ getInfo() [1/2]

template<typename T>

cl_int cl::CommandQueue::getInfo | ( | cl_command_queue_info | name,
|  | T * | param ) const
| inline

Definition at line 8050 of file opencl.hpp.

## ◆ getInfo() [2/2]

template<cl_command_queue_info name>

detail::param_traits< detail::cl_command_queue_info, name >::param_type cl::CommandQueue::getInfo | ( | cl_int * | err = nullptr | ) | const
| inline

Definition at line 8060 of file opencl.hpp.

## ◆ operator=()

CommandQueue & cl::CommandQueue::operator= | ( | const cl_command_queue & | rhs | ) |
| inline

Definition at line 8043 of file opencl.hpp.

## ◆ setDefault()

CommandQueue cl::CommandQueue::setDefault | ( | const CommandQueue & | default_queue | ) |
| inline static

Modify the default command queue to be used by subsequent operations. Will only set the default if no default was previously created.

Returns
  updated default command queue. Should be compared to the passed value to ensure that it was updated.

Definition at line 8024 of file opencl.hpp.

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

- opencl.hpp