DPC++ Runtime
Runtime libraries for oneAPI Data Parallel C++
cl::sycl::detail::image_accessor< DataT, Dimensions, AccessMode, AccessTarget, IsPlaceholder > Class Template Reference

#include <CL/sycl/accessor.hpp>

Inheritance diagram for cl::sycl::detail::image_accessor< DataT, Dimensions, AccessMode, AccessTarget, IsPlaceholder >:
Collaboration diagram for cl::sycl::detail::image_accessor< DataT, Dimensions, AccessMode, AccessTarget, IsPlaceholder >:

Public Types

using value_type = DataT
 
using reference = DataT &
 
using const_reference = const DataT &
 

Public Member Functions

template<typename AllocatorT , int Dims = Dimensions, typename = detail::enable_if_t<(Dims > 0 && Dims <= 3) && IsHostImageAcc>>
 image_accessor (image< Dims, AllocatorT > &ImageRef, int ImageElementSize)
 
template<typename AllocatorT , int Dims = Dimensions, typename = detail::enable_if_t<(Dims > 0 && Dims <= 3) && IsImageAcc>>
 image_accessor (image< Dims, AllocatorT > &ImageRef, handler &CommandGroupHandlerRef, int ImageElementSize)
 
bool operator== (const image_accessor &Rhs) const
 
bool operator!= (const image_accessor &Rhs) const
 
 __SYCL2020_DEPRECATED ("get_count() is deprecated, please use size() instead") size_t get_count() const
 
size_t size () const noexcept
 
template<int Dims = Dimensions, typename = detail::enable_if_t<(Dims > 0)>>
range< Dims > get_range () const
 
template<typename CoordT , int Dims = Dimensions, typename = detail::enable_if_t< (Dims > 0) && (IsValidCoordDataT<Dims, CoordT>::value) && (detail::is_genint<CoordT>::value) && ((IsImageAcc && IsImageAccessReadOnly) || (IsHostImageAcc && IsImageAccessAnyRead))>>
DataT read (const CoordT &Coords) const
 
template<typename CoordT , int Dims = Dimensions, typename = detail::enable_if_t< (Dims > 0) && (IsValidCoordDataT<Dims, CoordT>::value) && ((IsImageAcc && IsImageAccessReadOnly) || (IsHostImageAcc && IsImageAccessAnyRead))>>
DataT read (const CoordT &Coords, const sampler &Smpl) const
 
template<typename CoordT , int Dims = Dimensions, typename = detail::enable_if_t< (Dims > 0) && (detail::is_genint<CoordT>::value) && (IsValidCoordDataT<Dims, CoordT>::value) && ((IsImageAcc && IsImageAccessWriteOnly) || (IsHostImageAcc && IsImageAccessAnyWrite))>>
void write (const CoordT &Coords, const DataT &Color) const
 
- Public Member Functions inherited from cl::sycl::detail::AccessorBaseHost
 AccessorBaseHost (id< 3 > Offset, range< 3 > AccessRange, range< 3 > MemoryRange, access::mode AccessMode, detail::SYCLMemObjI *SYCLMemObject, int Dims, int ElemSize, int OffsetInBytes=0, bool IsSubBuffer=false)
 

Friends

template<typename T1 , int T2, access::mode T3, access::placeholder T4>
class __image_array_slice__
 
class sycl::ext::intel::experimental::esimd::detail::AccessorPrivateProxy
 

Additional Inherited Members

- Protected Member Functions inherited from cl::sycl::detail::AccessorBaseHost
id< 3 > & getOffset ()
 
range< 3 > & getAccessRange ()
 
range< 3 > & getMemoryRange ()
 
void * getPtr ()
 
unsigned int getElemSize () const
 
const id< 3 > & getOffset () const
 
const range< 3 > & getAccessRange () const
 
const range< 3 > & getMemoryRange () const
 
void * getPtr () const
 
template<class Obj >
decltype(Obj::impl) friend getSyclObjImpl (const Obj &SyclObject)
 
- Protected Attributes inherited from cl::sycl::detail::AccessorBaseHost
AccessorImplPtr impl
 

Detailed Description

template<typename DataT, int Dimensions, access::mode AccessMode, access::target AccessTarget, access::placeholder IsPlaceholder>
class cl::sycl::detail::image_accessor< DataT, Dimensions, AccessMode, AccessTarget, IsPlaceholder >

Definition at line 375 of file accessor.hpp.

Member Typedef Documentation

◆ const_reference

template<typename DataT , int Dimensions, access::mode AccessMode, access::target AccessTarget, access::placeholder IsPlaceholder>
using cl::sycl::detail::image_accessor< DataT, Dimensions, AccessMode, AccessTarget, IsPlaceholder >::const_reference = const DataT &

Definition at line 487 of file accessor.hpp.

◆ reference

template<typename DataT , int Dimensions, access::mode AccessMode, access::target AccessTarget, access::placeholder IsPlaceholder>
using cl::sycl::detail::image_accessor< DataT, Dimensions, AccessMode, AccessTarget, IsPlaceholder >::reference = DataT &

Definition at line 486 of file accessor.hpp.

◆ value_type

template<typename DataT , int Dimensions, access::mode AccessMode, access::target AccessTarget, access::placeholder IsPlaceholder>
using cl::sycl::detail::image_accessor< DataT, Dimensions, AccessMode, AccessTarget, IsPlaceholder >::value_type = DataT

Definition at line 485 of file accessor.hpp.

Constructor & Destructor Documentation

◆ image_accessor() [1/2]

template<typename DataT , int Dimensions, access::mode AccessMode, access::target AccessTarget, access::placeholder IsPlaceholder>
template<typename AllocatorT , int Dims = Dimensions, typename = detail::enable_if_t<(Dims > 0 && Dims <= 3) && IsHostImageAcc>>
cl::sycl::detail::image_accessor< DataT, Dimensions, AccessMode, AccessTarget, IsPlaceholder >::image_accessor ( image< Dims, AllocatorT > &  ImageRef,
int  ImageElementSize 
)
inline

Definition at line 502 of file accessor.hpp.

◆ image_accessor() [2/2]

template<typename DataT , int Dimensions, access::mode AccessMode, access::target AccessTarget, access::placeholder IsPlaceholder>
template<typename AllocatorT , int Dims = Dimensions, typename = detail::enable_if_t<(Dims > 0 && Dims <= 3) && IsImageAcc>>
cl::sycl::detail::image_accessor< DataT, Dimensions, AccessMode, AccessTarget, IsPlaceholder >::image_accessor ( image< Dims, AllocatorT > &  ImageRef,
handler CommandGroupHandlerRef,
int  ImageElementSize 
)
inline

Definition at line 531 of file accessor.hpp.

Member Function Documentation

◆ __SYCL2020_DEPRECATED()

template<typename DataT , int Dimensions, access::mode AccessMode, access::target AccessTarget, access::placeholder IsPlaceholder>
cl::sycl::detail::image_accessor< DataT, Dimensions, AccessMode, AccessTarget, IsPlaceholder >::__SYCL2020_DEPRECATED ( "get_count() is  deprecated,
please use size() instead  
) const
inline

Definition at line 602 of file accessor.hpp.

◆ get_range()

template<typename DataT , int Dimensions, access::mode AccessMode, access::target AccessTarget, access::placeholder IsPlaceholder>
template<int Dims = Dimensions, typename = detail::enable_if_t<(Dims > 0)>>
range<Dims> cl::sycl::detail::image_accessor< DataT, Dimensions, AccessMode, AccessTarget, IsPlaceholder >::get_range ( ) const
inline

Definition at line 607 of file accessor.hpp.

◆ operator!=()

template<typename DataT , int Dimensions, access::mode AccessMode, access::target AccessTarget, access::placeholder IsPlaceholder>
bool cl::sycl::detail::image_accessor< DataT, Dimensions, AccessMode, AccessTarget, IsPlaceholder >::operator!= ( const image_accessor< DataT, Dimensions, AccessMode, AccessTarget, IsPlaceholder > &  Rhs) const
inline

Definition at line 569 of file accessor.hpp.

◆ operator==()

template<typename DataT , int Dimensions, access::mode AccessMode, access::target AccessTarget, access::placeholder IsPlaceholder>
bool cl::sycl::detail::image_accessor< DataT, Dimensions, AccessMode, AccessTarget, IsPlaceholder >::operator== ( const image_accessor< DataT, Dimensions, AccessMode, AccessTarget, IsPlaceholder > &  Rhs) const
inline

Definition at line 561 of file accessor.hpp.

◆ read() [1/2]

template<typename DataT , int Dimensions, access::mode AccessMode, access::target AccessTarget, access::placeholder IsPlaceholder>
template<typename CoordT , int Dims = Dimensions, typename = detail::enable_if_t< (Dims > 0) && (IsValidCoordDataT<Dims, CoordT>::value) && (detail::is_genint<CoordT>::value) && ((IsImageAcc && IsImageAccessReadOnly) || (IsHostImageAcc && IsImageAccessAnyRead))>>
DataT cl::sycl::detail::image_accessor< DataT, Dimensions, AccessMode, AccessTarget, IsPlaceholder >::read ( const CoordT &  Coords) const
inline

Definition at line 623 of file accessor.hpp.

◆ read() [2/2]

template<typename DataT , int Dimensions, access::mode AccessMode, access::target AccessTarget, access::placeholder IsPlaceholder>
template<typename CoordT , int Dims = Dimensions, typename = detail::enable_if_t< (Dims > 0) && (IsValidCoordDataT<Dims, CoordT>::value) && ((IsImageAcc && IsImageAccessReadOnly) || (IsHostImageAcc && IsImageAccessAnyRead))>>
DataT cl::sycl::detail::image_accessor< DataT, Dimensions, AccessMode, AccessTarget, IsPlaceholder >::read ( const CoordT &  Coords,
const sampler Smpl 
) const
inline

Definition at line 642 of file accessor.hpp.

◆ size()

template<typename DataT , int Dimensions, access::mode AccessMode, access::target AccessTarget, access::placeholder IsPlaceholder>
size_t cl::sycl::detail::image_accessor< DataT, Dimensions, AccessMode, AccessTarget, IsPlaceholder >::size ( ) const
inlinenoexcept

Definition at line 604 of file accessor.hpp.

◆ write()

template<typename DataT , int Dimensions, access::mode AccessMode, access::target AccessTarget, access::placeholder IsPlaceholder>
template<typename CoordT , int Dims = Dimensions, typename = detail::enable_if_t< (Dims > 0) && (detail::is_genint<CoordT>::value) && (IsValidCoordDataT<Dims, CoordT>::value) && ((IsImageAcc && IsImageAccessWriteOnly) || (IsHostImageAcc && IsImageAccessAnyWrite))>>
void cl::sycl::detail::image_accessor< DataT, Dimensions, AccessMode, AccessTarget, IsPlaceholder >::write ( const CoordT &  Coords,
const DataT &  Color 
) const
inline

Definition at line 667 of file accessor.hpp.

Friends And Related Function Documentation

◆ __image_array_slice__

template<typename DataT , int Dimensions, access::mode AccessMode, access::target AccessTarget, access::placeholder IsPlaceholder>
template<typename T1 , int T2, access::mode T3, access::placeholder T4>
friend class __image_array_slice__
friend

Definition at line 397 of file accessor.hpp.

◆ sycl::ext::intel::experimental::esimd::detail::AccessorPrivateProxy

template<typename DataT , int Dimensions, access::mode AccessMode, access::target AccessTarget, access::placeholder IsPlaceholder>
friend class sycl::ext::intel::experimental::esimd::detail:: AccessorPrivateProxy
friend

Definition at line 478 of file accessor.hpp.


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