cl::Kernel Class Reference

Class interface for cl_kernel. More...

`#include <cl.hpp>`

Inheritance diagram for cl::Kernel:
[legend]
Collaboration diagram for cl::Kernel:
[legend]

## Public Member Functions

| Kernel (const Program &program, const char *name, cl_int *err=NULL)
| Kernel ()
| Default constructor - initializes to NULL. More...
__CL_EXPLICIT_CONSTRUCTORS | Kernel (const cl_kernel &kernel)
| Constructor from cl_kernel - takes ownership. More...
Kernel & | operator= (const cl_kernel &rhs)
| Assignment operator from cl_kernel - takes ownership. More...
| Kernel (const Kernel &kernel)
| Copy constructor to forward copy to the superclass correctly. Required for MSVC. More...
Kernel & | operator= (const Kernel &kernel)
| Copy assignment to forward copy to the superclass correctly. Required for MSVC. More...
template<typename T >
cl_int | getInfo (cl_kernel_info name, T *param) const
template<cl_int name>
detail::param_traits< detail::cl_kernel_info, name >::param_type | getInfo (cl_int *err=NULL) const
template<typename T >
cl_int | getWorkGroupInfo (const Device &device, cl_kernel_work_group_info name, T *param) const
template<cl_int name>
detail::param_traits< detail::cl_kernel_work_group_info, name >::param_type | getWorkGroupInfo (const Device &device, cl_int *err=NULL) const
template<typename T >
cl_int | setArg (cl_uint index, const T &value)
cl_int | setArg (cl_uint index, ::size_t size, const void *argPtr)
| Kernel (const Program &program, const char *name, cl_int *err=NULL)
| Kernel ()
| Default constructor - initializes to NULL. More...
__CL_EXPLICIT_CONSTRUCTORS | Kernel (const cl_kernel &kernel)
| Constructor from cl_kernel - takes ownership. More...
Kernel & | operator= (const cl_kernel &rhs)
| Assignment operator from cl_kernel - takes ownership. More...
| Kernel (const Kernel &kernel)
| Copy constructor to forward copy to the superclass correctly. Required for MSVC. More...
Kernel & | operator= (const Kernel &kernel)
| Copy assignment to forward copy to the superclass correctly. Required for MSVC. More...
template<typename T >
cl_int | getInfo (cl_kernel_info name, T *param) const
template<cl_int name>
detail::param_traits< detail::cl_kernel_info, name >::param_type | getInfo (cl_int *err=NULL) const
template<typename T >
cl_int | getWorkGroupInfo (const Device &device, cl_kernel_work_group_info name, T *param) const
template<cl_int name>
detail::param_traits< detail::cl_kernel_work_group_info, name >::param_type | getWorkGroupInfo (const Device &device, cl_int *err=NULL) const
template<typename T >
cl_int | setArg (cl_uint index, const T &value)
cl_int | setArg (cl_uint index, ::size_t size, const void *argPtr)
Public Member Functions inherited from cl::detail::Wrapper< cl_kernel >
| Wrapper ()
| Wrapper (const cl_type &obj)
| Wrapper (const Wrapper< cl_type > &rhs)
| Wrapper ()
| Wrapper (const cl_type &obj)
| Wrapper (const Wrapper< cl_type > &rhs)
| ~Wrapper ()
| ~Wrapper ()
Wrapper< cl_type > & | operator= (const Wrapper< cl_type > &rhs)
Wrapper< cl_type > & | operator= (const cl_type &rhs)
Wrapper< cl_type > & | operator= (const Wrapper< cl_type > &rhs)
Wrapper< cl_type > & | operator= (const cl_type &rhs)
cl_type | operator() () const
cl_type & | operator() ()
cl_type | operator() () const
cl_type & | operator() ()

## Additional Inherited Members

Public Types inherited from cl::detail::Wrapper< cl_kernel >
typedef cl_kernel | cl_type
typedef cl_kernel | cl_type
Protected Member Functions inherited from cl::detail::Wrapper< cl_kernel >
cl_int | retain () const
cl_int | retain () const
cl_int | release () const
cl_int | release () const
Protected Attributes inherited from cl::detail::Wrapper< cl_kernel >
cl_type | object_

## Detailed Description

Class interface for cl_kernel.

Note
  Copies of these objects are shallow, meaning that the copy will refer to the same underlying cl_kernel as the original. For details, see clRetainKernel() and clReleaseKernel().

See also
  cl_kernel

Definition at line 4721 of file cl.hpp.

## Constructor & Destructor Documentation

## Kernel() [1/8]

cl::Kernel::Kernel | ( | const Program & | program,
|  | const char * | name,
|  | cl_int * | err = `NULL`
| ) |  |

inline

Definition at line 5338 of file cl.hpp.

## Kernel() [2/8]

cl::Kernel::Kernel | ( |  | ) |

inline

Default constructor - initializes to NULL.

Definition at line 4727 of file cl.hpp.

## Kernel() [3/8]

__CL_EXPLICIT_CONSTRUCTORS cl::Kernel::Kernel | ( | const cl_kernel & | kernel | ) |

inline

Constructor from cl_kernel - takes ownership.

This effectively transfers ownership of a refcount on the cl_kernel into the new Kernel object.

Definition at line 4734 of file cl.hpp.

## Kernel() [4/8]

cl::Kernel::Kernel | ( | const Kernel & | kernel | ) |

inline

Copy constructor to forward copy to the superclass correctly. Required for MSVC.

Definition at line 4750 of file cl.hpp.

## Kernel() [5/8]

cl::Kernel::Kernel | ( | const Program & | program,
|  | const char * | name,
|  | cl_int * | err = `NULL`
| ) |  |

inline

## Kernel() [6/8]

cl::Kernel::Kernel | ( |  | ) |

inline

Default constructor - initializes to NULL.

Definition at line 4727 of file cl.hpp.

## Kernel() [7/8]

__CL_EXPLICIT_CONSTRUCTORS cl::Kernel::Kernel | ( | const cl_kernel & | kernel | ) |

inline

Constructor from cl_kernel - takes ownership.

This effectively transfers ownership of a refcount on the cl_kernel into the new Kernel object.

Definition at line 4734 of file cl.hpp.

## Kernel() [8/8]

cl::Kernel::Kernel | ( | const Kernel & | kernel | ) |

inline

Copy constructor to forward copy to the superclass correctly. Required for MSVC.

Definition at line 4750 of file cl.hpp.

## Member Function Documentation

## getInfo() [1/4]

template<cl_int name>

detail::param_traits<detail::cl_kernel_info, name>::param_type cl::Kernel::getInfo | ( | cl_int * | err = `NULL` | ) | const

inline

Definition at line 4787 of file cl.hpp.

## getInfo() [2/4]

template<cl_int name>

detail::param_traits<detail::cl_kernel_info, name>::param_type cl::Kernel::getInfo | ( | cl_int * | err = `NULL` | ) | const

inline

Definition at line 4787 of file cl.hpp.

## getInfo() [3/4]

template<typename T >

cl_int cl::Kernel::getInfo | ( | cl_kernel_info | name,
|  | T * | param
| ) |  | const

inline

Definition at line 4778 of file cl.hpp.

## getInfo() [4/4]

template<typename T >

cl_int cl::Kernel::getInfo | ( | cl_kernel_info | name,
|  | T * | param
| ) |  | const

inline

Definition at line 4778 of file cl.hpp.

## getWorkGroupInfo() [1/4]

template<cl_int name>

detail::param_traits<detail::cl_kernel_work_group_info, name>::param_type cl::Kernel::getWorkGroupInfo | ( | const Device & | device,
|  | cl_int * | err = `NULL`
| ) |  | const

inline

Definition at line 4833 of file cl.hpp.

## getWorkGroupInfo() [2/4]

template<cl_int name>

detail::param_traits<detail::cl_kernel_work_group_info, name>::param_type cl::Kernel::getWorkGroupInfo | ( | const Device & | device,
|  | cl_int * | err = `NULL`
| ) |  | const

inline

Definition at line 4833 of file cl.hpp.

## getWorkGroupInfo() [3/4]

template<typename T >

cl_int cl::Kernel::getWorkGroupInfo | ( | const Device & | device,
|  | cl_kernel_work_group_info | name,
|  | T * | param
| ) |  | const

inline

Definition at line 4822 of file cl.hpp.

## getWorkGroupInfo() [4/4]

template<typename T >

cl_int cl::Kernel::getWorkGroupInfo | ( | const Device & | device,
|  | cl_kernel_work_group_info | name,
|  | T * | param
| ) |  | const

inline

Definition at line 4822 of file cl.hpp.

## operator=() [1/4]

Kernel& cl::Kernel::operator= | ( | const cl_kernel & | rhs | ) |

inline

Assignment operator from cl_kernel - takes ownership.

This effectively transfers ownership of a refcount on the rhs and calls clReleaseKernel() on the value previously held by this instance.

Definition at line 4741 of file cl.hpp.

## operator=() [2/4]

Kernel& cl::Kernel::operator= | ( | const cl_kernel & | rhs | ) |

inline

Assignment operator from cl_kernel - takes ownership.

This effectively transfers ownership of a refcount on the rhs and calls clReleaseKernel() on the value previously held by this instance.

Definition at line 4741 of file cl.hpp.

## operator=() [3/4]

Kernel& cl::Kernel::operator= | ( | const Kernel & | kernel | ) |

inline

Copy assignment to forward copy to the superclass correctly. Required for MSVC.

Definition at line 4755 of file cl.hpp.

## operator=() [4/4]

Kernel& cl::Kernel::operator= | ( | const Kernel & | kernel | ) |

inline

Copy assignment to forward copy to the superclass correctly. Required for MSVC.

Definition at line 4755 of file cl.hpp.

## setArg() [1/4]

cl_int cl::Kernel::setArg | ( | cl_uint | index,
|  | ::size_t | size,
|  | const void * | argPtr
| ) |  |

inline

Definition at line 4856 of file cl.hpp.

## setArg() [2/4]

cl_int cl::Kernel::setArg | ( | cl_uint | index,
|  | ::size_t | size,
|  | const void * | argPtr
| ) |  |

inline

Definition at line 4856 of file cl.hpp.

## setArg() [3/4]

template<typename T >

cl_int cl::Kernel::setArg | ( | cl_uint | index,
|  | const T & | value
| ) |  |

inline

Definition at line 4845 of file cl.hpp.

## setArg() [4/4]

template<typename T >

cl_int cl::Kernel::setArg | ( | cl_uint | index,
|  | const T & | value
| ) |  |

inline

Definition at line 4845 of file cl.hpp.

The documentation for this class was generated from the following file:

- /build/asl-1Fw6fH/asl-0.1.7/debian/tmp/usr/include/ASL/acl/cl.hpp