Other Built-in Data Types

Description

The following table describes other data types supported by OpenCL:

Type Description

image2d_t

A 2D image. See individual Image Functions for more information.

image3d_t

A 3D image. See individual Image Functions for more information.

image2d_array_t

A 2D image array. See individual Image Functions for more information.

image1d_t

A 1D image. See individual Image Functions for more information.

image1d_buffer_t

A 1D image created from a buffer object. See individual Image Functions for more information.

image1d_array_t

A 1D image array. See individual Image Functions for more information.

image2d_depth_t

A 2D depth image. See individual Image Functions for more information.

image2d_array_depth_t

A 2D depth image array. See individual Image Functions for more information.

A sampler type.

queue_t

A device command queue. This queue can only be used to enqueue commands from kernels executing on the device.

ndrange_t

The N-dimensional range over which a kernel executes.

clk_event_t

A device side event that identifies a command enqueue to a device command queue.

reserve_id_t

A reservation ID. This opaque type is used to identify the reservation for reading and writing a pipe. Refer to section 6.13.16.

event_t

An event. This can be used to identify async copies from global to local memory and vice-versa. See individual Async Copy and Prefetch Functions for more information.

cl_mem_fence_flags

This is a bitfield and can be 0 or a combination of the following values ORed together:

CLK_GLOBAL_MEM_FENCE
CLK_LOCAL_MEM_FENCE
CLK_IMAGE_MEM_FENCE

These flags are described in detail in section 6.13.8 of the OpenCL specification (see syncFunctions).

image2d_msaa_t

If the cl_khr_gl_msaa_sharing extension is enabled: A 2D multi-sample color image.

image2d_array_msaa_t

If the cl_khr_gl_msaa_sharing extension is enabled: A 2D multi-sample color image array.

image2d_msaa_depth_t

If the cl_khr_gl_msaa_sharing extension is enabled: A 2D multi-sample depth image.

image2d_array_msaa_depth_t

If the cl_khr_gl_msaa_sharing extension is enabled: A 2D multi-sample depth image array.

Note
The image2d_t, image3d_t, image2d_array_t, image1d_t, image1d_buffer_t, image1d_array_t, image2d_depth_t, image2d_array_depth_t and sampler_t types are only defined if the device supports images i.e. CL_DEVICE_IMAGE_SUPPORT is CL_TRUE. See the table for param_name for clGetDeviceInfo for details.

The C99 derived types (arrays, structs, union, function, and pointers), constructed from the built-in data types described in Scalar Data Types, Vector Data Types, and Other Data Types are also supported with certain restrictions described in section 6.9.

The following tables describe the other built-in data types in OpenCL described in table 6.3 and the corresponding data type available to the application:

Type in OpenCL C API type for application

queue_t

cl_command_queue

clk_event_t

cl_event

Also see

Specification