OpenCL C++ Bindings: cl::Image2D Class Reference

OpenCL C++ Bindings

Loading...
Searching...
No Matches
Public Member Functions | List of all members
cl::Image2D Class Reference

Class interface for 2D Image Memory objects. More...

`#include <opencl.hpp>`

Inheritance diagram for cl::Image2D:

## Public Member Functions
| Image2D (const Context &context, cl_mem_flags flags, ImageFormat format, size_type width, size_type height, size_type row_pitch=0, void *host_ptr=nullptr, cl_int *err=nullptr)
| Constructs a 2D Image in a specified context.
| Image2D (const Context &context, ImageFormat format, const Buffer &sourceBuffer, size_type width, size_type height, size_type row_pitch=0, cl_int *err=nullptr)
| Constructs a 2D Image from a buffer.
| Image2D (const Context &context, cl_channel_order order, const Image &sourceImage, cl_int *err=nullptr)
| Constructs a 2D Image from an image.
| Image2D (const Context &context, const vector< cl_mem_properties > &properties, cl_mem_flags flags, ImageFormat format, size_type width, size_type height, size_type row_pitch=0, void *host_ptr=nullptr, cl_int *err=nullptr)
| Constructs a Image2D with specified properties.
| Image2D (const Context &context, const vector< cl_mem_properties > &properties, cl_mem_flags flags, ImageFormat format, const Buffer &buffer, size_type width, size_type height, size_type row_pitch=0, cl_int *err=nullptr)
| Constructs a Image2D with specified properties.
| Image2D ()
| Default constructor - initializes to nullptr.
| Image2D (const cl_mem &image2D, bool retainObject=false)
| Constructor from cl_mem - takes ownership.
Image2D & | operator= (const cl_mem &rhs)
| Assignment from cl_mem - performs shallow copy.
Public Member Functions inherited from cl::Image
template<typename T >
cl_int | getImageInfo (cl_image_info name, T *param) const
| Wrapper for clGetImageInfo().
template<cl_image_info name>
detail::param_traits< detail::cl_image_info, name >::param_type | getImageInfo (cl_int *err=nullptr) const
| Wrapper for clGetImageInfo() that returns by value.
Public Member Functions inherited from cl::Memory
| Memory ()
| Default constructor - initializes to nullptr.
| Memory (const cl_mem &memory, bool retainObject)
| Constructor from cl_mem - takes ownership.
Memory & | operator= (const cl_mem &rhs)
| Assignment operator from cl_mem - takes ownership.
template<typename T >
cl_int | getInfo (cl_mem_info name, T *param) const
| Wrapper for clGetMemObjectInfo().
template<cl_mem_info name>
detail::param_traits< detail::cl_mem_info, name >::param_type | getInfo (cl_int *err=nullptr) const
| Wrapper for clGetMemObjectInfo() that returns by value.
cl_int | setDestructorCallback (void(CL_CALLBACK *pfn_notify)(cl_mem, void *), void *user_data=nullptr)
| Registers a callback function to be called when the memory object is no longer needed.
Public Member Functions inherited from cl::detail::Wrapper< cl_mem >
| Wrapper (const cl_type &obj, bool retainObject)
| Wrapper (const Wrapper< cl_type > &rhs)
| Wrapper (Wrapper< cl_type > &&rhs) noexcept
Wrapper< cl_type > & | operator= (const Wrapper< cl_type > &rhs)
Wrapper< cl_type > & | operator= (Wrapper< cl_type > &&rhs)
Wrapper< cl_type > & | operator= (const cl_type &rhs)
const cl_type & | operator() () const
cl_type & | operator() ()
cl_type | get () const

## Additional Inherited Members
Public Types inherited from cl::detail::Wrapper< cl_mem >
typedef cl_mem | cl_type
Protected Member Functions inherited from cl::Image
| Image ()
| Default constructor - initializes to nullptr.
| Image (const cl_mem &image, bool retainObject=false)
| Constructor from cl_mem - takes ownership.
Image & | operator= (const cl_mem &rhs)
| Assignment from cl_mem - performs shallow copy.
Protected Member Functions inherited from cl::detail::Wrapper< cl_mem >
cl_int | retain () const
cl_int | release () const
Protected Attributes inherited from cl::detail::Wrapper< cl_mem >
cl_type | object_

## Detailed Description

Class interface for 2D Image Memory objects.

See Memory for details about copy semantics, etc.

See also
  Memory

Definition at line 5144 of file opencl.hpp.

## Constructor & Destructor Documentation

## ◆ Image2D() [1/7]

cl::Image2D::Image2D | ( | const Context & | context,
|  | cl_mem_flags | flags,
|  | ImageFormat | format,
|  | size_type | width,
|  | size_type | height,
|  | size_type | row_pitch = 0,
|  | void * | host_ptr = nullptr,
|  | cl_int * | err = nullptr )
| inline

Constructs a 2D Image in a specified context.

Wraps clCreateImage().

Definition at line 5151 of file opencl.hpp.

## ◆ Image2D() [2/7]

cl::Image2D::Image2D | ( | const Context & | context,
|  | ImageFormat | format,
|  | const Buffer & | sourceBuffer,
|  | size_type | width,
|  | size_type | height,
|  | size_type | row_pitch = 0,
|  | cl_int * | err = nullptr )
| inline

Constructs a 2D Image from a buffer.

Note
  This will share storage with the underlying buffer.

Requires OpenCL 2.0 or newer or OpenCL 1.2 and the cl_khr_image2d_from_buffer extension.

Wraps clCreateImage().

Definition at line 5222 of file opencl.hpp.

## ◆ Image2D() [3/7]

cl::Image2D::Image2D | ( | const Context & | context,
|  | cl_channel_order | order,
|  | const Image & | sourceImage,
|  | cl_int * | err = nullptr )
| inline

Constructs a 2D Image from an image.

Note
  This will share storage with the underlying image but may reinterpret the channel order and type.

The image will be created matching with a descriptor matching the source.

Parameters

  order | is the channel order to reinterpret the image data as. The channel order may differ as described in the OpenCL 2.0 API specification.

Wraps clCreateImage().

Definition at line 5268 of file opencl.hpp.

## ◆ Image2D() [4/7]

cl::Image2D::Image2D | ( | const Context & | context,
|  | const vector< cl_mem_properties > & | properties,
|  | cl_mem_flags | flags,
|  | ImageFormat | format,
|  | size_type | width,
|  | size_type | height,
|  | size_type | row_pitch = 0,
|  | void * | host_ptr = nullptr,
|  | cl_int * | err = nullptr )
| inline

Constructs a Image2D with specified properties.

Wraps clCreateImageWithProperties().

Parameters

  properties | Optional list of properties for the image object and their corresponding values. The non-empty list must end with 0.
  host_ptr | Storage to be used if the CL_MEM_USE_HOST_PTR flag was specified. Note alignment & exclusivity requirements.

Definition at line 5329 of file opencl.hpp.

## ◆ Image2D() [5/7]

cl::Image2D::Image2D | ( | const Context & | context,
|  | const vector< cl_mem_properties > & | properties,
|  | cl_mem_flags | flags,
|  | ImageFormat | format,
|  | const Buffer & | buffer,
|  | size_type | width,
|  | size_type | height,
|  | size_type | row_pitch = 0,
|  | cl_int * | err = nullptr )
| inline

Constructs a Image2D with specified properties.

Wraps clCreateImageWithProperties().

Parameters

  properties | Optional list of properties for the image object and their corresponding values. The non-empty list must end with 0.
  buffer | Refer to a valid buffer or image memory object.

Definition at line 5365 of file opencl.hpp.

## ◆ Image2D() [6/7]

cl::Image2D::Image2D | ( |  | ) |
| inline

Default constructor - initializes to nullptr.

Definition at line 5396 of file opencl.hpp.

## ◆ Image2D() [7/7]

cl::Image2D::Image2D | ( | const cl_mem & | image2D,
|  | bool | retainObject = false )
| inlineexplicit

Constructor from cl_mem - takes ownership.

Parameters

  retainObject | will cause the constructor to retain its cl object. Defaults to false to maintain compatibility with earlier versions. See Memory for further details.

Definition at line 5405 of file opencl.hpp.

## Member Function Documentation

## ◆ operator=()

Image2D & cl::Image2D::operator= | ( | const cl_mem & | rhs | ) |
| inline

Assignment from cl_mem - performs shallow copy.

See Memory for further details.

Definition at line 5412 of file opencl.hpp.

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

- opencl.hpp