! \class Image1DBuffer * \brief Image interface for 1D buffer images. */
| 3725 | * \brief Image interface for 1D buffer images. |
| 3726 | */ |
| 3727 | class Image1DBuffer : public Image |
| 3728 | { |
| 3729 | public: |
| 3730 | Image1DBuffer( |
| 3731 | const Context& context, |
| 3732 | cl_mem_flags flags, |
| 3733 | ImageFormat format, |
| 3734 | ::size_t width, |
| 3735 | const Buffer &buffer, |
| 3736 | cl_int* err = NULL) |
| 3737 | { |
| 3738 | cl_int error; |
| 3739 | cl_image_desc desc = |
| 3740 | { |
| 3741 | CL_MEM_OBJECT_IMAGE1D_BUFFER, |
| 3742 | width, |
| 3743 | 0, 0, 0, 0, 0, 0, 0, |
| 3744 | buffer() |
| 3745 | }; |
| 3746 | object_ = ::clCreateImage( |
| 3747 | context(), |
| 3748 | flags, |
| 3749 | &format, |
| 3750 | &desc, |
| 3751 | NULL, |
| 3752 | &error); |
| 3753 | |
| 3754 | detail::errHandler(error, __CREATE_IMAGE_ERR); |
| 3755 | if (err != NULL) { |
| 3756 | *err = error; |
| 3757 | } |
| 3758 | } |
| 3759 | |
| 3760 | Image1DBuffer() { } |
| 3761 | |
| 3762 | __CL_EXPLICIT_CONSTRUCTORS Image1DBuffer(const cl_mem& image1D) : Image(image1D) { } |
| 3763 | |
| 3764 | Image1DBuffer& operator = (const cl_mem& rhs) |
| 3765 | { |
| 3766 | Image::operator=(rhs); |
| 3767 | return *this; |
| 3768 | } |
| 3769 | |
| 3770 | /*! \brief Copy constructor to forward copy to the superclass correctly. |
| 3771 | * Required for MSVC. |
| 3772 | */ |
| 3773 | Image1DBuffer(const Image1DBuffer& img) : Image(img) {} |
| 3774 | |
| 3775 | /*! \brief Copy assignment to forward copy to the superclass correctly. |
| 3776 | * Required for MSVC. |
| 3777 | */ |
| 3778 | Image1DBuffer& operator = (const Image1DBuffer &img) |
| 3779 | { |
| 3780 | Image::operator=(img); |
| 3781 | return *this; |
| 3782 | } |
| 3783 | |
| 3784 | #if defined(CL_HPP_RVALUE_REFERENCES_SUPPORTED) |
nothing calls this directly
no outgoing calls
no test coverage detected