DPC++ Runtime
Runtime libraries for oneAPI Data Parallel C++
cl::sycl::image< Dimensions, AllocatorT > Class Template Reference

Defines a shared image data. More...

#include <CL/sycl/detail/image_impl.hpp>

Public Member Functions

 image (image_channel_order Order, image_channel_type Type, const range< Dimensions > &Range, const property_list &PropList={})
 
 image (image_channel_order Order, image_channel_type Type, const range< Dimensions > &Range, AllocatorT Allocator, const property_list &PropList={})
 
template<bool B = (Dimensions > 1)>
 image (image_channel_order Order, image_channel_type Type, const range< Dimensions > &Range, const typename detail::enable_if_t< B, range< Dimensions - 1 >> &Pitch, const property_list &PropList={})
 
template<bool B = (Dimensions > 1)>
 image (image_channel_order Order, image_channel_type Type, const range< Dimensions > &Range, const typename detail::enable_if_t< B, range< Dimensions - 1 >> &Pitch, AllocatorT Allocator, const property_list &PropList={})
 
 image (void *HostPointer, image_channel_order Order, image_channel_type Type, const range< Dimensions > &Range, const property_list &PropList={})
 
 image (void *HostPointer, image_channel_order Order, image_channel_type Type, const range< Dimensions > &Range, AllocatorT Allocator, const property_list &PropList={})
 
 image (const void *HostPointer, image_channel_order Order, image_channel_type Type, const range< Dimensions > &Range, const property_list &PropList={})
 
 image (const void *HostPointer, image_channel_order Order, image_channel_type Type, const range< Dimensions > &Range, AllocatorT Allocator, const property_list &PropList={})
 
template<bool B = (Dimensions > 1)>
 image (void *HostPointer, image_channel_order Order, image_channel_type Type, const range< Dimensions > &Range, const typename detail::enable_if_t< B, range< Dimensions - 1 >> &Pitch, const property_list &PropList={})
 
template<bool B = (Dimensions > 1)>
 image (void *HostPointer, image_channel_order Order, image_channel_type Type, const range< Dimensions > &Range, const typename detail::enable_if_t< B, range< Dimensions - 1 >> &Pitch, AllocatorT Allocator, const property_list &PropList={})
 
 image (std::shared_ptr< void > &HostPointer, image_channel_order Order, image_channel_type Type, const range< Dimensions > &Range, const property_list &PropList={})
 
 image (std::shared_ptr< void > &HostPointer, image_channel_order Order, image_channel_type Type, const range< Dimensions > &Range, AllocatorT Allocator, const property_list &PropList={})
 
template<bool B = (Dimensions > 1)>
 image (std::shared_ptr< void > &HostPointer, image_channel_order Order, image_channel_type Type, const range< Dimensions > &Range, const typename detail::enable_if_t< B, range< Dimensions - 1 >> &Pitch, const property_list &PropList={})
 
template<bool B = (Dimensions > 1)>
 image (std::shared_ptr< void > &HostPointer, image_channel_order Order, image_channel_type Type, const range< Dimensions > &Range, const typename detail::enable_if_t< B, range< Dimensions - 1 >> &Pitch, AllocatorT Allocator, const property_list &PropList={})
 
 image (cl_mem ClMemObject, const context &SyclContext, event AvailableEvent={})
 
 image (const image &rhs)=default
 
 image (image &&rhs)=default
 
imageoperator= (const image &rhs)=default
 
imageoperator= (image &&rhs)=default
 
 ~image ()=default
 
bool operator== (const image &rhs) const
 
bool operator!= (const image &rhs) const
 
template<typename propertyT >
bool has_property () const
 
template<typename propertyT >
propertyT get_property () const
 
range< Dimensions > get_range () const
 
template<bool B = (Dimensions > 1)>
detail::enable_if_t< B, range< Dimensions - 1 > > get_pitch () const
 
size_t get_size () const
 
 __SYCL2020_DEPRECATED ("get_count() is deprecated, please use size() instead") size_t get_count() const
 
size_t size () const noexcept
 
AllocatorT get_allocator () const
 
template<typename DataT , access::mode AccessMode>
accessor< detail::EnableIfImgAccDataT< DataT >, Dimensions, AccessMode, access::target::image, access::placeholder::false_t, ext::oneapi::accessor_property_list<> > get_access (handler &commandGroupHandler)
 
template<typename DataT , access::mode AccessMode>
accessor< detail::EnableIfImgAccDataT< DataT >, Dimensions, AccessMode, access::target::host_image, access::placeholder::false_t, ext::oneapi::accessor_property_list<> > get_access ()
 
template<typename Destination = std::nullptr_t>
void set_final_data (Destination finalData=nullptr)
 
void set_write_back (bool flag=true)
 

Detailed Description

template<int Dimensions = 1, typename AllocatorT = cl::sycl::image_allocator>
class cl::sycl::image< Dimensions, AllocatorT >

Defines a shared image data.

Images can be 1-, 2-, and 3-dimensional. They have to be accessed using the accessor class.

See also
Accessors
sampler

Definition at line 29 of file image_impl.hpp.

Constructor & Destructor Documentation

◆ image() [1/17]

template<int Dimensions = 1, typename AllocatorT = cl::sycl::image_allocator>
cl::sycl::image< Dimensions, AllocatorT >::image ( image_channel_order  Order,
image_channel_type  Type,
const range< Dimensions > &  Range,
const property_list PropList = {} 
)
inline

Definition at line 78 of file image.hpp.

◆ image() [2/17]

template<int Dimensions = 1, typename AllocatorT = cl::sycl::image_allocator>
cl::sycl::image< Dimensions, AllocatorT >::image ( image_channel_order  Order,
image_channel_type  Type,
const range< Dimensions > &  Range,
AllocatorT  Allocator,
const property_list PropList = {} 
)
inline

Definition at line 86 of file image.hpp.

◆ image() [3/17]

template<int Dimensions = 1, typename AllocatorT = cl::sycl::image_allocator>
template<bool B = (Dimensions > 1)>
cl::sycl::image< Dimensions, AllocatorT >::image ( image_channel_order  Order,
image_channel_type  Type,
const range< Dimensions > &  Range,
const typename detail::enable_if_t< B, range< Dimensions - 1 >> &  Pitch,
const property_list PropList = {} 
)
inline

Definition at line 98 of file image.hpp.

◆ image() [4/17]

template<int Dimensions = 1, typename AllocatorT = cl::sycl::image_allocator>
template<bool B = (Dimensions > 1)>
cl::sycl::image< Dimensions, AllocatorT >::image ( image_channel_order  Order,
image_channel_type  Type,
const range< Dimensions > &  Range,
const typename detail::enable_if_t< B, range< Dimensions - 1 >> &  Pitch,
AllocatorT  Allocator,
const property_list PropList = {} 
)
inline

Definition at line 110 of file image.hpp.

◆ image() [5/17]

template<int Dimensions = 1, typename AllocatorT = cl::sycl::image_allocator>
cl::sycl::image< Dimensions, AllocatorT >::image ( void *  HostPointer,
image_channel_order  Order,
image_channel_type  Type,
const range< Dimensions > &  Range,
const property_list PropList = {} 
)
inline

Definition at line 121 of file image.hpp.

◆ image() [6/17]

template<int Dimensions = 1, typename AllocatorT = cl::sycl::image_allocator>
cl::sycl::image< Dimensions, AllocatorT >::image ( void *  HostPointer,
image_channel_order  Order,
image_channel_type  Type,
const range< Dimensions > &  Range,
AllocatorT  Allocator,
const property_list PropList = {} 
)
inline

Definition at line 129 of file image.hpp.

◆ image() [7/17]

template<int Dimensions = 1, typename AllocatorT = cl::sycl::image_allocator>
cl::sycl::image< Dimensions, AllocatorT >::image ( const void *  HostPointer,
image_channel_order  Order,
image_channel_type  Type,
const range< Dimensions > &  Range,
const property_list PropList = {} 
)
inline

Definition at line 139 of file image.hpp.

◆ image() [8/17]

template<int Dimensions = 1, typename AllocatorT = cl::sycl::image_allocator>
cl::sycl::image< Dimensions, AllocatorT >::image ( const void *  HostPointer,
image_channel_order  Order,
image_channel_type  Type,
const range< Dimensions > &  Range,
AllocatorT  Allocator,
const property_list PropList = {} 
)
inline

Definition at line 148 of file image.hpp.

◆ image() [9/17]

template<int Dimensions = 1, typename AllocatorT = cl::sycl::image_allocator>
template<bool B = (Dimensions > 1)>
cl::sycl::image< Dimensions, AllocatorT >::image ( void *  HostPointer,
image_channel_order  Order,
image_channel_type  Type,
const range< Dimensions > &  Range,
const typename detail::enable_if_t< B, range< Dimensions - 1 >> &  Pitch,
const property_list PropList = {} 
)
inline

Definition at line 160 of file image.hpp.

◆ image() [10/17]

template<int Dimensions = 1, typename AllocatorT = cl::sycl::image_allocator>
template<bool B = (Dimensions > 1)>
cl::sycl::image< Dimensions, AllocatorT >::image ( void *  HostPointer,
image_channel_order  Order,
image_channel_type  Type,
const range< Dimensions > &  Range,
const typename detail::enable_if_t< B, range< Dimensions - 1 >> &  Pitch,
AllocatorT  Allocator,
const property_list PropList = {} 
)
inline

Definition at line 172 of file image.hpp.

◆ image() [11/17]

template<int Dimensions = 1, typename AllocatorT = cl::sycl::image_allocator>
cl::sycl::image< Dimensions, AllocatorT >::image ( std::shared_ptr< void > &  HostPointer,
image_channel_order  Order,
image_channel_type  Type,
const range< Dimensions > &  Range,
const property_list PropList = {} 
)
inline

Definition at line 183 of file image.hpp.

◆ image() [12/17]

template<int Dimensions = 1, typename AllocatorT = cl::sycl::image_allocator>
cl::sycl::image< Dimensions, AllocatorT >::image ( std::shared_ptr< void > &  HostPointer,
image_channel_order  Order,
image_channel_type  Type,
const range< Dimensions > &  Range,
AllocatorT  Allocator,
const property_list PropList = {} 
)
inline

Definition at line 192 of file image.hpp.

◆ image() [13/17]

template<int Dimensions = 1, typename AllocatorT = cl::sycl::image_allocator>
template<bool B = (Dimensions > 1)>
cl::sycl::image< Dimensions, AllocatorT >::image ( std::shared_ptr< void > &  HostPointer,
image_channel_order  Order,
image_channel_type  Type,
const range< Dimensions > &  Range,
const typename detail::enable_if_t< B, range< Dimensions - 1 >> &  Pitch,
const property_list PropList = {} 
)
inline

Definition at line 204 of file image.hpp.

◆ image() [14/17]

template<int Dimensions = 1, typename AllocatorT = cl::sycl::image_allocator>
template<bool B = (Dimensions > 1)>
cl::sycl::image< Dimensions, AllocatorT >::image ( std::shared_ptr< void > &  HostPointer,
image_channel_order  Order,
image_channel_type  Type,
const range< Dimensions > &  Range,
const typename detail::enable_if_t< B, range< Dimensions - 1 >> &  Pitch,
AllocatorT  Allocator,
const property_list PropList = {} 
)
inline

Definition at line 216 of file image.hpp.

◆ image() [15/17]

template<int Dimensions = 1, typename AllocatorT = cl::sycl::image_allocator>
cl::sycl::image< Dimensions, AllocatorT >::image ( cl_mem  ClMemObject,
const context SyclContext,
event  AvailableEvent = {} 
)
inline

Definition at line 228 of file image.hpp.

◆ image() [16/17]

template<int Dimensions = 1, typename AllocatorT = cl::sycl::image_allocator>
cl::sycl::image< Dimensions, AllocatorT >::image ( const image< Dimensions, AllocatorT > &  rhs)
default

◆ image() [17/17]

template<int Dimensions = 1, typename AllocatorT = cl::sycl::image_allocator>
cl::sycl::image< Dimensions, AllocatorT >::image ( image< Dimensions, AllocatorT > &&  rhs)
default

◆ ~image()

template<int Dimensions = 1, typename AllocatorT = cl::sycl::image_allocator>
cl::sycl::image< Dimensions, AllocatorT >::~image ( )
default

Member Function Documentation

◆ __SYCL2020_DEPRECATED()

template<int Dimensions = 1, typename AllocatorT = cl::sycl::image_allocator>
cl::sycl::image< Dimensions, AllocatorT >::__SYCL2020_DEPRECATED ( "get_count() is  deprecated,
please use size() instead  
) const
inline

Definition at line 272 of file image.hpp.

◆ get_access() [1/2]

template<int Dimensions = 1, typename AllocatorT = cl::sycl::image_allocator>
template<typename DataT , access::mode AccessMode>
accessor<detail::EnableIfImgAccDataT<DataT>, Dimensions, AccessMode, access::target::host_image, access::placeholder::false_t, ext::oneapi::accessor_property_list<> > cl::sycl::image< Dimensions, AllocatorT >::get_access ( )
inline

Definition at line 296 of file image.hpp.

◆ get_access() [2/2]

template<int Dimensions = 1, typename AllocatorT = cl::sycl::image_allocator>
template<typename DataT , access::mode AccessMode>
accessor<detail::EnableIfImgAccDataT<DataT>, Dimensions, AccessMode, access::target::image, access::placeholder::false_t, ext::oneapi::accessor_property_list<> > cl::sycl::image< Dimensions, AllocatorT >::get_access ( handler commandGroupHandler)
inline

Definition at line 285 of file image.hpp.

◆ get_allocator()

template<int Dimensions = 1, typename AllocatorT = cl::sycl::image_allocator>
AllocatorT cl::sycl::image< Dimensions, AllocatorT >::get_allocator ( ) const
inline

Definition at line 277 of file image.hpp.

◆ get_pitch()

template<int Dimensions = 1, typename AllocatorT = cl::sycl::image_allocator>
template<bool B = (Dimensions > 1)>
detail::enable_if_t<B, range<Dimensions - 1> > cl::sycl::image< Dimensions, AllocatorT >::get_pitch ( ) const
inline

Definition at line 264 of file image.hpp.

◆ get_property()

template<int Dimensions = 1, typename AllocatorT = cl::sycl::image_allocator>
template<typename propertyT >
propertyT cl::sycl::image< Dimensions, AllocatorT >::get_property ( ) const
inline

Definition at line 256 of file image.hpp.

◆ get_range()

template<int Dimensions = 1, typename AllocatorT = cl::sycl::image_allocator>
range<Dimensions> cl::sycl::image< Dimensions, AllocatorT >::get_range ( ) const
inline

Definition at line 260 of file image.hpp.

◆ get_size()

template<int Dimensions = 1, typename AllocatorT = cl::sycl::image_allocator>
size_t cl::sycl::image< Dimensions, AllocatorT >::get_size ( ) const
inline

Definition at line 269 of file image.hpp.

◆ has_property()

template<int Dimensions = 1, typename AllocatorT = cl::sycl::image_allocator>
template<typename propertyT >
bool cl::sycl::image< Dimensions, AllocatorT >::has_property ( ) const
inline

Definition at line 252 of file image.hpp.

◆ operator!=()

template<int Dimensions = 1, typename AllocatorT = cl::sycl::image_allocator>
bool cl::sycl::image< Dimensions, AllocatorT >::operator!= ( const image< Dimensions, AllocatorT > &  rhs) const
inline

Definition at line 249 of file image.hpp.

◆ operator=() [1/2]

template<int Dimensions = 1, typename AllocatorT = cl::sycl::image_allocator>
image& cl::sycl::image< Dimensions, AllocatorT >::operator= ( const image< Dimensions, AllocatorT > &  rhs)
default

◆ operator=() [2/2]

template<int Dimensions = 1, typename AllocatorT = cl::sycl::image_allocator>
image& cl::sycl::image< Dimensions, AllocatorT >::operator= ( image< Dimensions, AllocatorT > &&  rhs)
default

◆ operator==()

template<int Dimensions = 1, typename AllocatorT = cl::sycl::image_allocator>
bool cl::sycl::image< Dimensions, AllocatorT >::operator== ( const image< Dimensions, AllocatorT > &  rhs) const
inline

Definition at line 247 of file image.hpp.

◆ set_final_data()

template<int Dimensions = 1, typename AllocatorT = cl::sycl::image_allocator>
template<typename Destination = std::nullptr_t>
void cl::sycl::image< Dimensions, AllocatorT >::set_final_data ( Destination  finalData = nullptr)
inline

Definition at line 303 of file image.hpp.

◆ set_write_back()

template<int Dimensions = 1, typename AllocatorT = cl::sycl::image_allocator>
void cl::sycl::image< Dimensions, AllocatorT >::set_write_back ( bool  flag = true)
inline

Definition at line 307 of file image.hpp.

◆ size()

template<int Dimensions = 1, typename AllocatorT = cl::sycl::image_allocator>
size_t cl::sycl::image< Dimensions, AllocatorT >::size ( ) const
inlinenoexcept

Definition at line 274 of file image.hpp.


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