/********************************************************************************Copyright(c)2008-2010TheKhronosGroupInc.**Permissionisherebygranted,freeofcharge,toanypersonobtaininga*copyofthissoftwareand/orassociateddocumentationfiles(the*Materials),todealintheMaterialswithoutrestriction,including*withoutlimitationtherightstouse,copy,modify,merge,publish,*distribute,sublicense,and/orsellcopiesoftheMaterials,andto*permitpersonstowhomtheMaterialsarefurnishedtodoso,subjectto*thefollowingconditions:**Theabovecopyrightnoticeandthispermissionnoticeshallbeincluded*inallcopiesorsubstantialportionsoftheMaterials.**THEMATERIALSAREPROVIDEDASIS,WITHOUTWARRANTYOFANYKIND,*EXPRESSORIMPLIED,INCLUDINGBUTNOTLIMITEDTOTHEWARRANTIESOF*MERCHANTABILITY,FITNESSFORAPARTICULARPURPOSEANDNONINFRINGEMENT.*INNOEVENTSHALLTHEAUTHORSORCOPYRIGHTHOLDERSBELIABLEFORANY*CLAIM,DAMAGESOROTHERLIABILITY,WHETHERINANACTIONOFCONTRACT,*TORTOROTHERWISE,ARISINGFROM,OUTOFORINCONNECTIONWITHTHE*MATERIALSORTHEUSEOROTHERDEALINGSINTHEMATERIALS.******************************************************************************//*$Revision:11707$on$Date:2010-06-1323:30:16-0700(Sun,13Jun2010)$*/#ifndef__OPENCL_CL_H#define__OPENCL_CL_H#ifdef__APPLE__#includeOpenCL/cl_platform.h#else#includeCL/cl_platform.h#endif#ifdef__cplusplusexternC{#endif/******************************************************************************/typedefstruct_cl_platform_id*cl_platform_id;typedefstruct_cl_device_id*cl_device_id;typedefstruct_cl_context*cl_context;typedefstruct_cl_command_queue*cl_command_queue;typedefstruct_cl_mem*cl_mem;typedefstruct_cl_program*cl_program;typedefstruct_cl_kernel*cl_kernel;typedefstruct_cl_event*cl_event;typedefstruct_cl_sampler*cl_sampler;typedefcl_uintcl_bool;/*WARNING!Unlikecl_typesincl_platform.h,cl_boolisnotguaranteedtobethesamesizeastheboolinkernels.*/typedefcl_ulongcl_bitfield;typedefcl_bitfieldcl_device_type;typedefcl_uintcl_platform_info;typedefcl_uintcl_device_info;typedefcl_bitfieldcl_device_address_info;typedefcl_bitfieldcl_device_fp_config;typedefcl_uintcl_device_mem_cache_type;typedefcl_uintcl_device_local_mem_type;typedefcl_bitfieldcl_device_exec_capabilities;typedefcl_bitfieldcl_command_queue_properties;typedefintptr_tcl_context_properties;typedefcl_uintcl_context_info;typedefcl_uintcl_command_queue_info;typedefcl_uintcl_channel_order;typedefcl_uintcl_channel_type;typedefcl_bitfieldcl_mem_flags;typedefcl_uintcl_mem_object_type;typedefcl_uintcl_mem_info;typedefcl_uintcl_image_info;typedefcl_uintcl_addressing_mode;typedefcl_uintcl_filter_mode;typedefcl_uintcl_sampler_info;typedefcl_bitfieldcl_map_flags;typedefcl_uintcl_program_info;typedefcl_uintcl_program_build_info;typedefcl_intcl_build_status;typedefcl_uintcl_kernel_info;typedefcl_uintcl_kernel_work_group_info;typedefcl_uintcl_event_info;typedefcl_uintcl_command_type;typedefcl_uintcl_profiling_info;typedefstruct_cl_image_format{cl_channel_orderimage_channel_order;cl_channel_typeimage_channel_data_type;}cl_image_format;/******************************************************************************//*ErrorCodes*/#defineCL_SUCCESS0#defineCL_DEVICE_NOT_FOUND-1#defineCL_DEVICE_NOT_AVAILABLE-2#defineCL_COMPILER_NOT_AVAILABLE-3#defineCL_MEM_OBJECT_ALLOCATION_FAILURE-4#defineCL_OUT_OF_RESOURCES-5#defineCL_OUT_OF_HOST_MEMORY-6#defineCL_PROFILING_INFO_NOT_AVAILABLE-7#defineCL_MEM_COPY_OVERLAP-8#defineCL_IMAGE_FORMAT_MISMATCH-9#defineCL_IMAGE_FORMAT_NOT_SUPPORTED-10#defineCL_BUILD_PROGRAM_FAILURE-11#defineCL_MAP_FAILURE-12#defineCL_INVALID_VALUE-30#defineCL_INVALID_DEVICE_TYPE-31#defineCL_INVALID_PLATFORM-32#defineCL_INVALID_DEVICE-33#defineCL_INVALID_CONTEXT-34#defineCL_INVALID_QUEUE_PROPERTIES-35#defineCL_INVALID_COMMAND_QUEUE-36#defineCL_INVALID_HOST_PTR-37#defineCL_INVALID_MEM_OBJECT-38#defineCL_INVALID_IMAGE_FORMAT_DESCRIPTOR-39#defineCL_INVALID_IMAGE_SIZE-40#defineCL_INVALID_SAMPLER-41#defineCL_INVALID_BINARY-42#defineCL_INVALID_BUILD_OPTIONS-43#defineCL_INVALID_PROGRAM-44#defineCL_INVALID_PROGRAM_EXECUTABLE-45#defineCL_INVALID_KERNEL_NAME-46#defineCL_INVALID_KERNEL_DEFINITION-47#defineCL_INVALID_KERNEL-48#defineCL_INVALID_ARG_INDEX-49#defineCL_INVALID_ARG_VALUE-50#defineCL_INVALID_ARG_SIZE-51#defineCL_INVALID_KERNEL_ARGS-52#defineCL_INVALID_WORK_DIMENSION-53#defineCL_INVALID_WORK_GROUP_SIZE-54#defineCL_INVALID_WORK_ITEM_SIZE-55#defineCL_INVALID_GLOBAL_OFFSET-56#defineCL_INVALID_EVENT_WAIT_LIST-57#defineCL_INVALID_EVENT-58#defineCL_INVALID_OPERATION-59#defineCL_INVALID_GL_OBJECT-60#defineCL_INVALID_BUFFER_SIZE-61#defineCL_INVALID_MIP_LEVEL-62#defineCL_INVALID_GLOBAL_WORK_SIZE-63/*OpenCLVersion*/#defineCL_VERSION_1_01/*cl_bool*/#defineCL_FALSE0#defineCL_TRUE1/*cl_platform_info*/#defineCL_PLATFORM_PROFILE0x0900#defineCL_PLATFORM_VERSION0x0901#defineCL_PLATFORM_NAME0x0902#defineCL_PLATFORM_VENDOR0x0903#defineCL_PLATFORM_EXTENSIONS0x0904/*cl_device_type-bitfield*/#defineCL_DEVICE_TYPE_DEFAULT(10)#defineCL_DEVICE_TYPE_CPU(11)#defineCL_DEVICE_TYPE_GPU(12)#defineCL_DEVICE_TYPE_ACCELERATOR(13)