Enumerated Types

Following are the enumerated types and their permitted values.

Enumerated Type Permitted Values
cl_addressing_mode

CL_ADDRESS_NONE
CL_ADDRESS_CLAMP_TO_EDGE
CL_ADDRESS_CLAMP
CL_ADDRESS_REPEAT
CL_ADDRESS_MIRRORED_REPEAT

cl_bool

CL_FALSE
CL_TRUE
CL_BLOCKING = CL_TRUE
CL_NON_BLOCKING = CL_FALSE

Note: Unlike cl_ types in cl_platform.h, cl_bool is not guaranteed to be the same size as the bool in kernels.

cl_buffer_create_type

CL_BUFFER_CREATE_TYPE_REGION

cl_build_status

CL_BUILD_SUCCESS
CL_BUILD_NONE
CL_BUILD_ERROR
CL_BUILD_IN_PROGRESS

cl_channel_order

CL_A
CL_R
CL_RG
CL_RA
CL_RGB
CL_RGBA
CL_BGRA
CL_ARGB
CL_INTENSITY
CL_LUMINANCE
CL_Rx
CL_RGx
CL_RGBx

cl_channel_type

CL_SNORM_INT8
CL_SNORM_INT16
CL_UNORM_INT8
CL_UNORM_INT16
CL_UNORM_SHORT_565
CL_UNORM_SHORT_555
CL_UNORM_INT_101010
CL_SIGNED_INT8
CL_SIGNED_INT16
CL_SIGNED_INT32
CL_UNSIGNED_INT8
CL_UNSIGNED_INT16
CL_UNSIGNED_INT32
CL_HALF_FLOAT
CL_FLOAT

cl_command_queue_info

CL_QUEUE_CONTEXT
CL_QUEUE_DEVICE
CL_QUEUE_REFERENCE_COUNT
CL_QUEUE_PROPERTIES

cl_command_queue_properties

CL_QUEUE_OUT_OF_ORDER_EXEC_MODE_ENABLE
CL_QUEUE_PROFILING_ENABLE

cl_command_type

CL_COMMAND_NDRANGE_KERNEL
CL_COMMAND_TASK
CL_COMMAND_NATIVE_KERNEL
CL_COMMAND_READ_BUFFER
CL_COMMAND_WRITE_BUFFER
CL_COMMAND_COPY_BUFFER
CL_COMMAND_READ_IMAGE
CL_COMMAND_WRITE_IMAGE
CL_COMMAND_COPY_IMAGE
CL_COMMAND_COPY_IMAGE_TO_BUFFER
CL_COMMAND_COPY_BUFFER_TO_IMAGE
CL_COMMAND_MAP_BUFFER
CL_COMMAND_MAP_IMAGE
CL_COMMAND_UNMAP_MEM_OBJECT
CL_COMMAND_MARKER
CL_COMMAND_ACQUIRE_GL_OBJECTS
CL_COMMAND_RELEASE_GL_OBJECTS
CL_COMMAND_READ_BUFFER_RECT
CL_COMMAND_WRITE_BUFFER_RECT
CL_COMMAND_COPY_BUFFER_RECT
CL_COMMAND_USER
CL_COMMAND_BARRIER
CL_COMMAND_MIGRATE_MEM_OBJECTS
CL_COMMAND_FILL_BUFFER
CL_COMMAND_FILL_IMAGE
CL_COMMAND_ACQUIRE_D3D10_OBJECTS_KHR
CL_COMMAND_RELEASE_D3D10_OBJECTS_KHR
CL_COMMAND_ACQUIRE_D3D11_OBJECTS_KHR
CL_COMMAND_RELEASE_D3D11_OBJECTS_KHR
CL_COMMAND_ACQUIRE_DX9_MEDIA_SURFACES_KHR
CL_COMMAND_RELEASE_DX9_MEDIA_SURFACES_KHR

cl_context_info

CL_CONTEXT_REFERENCE_COUNT
CL_CONTEXT_DEVICES
CL_CONTEXT_PROPERTIES
CL_CONTEXT_NUM_DEVICES
CL_CONTEXT_D3D10_DEVICE_KHR
CL_CONTEXT_D3D10_PREFER_SHARED_RESOURCES_KHR
CL_CONTEXT_D3D11_DEVICE_KHR
CL_CONTEXT_D3D11_PREFER_SHARED_RESOURCES_KHR
CL_CONTEXT_D3D9_DEVICE_KHR
CL_CONTEXT_D3D9EX_DEVICE_KHR
CL_CONTEXT_DXVA_DEVICE_KHR
CL_GL_CONTEXT_KHR
CL_EGL_DISPLAY_KHR
CL_GLX_DISPLAY_KHR
CL_WGL_HDC_KHR
CL_CGL_SHAREGROUP_KHR

cl_context_properties

CL_CONTEXT_PLATFORM
CL_CONTEXT_INTEROP_USER_SYNC
CL_GL_CONTEXT_KHR
CL_EGL_DISPLAY_KHR
CL_GLX_DISPLAY_KHR
CL_WGL_HDC_KHR
CL_CGL_SHAREGROUP_KHR

cl_d3d10_device_set_khr  
// cl_d3d10_device_set_nv

CL_PREFERRED_DEVICES_FOR_D3D10_KHR
CL_ALL_DEVICES_FOR_D3D10_KHR

cl_d3d10_device_source_khr  
// cl_d3d10_device_source_nv

CL_D3D10_DEVICE_KHR
CL_D3D10_DXGI_ADAPTER_KHR

cl_d3d11_device_set_khr

CL_PREFERRED_DEVICES_FOR_D3D10_KHR
CL_ALL_DEVICES_FOR_D3D10_KHR

cl_d3d11_device_source_khr

CL_D3D11_DEVICE_KHR
CL_D3D11_DXGI_ADAPTER_KHR

cl_device_affinity_domain

CL_DEVICE_AFFINITY_DOMAIN_NUMA
CL_DEVICE_AFFINITY_DOMAIN_L4_CACHE
CL_DEVICE_AFFINITY_DOMAIN_L3_CACHE
CL_DEVICE_AFFINITY_DOMAIN_L2_CACHE
CL_DEVICE_AFFINITY_DOMAIN_L1_CACHE
CL_DEVICE_AFFINITY_DOMAIN_NEXT_PARTITIONABLE

cl_device_exec_capabilities

CL_EXEC_KERNEL
CL_EXEC_NATIVE_KERNEL

cl_device_fp_config

CL_FP_DENORM
CL_FP_INF_NAN
CL_FP_ROUND_TO_NEAREST
CL_FP_ROUND_TO_ZERO 
CL_FP_ROUND_TO_INF
CL_FP_FMA
CL_FP_SOFT_FLOAT
CL_FP_CORRECTLY_ROUNDED_DIVIDE_SQRT

cl_device_info

CL_DEVICE_TYPE
CL_DEVICE_VENDOR_ID
CL_DEVICE_MAX_COMPUTE_UNITS
CL_DEVICE_MAX_WORK_ITEM_DIMENSIONS
CL_DEVICE_MAX_WORK_GROUP_SIZE
CL_DEVICE_MAX_WORK_ITEM_SIZES
CL_DEVICE_PREFERRED_VECTOR_WIDTH_CHAR
CL_DEVICE_PREFERRED_VECTOR_WIDTH_SHORT
CL_DEVICE_PREFERRED_VECTOR_WIDTH_INT
CL_DEVICE_PREFERRED_VECTOR_WIDTH_LONG
CL_DEVICE_PREFERRED_VECTOR_WIDTH_FLOAT
CL_DEVICE_PREFERRED_VECTOR_WIDTH_DOUBLE
CL_DEVICE_MAX_CLOCK_FREQUENCY
CL_DEVICE_ADDRESS_BITS
CL_DEVICE_MAX_READ_IMAGE_ARGS
CL_DEVICE_MAX_WRITE_IMAGE_ARGS
CL_DEVICE_MAX_MEM_ALLOC_SIZE
CL_DEVICE_IMAGE2D_MAX_WIDTH
CL_DEVICE_IMAGE2D_MAX_HEIGHT
CL_DEVICE_IMAGE3D_MAX_WIDTH
CL_DEVICE_IMAGE3D_MAX_HEIGHT
CL_DEVICE_IMAGE3D_MAX_DEPTH
CL_DEVICE_IMAGE_SUPPORT
CL_DEVICE_MAX_PARAMETER_SIZE
CL_DEVICE_MAX_SAMPLERS
CL_DEVICE_MEM_BASE_ADDR_ALIGN
CL_DEVICE_MIN_DATA_TYPE_ALIGN_SIZE
CL_DEVICE_SINGLE_FP_CONFIG
CL_DEVICE_GLOBAL_MEM_CACHE_TYPE
CL_DEVICE_GLOBAL_MEM_CACHELINE_SIZE
CL_DEVICE_GLOBAL_MEM_CACHE_SIZE
CL_DEVICE_GLOBAL_MEM_SIZE
CL_DEVICE_MAX_CONSTANT_BUFFER_SIZE
CL_DEVICE_MAX_CONSTANT_ARGS
CL_DEVICE_LOCAL_MEM_TYPE
CL_DEVICE_LOCAL_MEM_SIZE
CL_DEVICE_ERROR_CORRECTION_SUPPORT
CL_DEVICE_PROFILING_TIMER_RESOLUTION
CL_DEVICE_ENDIAN_LITTLE
CL_DEVICE_AVAILABLE
CL_DEVICE_COMPILER_AVAILABLE
CL_DEVICE_EXECUTION_CAPABILITIES
CL_DEVICE_QUEUE_PROPERTIES
CL_DEVICE_NAME
CL_DEVICE_VENDOR
CL_DRIVER_VERSION
CL_DEVICE_PROFILE
CL_DEVICE_VERSION
CL_DEVICE_EXTENSIONS
CL_DEVICE_PLATFORM
CL_DEVICE_DOUBLE_FP_CONFIG
CL_DEVICE_PREFERRED_VECTOR_WIDTH_HALF
CL_DEVICE_HOST_UNIFIED_MEMORY
CL_DEVICE_NATIVE_VECTOR_WIDTH_CHAR
CL_DEVICE_NATIVE_VECTOR_WIDTH_SHORT
CL_DEVICE_NATIVE_VECTOR_WIDTH_INT
CL_DEVICE_NATIVE_VECTOR_WIDTH_LONG
CL_DEVICE_NATIVE_VECTOR_WIDTH_FLOAT
CL_DEVICE_NATIVE_VECTOR_WIDTH_DOUBLE
CL_DEVICE_NATIVE_VECTOR_WIDTH_HALF
CL_DEVICE_OPENCL_C_VERSION
CL_DEVICE_LINKER_AVAILABLE
CL_DEVICE_BUILT_IN_KERNELS
CL_DEVICE_IMAGE_MAX_BUFFER_SIZE
CL_DEVICE_IMAGE_MAX_ARRAY_SIZE
CL_DEVICE_PARENT_DEVICE
CL_DEVICE_PARTITION_MAX_SUB_DEVICES
CL_DEVICE_PARTITION_PROPERTIES
CL_DEVICE_PARTITION_AFFINITY_DOMAIN
CL_DEVICE_PARTITION_TYPE
CL_DEVICE_REFERENCE_COUNT
CL_DEVICE_PREFERRED_INTEROP_USER_SYNC
CL_DEVICE_PRINTF_BUFFER_SIZE

cl_device_local_mem_type

CL_GLOBAL
CL_LOCAL

CL_NONE

cl_device_mem_cache_type

CL_NONE
CL_READ_ONLY_CACHE
CL_READ_WRITE_CACHE

cl_device_partition_property

CL_DEVICE_PARTITION_EQUALLY
CL_DEVICE_PARTITION_BY_COUNTS
CL_DEVICE_PARTITION_BY_COUNTS_LIST_END
CL_DEVICE_PARTITION_BY_AFFINITY_DOMAIN

0

cl_device_type

CL_DEVICE_TYPE_DEFAULT
CL_DEVICE_TYPE_CPU
CL_DEVICE_TYPE_GPU
CL_DEVICE_TYPE_ACCELERATOR
CL_DEVICE_TYPE_CUSTOM
CL_DEVICE_TYPE_ALL

cl_event_info

CL_EVENT_COMMAND_QUEUE
CL_EVENT_COMMAND_TYPE
CL_EVENT_REFERENCE_COUNT
CL_EVENT_COMMAND_EXECUTION_STATUS
CL_EVENT_CONTEXT

cl_filter_mode

CL_FILTER_NEAREST
CL_FILTER_LINEAR

cl_gl_context_info

CL_CURRENT_DEVICE_FOR_GL_CONTEXT_KHR
CL_DEVICES_FOR_GL_CONTEXT_KHR

cl_gl_object_type

CL_GL_OBJECT_BUFFER
CL_GL_OBJECT_TEXTURE2D
CL_GL_OBJECT_TEXTURE3D
CL_GL_OBJECT_RENDERBUFFER
CL_GL_OBJECT_TEXTURE2D_ARRAY
CL_GL_OBJECT_TEXTURE1D
CL_GL_OBJECT_TEXTURE1D_ARRAY
CL_GL_OBJECT_TEXTURE_BUFFER

cl_gl_texture_info

CL_GL_TEXTURE_TARGET
CL_GL_MIPMAP_LEVEL

cl_image_info

CL_IMAGE_FORMAT
CL_IMAGE_ELEMENT_SIZE
CL_IMAGE_ROW_PITCH
CL_IMAGE_SLICE_PITCH
CL_IMAGE_WIDTH
CL_IMAGE_HEIGHT
CL_IMAGE_DEPTH
CL_IMAGE_ARRAY_SIZE
CL_IMAGE_BUFFER
CL_IMAGE_NUM_MIP_LEVELS
CL_IMAGE_NUM_SAMPLES
CL_IMAGE_D3D10_SUBRESOURCE_KHR
CL_IMAGE_D3D11_SUBRESOURCE_KHR
CL_IMAGE_DX9_MEDIA_PLANE_KHR

cl_kernel_arg_address_qualifier

CL_KERNEL_ARG_ADDRESS_GLOBAL
CL_KERNEL_ARG_ADDRESS_LOCAL
CL_KERNEL_ARG_ADDRESS_CONSTANT
CL_KERNEL_ARG_ADDRESS_PRIVATE

cl_kernel_arg_access_qualifier

CL_KERNEL_ARG_ACCESS_READ_ONLY
CL_KERNEL_ARG_ACCESS_WRITE_ONLY
CL_KERNEL_ARG_ACCESS_READ_WRITE
CL_KERNEL_ARG_ACCESS_NONE

cl_kernel_arg_info

CL_KERNEL_ARG_ADDRESS_QUALIFIER
CL_KERNEL_ARG_ACCESS_QUALIFIER
CL_KERNEL_ARG_TYPE_NAME
CL_KERNEL_ARG_NAME

cl_kernel_info

CL_KERNEL_FUNCTION_NAME
CL_KERNEL_NUM_ARGS
CL_KERNEL_REFERENCE_COUNT
CL_KERNEL_CONTEXT
CL_KERNEL_PROGRAM
CL_KERNEL_ATTRIBUTES

cl_kernel_work_group_info

CL_KERNEL_WORK_GROUP_SIZE
CL_KERNEL_COMPILE_WORK_GROUP_SIZE
CL_KERNEL_LOCAL_MEM_SIZE
CL_KERNEL_PREFERRED_WORK_GROUP_SIZE_MULTIPLE
CL_KERNEL_PRIVATE_MEM_SIZE
CL_KERNEL_GLOBAL_WORK_SIZE

cl_map_flags

CL_MAP_READ
CL_MAP_WRITE
CL_MAP_WRITE_INVALIDATE_REGION

// cl_media_adapter_set_khr

CL_PREFERRED_DEVICES_FOR_DX9_MEDIA_ADAPTER_KHR
CL_ALL_DEVICES_FOR_DX9_MEDIA_ADAPTER_KHR

// cl_media_adapter_type_khr

CL_D3D9_DEVICE_KHR
CL_D3D9EX_DEVICE_KHR
CL_DXVA_DEVICE_KHR

cl_mem_flags

CL_MEM_READ_WRITE
CL_MEM_WRITE_ONLY
CL_MEM_READ_ONLY
CL_MEM_USE_HOST_PTR
CL_MEM_ALLOC_HOST_PTR
CL_MEM_COPY_HOST_PTR

cl_mem_info

CL_MEM_TYPE
CL_MEM_FLAGS
CL_MEM_SIZE
CL_MEM_HOST_PTR
CL_MEM_MAP_COUNT
CL_MEM_REFERENCE_COUNT
CL_MEM_CONTEXT
CL_MEM_ASSOCIATED_MEMOBJECT
CL_MEM_OFFSET
CL_MEM_D3D10_RESOURCE_KHR
CL_MEM_D3D11_RESOURCE_KHR
CL_MEM_DX9_MEDIA_ADAPTER_TYPE_KHR
CL_MEM_DX9_MEDIA_SURFACE_INFO_KHR

cl_mem_migration_flags

CL_MIGRATE_MEM_OBJECT_HOST
CL_MIGRATE_MEM_OBJECT_CONTENT_UNDEFINED

cl_mem_object_type

CL_MEM_OBJECT_BUFFER
CL_MEM_OBJECT_IMAGE2D
CL_MEM_OBJECT_IMAGE3D
CL_MEM_OBJECT_IMAGE2D_ARRAY
CL_MEM_OBJECT_IMAGE1D
CL_MEM_OBJECT_IMAGE1D_ARRAY
CL_MEM_OBJECT_IMAGE1D_BUFFER

cl_platform_info

CL_PLATFORM_PROFILE
CL_PLATFORM_VERSION
CL_PLATFORM_NAME
CL_PLATFORM_VENDOR
CL_PLATFORM_EXTENSIONS
CL_PLATFORM_ICD_SUFFIX_KHR

cl_profiling_info

CL_PROFILING_COMMAND_QUEUED
CL_PROFILING_COMMAND_SUBMIT
CL_PROFILING_COMMAND_START
CL_PROFILING_COMMAND_END

cl_program_binary_type

CL_PROGRAM_BINARY_TYPE_NONE
CL_PROGRAM_BINARY_TYPE_COMPILED_OBJECT
CL_PROGRAM_BINARY_TYPE_LIBRARY
CL_PROGRAM_BINARY_TYPE_EXECUTABLE

cl_program_build_info

CL_PROGRAM_BUILD_STATUS
CL_PROGRAM_BUILD_OPTIONS
CL_PROGRAM_BUILD_LOG
CL_PROGRAM_BINARY_TYPE

cl_program_info

CL_PROGRAM_REFERENCE_COUNT
CL_PROGRAM_CONTEXT
CL_PROGRAM_NUM_DEVICES
CL_PROGRAM_DEVICES
CL_PROGRAM_SOURCE
CL_PROGRAM_BINARY_SIZES
CL_PROGRAM_BINARIES
CL_PROGRAM_NUM_KERNELS
CL_PROGRAM_KERNEL_NAMES

cl_sampler_info

CL_SAMPLER_REFERENCE_COUNT
CL_SAMPLER_CONTEXT
CL_SAMPLER_NORMALIZED_COORDS
CL_SAMPLER_ADDRESSING_MODE
CL_SAMPLER_FILTER_MODE

Copyright © 2007-2011 The Khronos Group Inc. Permission is hereby granted, free of charge, to any person obtaining a copy of this software and/or associated documentation files (the "Materials"), to deal in the Materials without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Materials, and to permit persons to whom the Materials are furnished to do so, subject to the condition that this copyright notice and permission notice shall be included in all copies or substantial portions of the Materials.