/* * Copyright (c) 2016-2019 The Khronos Group Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. * * OpenCL is a trademark of Apple Inc. used under license by Khronos. */ #ifndef _ICD_DISPATCH_H_ #define _ICD_DISPATCH_H_ #ifndef CL_USE_DEPRECATED_OPENCL_1_0_APIS #define CL_USE_DEPRECATED_OPENCL_1_0_APIS #endif #ifndef CL_USE_DEPRECATED_OPENCL_1_1_APIS #define CL_USE_DEPRECATED_OPENCL_1_1_APIS #endif #ifndef CL_USE_DEPRECATED_OPENCL_1_2_APIS #define CL_USE_DEPRECATED_OPENCL_1_2_APIS #endif #ifndef CL_USE_DEPRECATED_OPENCL_2_0_APIS #define CL_USE_DEPRECATED_OPENCL_2_0_APIS #endif #ifndef CL_USE_DEPRECATED_OPENCL_2_1_APIS #define CL_USE_DEPRECATED_OPENCL_2_1_APIS #endif #ifndef CL_USE_DEPRECATED_OPENCL_2_2_APIS #define CL_USE_DEPRECATED_OPENCL_2_2_APIS #endif // cl.h #include // cl_gl.h and required files #ifdef _WIN32 #include #include #include #include #include #include #endif #include #include #include #include /* * * vendor dispatch table structure * */ struct _cl_platform_id { cl_icd_dispatch *dispatch; }; struct _cl_device_id { cl_icd_dispatch *dispatch; }; struct _cl_context { cl_icd_dispatch *dispatch; }; struct _cl_command_queue { cl_icd_dispatch *dispatch; }; struct _cl_mem { cl_icd_dispatch *dispatch; }; struct _cl_program { cl_icd_dispatch *dispatch; }; struct _cl_kernel { cl_icd_dispatch *dispatch; }; struct _cl_event { cl_icd_dispatch *dispatch; }; struct _cl_sampler { cl_icd_dispatch *dispatch; }; #endif // _ICD_DISPATCH_H_