3
#ifndef OPENCV_CORE_OCL_RUNTIME_OPENCL_SVM_2_0_HPP
4
#define OPENCV_CORE_OCL_RUNTIME_OPENCL_SVM_2_0_HPP
6
#if defined(HAVE_OPENCL_SVM)
7
#include "opencl_core.hpp"
9
#include "opencl_svm_definitions.hpp"
12
#define clSVMAlloc clSVMAlloc_pfn
14
#define clSVMFree clSVMFree_pfn
15
#undef clSetKernelArgSVMPointer
16
#define clSetKernelArgSVMPointer clSetKernelArgSVMPointer_pfn
17
#undef clSetKernelExecInfo
19
#undef clEnqueueSVMFree
21
#undef clEnqueueSVMMemcpy
22
#define clEnqueueSVMMemcpy clEnqueueSVMMemcpy_pfn
23
#undef clEnqueueSVMMemFill
24
#define clEnqueueSVMMemFill clEnqueueSVMMemFill_pfn
25
#undef clEnqueueSVMMap
26
#define clEnqueueSVMMap clEnqueueSVMMap_pfn
27
#undef clEnqueueSVMUnmap
28
#define clEnqueueSVMUnmap clEnqueueSVMUnmap_pfn
30
extern
CL_RUNTIME_EXPORT
void* (CL_API_CALL *clSVMAlloc)(cl_context context, cl_svm_mem_flags flags,
size_t
size,
unsigned
int
alignment);
31
extern
CL_RUNTIME_EXPORT void (CL_API_CALL *clSVMFree)(cl_context context,
void* svm_pointer);
32
extern
CL_RUNTIME_EXPORT cl_int (CL_API_CALL *clSetKernelArgSVMPointer)(cl_kernel kernel, cl_uint arg_index,
const
void* arg_value);
37
extern
CL_RUNTIME_EXPORT cl_int (CL_API_CALL *clEnqueueSVMMemcpy)(cl_command_queue command_queue, cl_bool blocking_copy,
void* dst_ptr,
const
void* src_ptr,
size_t
size,
38
cl_uint num_events_in_wait_list,
const
cl_event* event_wait_list, cl_event* event);
39
extern
CL_RUNTIME_EXPORT cl_int (CL_API_CALL *clEnqueueSVMMemFill)(cl_command_queue command_queue,
void* svm_ptr,
const
void* pattern,
size_t
pattern_size,
size_t
size,
40
cl_uint num_events_in_wait_list,
const
cl_event* event_wait_list, cl_event* event);
41
extern
CL_RUNTIME_EXPORT cl_int (CL_API_CALL *clEnqueueSVMMap)(cl_command_queue command_queue, cl_bool blocking_map, cl_map_flags map_flags,
void* svm_ptr,
size_t
size,
42
cl_uint num_events_in_wait_list,
const
cl_event* event_wait_list, cl_event* event);
43
extern
CL_RUNTIME_EXPORT cl_int (CL_API_CALL *clEnqueueSVMUnmap)(cl_command_queue command_queue,
void* svm_ptr,
44
cl_uint num_events_in_wait_list,
const
cl_event* event_wait_list, cl_event* event);