cf4ocl (C Framework for OpenCL)  v2.1.0
Object-oriented framework for developing and benchmarking OpenCL projects in C/C++
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
ccl_kernel Struct Reference

Kernel wrapper class. More...

Inheritance diagram for ccl_kernel:
Inheritance graph
Collaboration diagram for ccl_kernel:
Collaboration graph

Public Member Functions

void ccl_kernel_destroy (CCLKernel *krnl)
 Decrements the reference count of the kernel wrapper object. More...
 
CCLEventccl_kernel_enqueue_native (CCLQueue *cq, void(*user_func)(void *), void *args, size_t cb_args, cl_uint num_mos, CCLMemObj *const *mo_list, const void **args_mem_loc, CCLEventWaitList *evt_wait_lst, CCLErr **err)
 Enqueues a command to execute a native C/C++ function not compiled using the OpenCL compiler. More...
 
CCLEventccl_kernel_enqueue_ndrange (CCLKernel *krnl, CCLQueue *cq, cl_uint work_dim, const size_t *global_work_offset, const size_t *global_work_size, const size_t *local_work_size, CCLEventWaitList *evt_wait_lst, CCLErr **err)
 Enqueues a kernel for execution on a device. More...
 
CCLWrapperInfoccl_kernel_get_arg_info (CCLKernel *krnl, cl_uint idx, cl_kernel_arg_info param_name, CCLErr **err)
 Get a CCLWrapperInfo kernel argument information object. More...
 
cl_uint ccl_kernel_get_opencl_version (CCLKernel *krnl, CCLErr **err)
 Get the OpenCL version of the platform associated with this kernel. More...
 
CCLKernelccl_kernel_new (CCLProgram *prg, const char *kernel_name, CCLErr **err)
 Create a new kernel wrapper object. More...
 
CCLKernelccl_kernel_new_wrap (cl_kernel kernel)
 Get the kernel wrapper for the given OpenCL kernel. More...
 
void ccl_kernel_set_arg (CCLKernel *krnl, cl_uint arg_index, void *arg)
 Set one kernel argument. More...
 
void ccl_kernel_set_args (CCLKernel *krnl,...)
 Set all kernel arguments. More...
 
CCLEventccl_kernel_set_args_and_enqueue_ndrange (CCLKernel *krnl, CCLQueue *cq, cl_uint work_dim, const size_t *global_work_offset, const size_t *global_work_size, const size_t *local_work_size, CCLEventWaitList *evt_wait_lst, CCLErr **err,...)
 Set kernel arguments and enqueue it for execution on a device. More...
 
CCLEventccl_kernel_set_args_and_enqueue_ndrange_v (CCLKernel *krnl, CCLQueue *cq, cl_uint work_dim, const size_t *global_work_offset, const size_t *global_work_size, const size_t *local_work_size, CCLEventWaitList *evt_wait_lst, void **args, CCLErr **err)
 Set kernel arguments and enqueue it for execution on a device. More...
 
void ccl_kernel_set_args_v (CCLKernel *krnl, void **args)
 Set all kernel arguments. More...
 
cl_bool ccl_kernel_suggest_worksizes (CCLKernel *krnl, CCLDevice *dev, cl_uint dims, const size_t *real_worksize, size_t *gws, size_t *lws, CCLErr **err)
 Suggest appropriate local (and optionally global) work sizes for the given real work size, based on device and kernel characteristics. More...
 
- Public Member Functions inherited from ccl_wrapper
CCLWrapperInfoccl_wrapper_get_info (CCLWrapper *wrapper1, CCLWrapper *wrapper2, cl_uint param_name, size_t min_size, CCLInfo info_type, cl_bool use_cache, CCLErr **err)
 Get information about any wrapped OpenCL object. More...
 
size_t ccl_wrapper_get_info_size (CCLWrapper *wrapper1, CCLWrapper *wrapper2, cl_uint param_name, size_t min_size, CCLInfo info_type, cl_bool use_cache, CCLErr **err)
 Get information size. More...
 
void * ccl_wrapper_get_info_value (CCLWrapper *wrapper1, CCLWrapper *wrapper2, cl_uint param_name, size_t min_size, CCLInfo info_type, cl_bool use_cache, CCLErr **err)
 Get pointer to information value. More...
 
cl_bool ccl_wrapper_memcheck ()
 Debug function which checks if memory allocated by wrappers has been properly freed. More...
 
void ccl_wrapper_ref (CCLWrapper *wrapper)
 Increase the reference count of the wrapper object. More...
 
int ccl_wrapper_ref_count (CCLWrapper *wrapper)
 Returns the wrapper object reference count. More...
 
void * ccl_wrapper_unwrap (CCLWrapper *wrapper)
 Get the wrapped OpenCL object. More...
 

Detailed Description

Kernel wrapper class.

Examples:
ca.c, canon.c, and image_filter.c.

Definition at line 40 of file ccl_kernel_wrapper.c.