C++ bindings for OpenCL 1.0, OpenCL 1.1, OpenCL 1.2, OpenCL 2.0, OpenCL 2.1, OpenCL 2.2, and OpenCL 3.0.
More...
|
template<typename Functor , typename T > |
cl_int | cl::detail::getInfoHelper (Functor f, cl_uint name, T *param, long) |
|
template<typename Func > |
cl_int | cl::detail::getInfoHelper (Func f, cl_uint name, vector< vector< unsigned char > > *param, int) |
|
template<typename Func , typename T > |
cl_int | cl::detail::getInfoHelper (Func f, cl_uint name, vector< T > *param, long) |
|
template<typename Func , typename T > |
cl_int | cl::detail::getInfoHelper (Func f, cl_uint name, vector< T > *param, int, typename T::cl_type=0) |
|
template<typename Func > |
cl_int | cl::detail::getInfoHelper (Func f, cl_uint name, string *param, long) |
|
template<typename Func , size_type N> |
cl_int | cl::detail::getInfoHelper (Func f, cl_uint name, array< size_type, N > *param, long) |
|
template<typename Func , typename T > |
cl_int | cl::detail::getInfoHelper (Func f, cl_uint name, T *param, int, typename T::cl_type=0) |
|
template<typename Func , typename T > |
cl_int | cl::detail::getInfo (Func f, cl_uint name, T *param) |
|
template<typename Func , typename Arg0 , typename T > |
cl_int | cl::detail::getInfo (Func f, const Arg0 &arg0, cl_uint name, T *param) |
|
template<typename Func , typename Arg0 , typename Arg1 , typename T > |
cl_int | cl::detail::getInfo (Func f, const Arg0 &arg0, const Arg1 &arg1, cl_uint name, T *param) |
|
template<typename T > |
bool | cl::detail::operator== (const Wrapper< T > &lhs, const Wrapper< T > &rhs) |
|
template<typename T > |
bool | cl::detail::operator!= (const Wrapper< T > &lhs, const Wrapper< T > &rhs) |
|
CL_API_PREFIX__VERSION_1_1_DEPRECATED cl_int | cl::UnloadCompiler () CL_API_SUFFIX__VERSION_1_1_DEPRECATED |
|
template<typename IteratorType > |
cl_int | cl::copy (IteratorType startIterator, IteratorType endIterator, cl::Buffer &buffer) |
|
template<typename IteratorType > |
cl_int | cl::copy (const cl::Buffer &buffer, IteratorType startIterator, IteratorType endIterator) |
|
template<typename IteratorType > |
cl_int | cl::copy (const CommandQueue &queue, IteratorType startIterator, IteratorType endIterator, cl::Buffer &buffer) |
|
template<typename IteratorType > |
cl_int | cl::copy (const CommandQueue &queue, const cl::Buffer &buffer, IteratorType startIterator, IteratorType endIterator) |
|
template<typename T > |
cl_int | cl::enqueueMapSVM (T *ptr, cl_bool blocking, cl_map_flags flags, size_type size, const vector< Event > *events=NULL, Event *event=NULL) |
|
template<class T , class Alloc , class... Args> |
cl::pointer< T, detail::Deleter< Alloc > > | cl::allocate_pointer (const Alloc &alloc_, Args &&... args) |
|
template<class T , class SVMTrait , class... Args> |
cl::pointer< T, detail::Deleter< SVMAllocator< T, SVMTrait > > > | cl::allocate_svm (Args... args) |
|
template<class T , class SVMTrait , class... Args> |
cl::pointer< T, detail::Deleter< SVMAllocator< T, SVMTrait > > > | cl::allocate_svm (const cl::Context &c, Args... args) |
|
LocalSpaceArg | cl::Local (size_type size) |
| Helper function for generating LocalSpaceArg objects. More...
|
|
Program | cl::linkProgram (Program input1, Program input2, const char *options=NULL, void(CL_CALLBACK *notifyFptr)(cl_program, void *)=NULL, void *data=NULL, cl_int *err=NULL) |
|
Program | cl::linkProgram (vector< Program > inputPrograms, const char *options=NULL, void(CL_CALLBACK *notifyFptr)(cl_program, void *)=NULL, void *data=NULL, cl_int *err=NULL) |
|
QueueProperties | cl::operator| (QueueProperties lhs, QueueProperties rhs) |
|
QueueProperties | cl::operator& (QueueProperties lhs, QueueProperties rhs) |
|
DeviceQueueProperties | cl::operator| (DeviceQueueProperties lhs, DeviceQueueProperties rhs) |
|
cl_int | cl::enqueueReadBuffer (const Buffer &buffer, cl_bool blocking, size_type offset, size_type size, void *ptr, const vector< Event > *events=NULL, Event *event=NULL) |
|
cl_int | cl::enqueueWriteBuffer (const Buffer &buffer, cl_bool blocking, size_type offset, size_type size, const void *ptr, const vector< Event > *events=NULL, Event *event=NULL) |
|
void * | cl::enqueueMapBuffer (const Buffer &buffer, cl_bool blocking, cl_map_flags flags, size_type offset, size_type size, const vector< Event > *events=NULL, Event *event=NULL, cl_int *err=NULL) |
|
template<typename T , class D > |
cl_int | cl::enqueueMapSVM (cl::pointer< T, D > &ptr, cl_bool blocking, cl_map_flags flags, size_type size, const vector< Event > *events=NULL, Event *event=NULL) |
|
template<typename T , class Alloc > |
cl_int | cl::enqueueMapSVM (cl::vector< T, Alloc > &container, cl_bool blocking, cl_map_flags flags, const vector< Event > *events=NULL, Event *event=NULL) |
|
cl_int | cl::enqueueUnmapMemObject (const Memory &memory, void *mapped_ptr, const vector< Event > *events=NULL, Event *event=NULL) |
|
template<typename T > |
cl_int | cl::enqueueUnmapSVM (T *ptr, const vector< Event > *events=NULL, Event *event=NULL) |
|
template<typename T , class D > |
cl_int | cl::enqueueUnmapSVM (cl::pointer< T, D > &ptr, const vector< Event > *events=NULL, Event *event=NULL) |
|
template<typename T , class Alloc > |
cl_int | cl::enqueueUnmapSVM (cl::vector< T, Alloc > &container, const vector< Event > *events=NULL, Event *event=NULL) |
|
cl_int | cl::enqueueCopyBuffer (const Buffer &src, const Buffer &dst, size_type src_offset, size_type dst_offset, size_type size, const vector< Event > *events=NULL, Event *event=NULL) |
|
template<typename T , class Alloc > |
cl_int | cl::mapSVM (cl::vector< T, Alloc > &container) |
|
template<typename T , class Alloc > |
cl_int | cl::unmapSVM (cl::vector< T, Alloc > &container) |
|
cl_int | cl::enqueueReadBufferRect (const Buffer &buffer, cl_bool blocking, const array< size_type, 3 > &buffer_offset, const array< size_type, 3 > &host_offset, const array< size_type, 3 > ®ion, size_type buffer_row_pitch, size_type buffer_slice_pitch, size_type host_row_pitch, size_type host_slice_pitch, void *ptr, const vector< Event > *events=NULL, Event *event=NULL) |
|
cl_int | cl::enqueueWriteBufferRect (const Buffer &buffer, cl_bool blocking, const array< size_type, 3 > &buffer_offset, const array< size_type, 3 > &host_offset, const array< size_type, 3 > ®ion, size_type buffer_row_pitch, size_type buffer_slice_pitch, size_type host_row_pitch, size_type host_slice_pitch, const void *ptr, const vector< Event > *events=NULL, Event *event=NULL) |
|
cl_int | cl::enqueueCopyBufferRect (const Buffer &src, const Buffer &dst, const array< size_type, 3 > &src_origin, const array< size_type, 3 > &dst_origin, const array< size_type, 3 > ®ion, size_type src_row_pitch, size_type src_slice_pitch, size_type dst_row_pitch, size_type dst_slice_pitch, const vector< Event > *events=NULL, Event *event=NULL) |
|
cl_int | cl::enqueueReadImage (const Image &image, cl_bool blocking, const array< size_type, 3 > &origin, const array< size_type, 3 > ®ion, size_type row_pitch, size_type slice_pitch, void *ptr, const vector< Event > *events=NULL, Event *event=NULL) |
|
cl_int | cl::enqueueWriteImage (const Image &image, cl_bool blocking, const array< size_type, 3 > &origin, const array< size_type, 3 > ®ion, size_type row_pitch, size_type slice_pitch, const void *ptr, const vector< Event > *events=NULL, Event *event=NULL) |
|
cl_int | cl::enqueueCopyImage (const Image &src, const Image &dst, const array< size_type, 3 > &src_origin, const array< size_type, 3 > &dst_origin, const array< size_type, 3 > ®ion, const vector< Event > *events=NULL, Event *event=NULL) |
|
cl_int | cl::enqueueCopyImageToBuffer (const Image &src, const Buffer &dst, const array< size_type, 3 > &src_origin, const array< size_type, 3 > ®ion, size_type dst_offset, const vector< Event > *events=NULL, Event *event=NULL) |
|
cl_int | cl::enqueueCopyBufferToImage (const Buffer &src, const Image &dst, size_type src_offset, const array< size_type, 3 > &dst_origin, const array< size_type, 3 > ®ion, const vector< Event > *events=NULL, Event *event=NULL) |
|
cl_int | cl::flush (void) |
|
cl_int | cl::finish (void) |
|
C++ bindings for OpenCL 1.0, OpenCL 1.1, OpenCL 1.2, OpenCL 2.0, OpenCL 2.1, OpenCL 2.2, and OpenCL 3.0.
- Author
- Lee Howes and Bruce Merry
Derived from the OpenCL 1.x C++ bindings written by Benedict R. Gaster, Laurent Morichetti and Lee Howes With additions and fixes from: Brian Cole, March 3rd 2010 and April 2012 Matt Gruenke, April 2012. Bruce Merry, February 2013. Tom Deakin and Simon McIntosh-Smith, July 2013 James Price, 2015-
- Version
- 2.2.0
- Date
- 2019-09-18
Optional extension support
cl_ext_device_fission
#define CL_HPP_USE_CL_DEVICE_FISSION
cl_khr_d3d10_sharing
#define CL_HPP_USE_DX_INTEROP
cl_khr_sub_groups
#define CL_HPP_USE_CL_SUB_GROUPS_KHR
cl_khr_image2d_from_buffer
#define CL_HPP_USE_CL_IMAGE2D_FROM_BUFFER_KHR
Doxygen documentation for this header is available here:
http://khronosgroup.github.io/OpenCL-CLHPP/
The latest version of this header can be found on the GitHub releases page:
https://github.com/KhronosGroup/OpenCL-CLHPP/releases
Bugs and patches can be submitted to the GitHub repository:
https://github.com/KhronosGroup/OpenCL-CLHPP
Definition in file opencl.hpp.