Local accessor. More...
#include <sycl/accessor.hpp>
Public Types | |
using | value_type = DataT |
using | reference = DataT & |
using | const_reference = const DataT & |
Public Member Functions | |
local_accessor_base () | |
template<int Dims = Dimensions, typename = std::enable_if_t<Dims == 0>> | |
local_accessor_base (handler &, const detail::code_location CodeLoc=detail::code_location::current()) | |
template<int Dims = Dimensions, typename = std::enable_if_t<Dims == 0>> | |
local_accessor_base (handler &, const property_list &propList, const detail::code_location CodeLoc=detail::code_location::current()) | |
template<int Dims = Dimensions, typename = std::enable_if_t<(Dims > 0)>> | |
local_accessor_base (range< Dimensions > AllocationSize, handler &, const detail::code_location CodeLoc=detail::code_location::current()) | |
template<int Dims = Dimensions, typename = std::enable_if_t<(Dims > 0)>> | |
local_accessor_base (range< Dimensions > AllocationSize, handler &, const property_list &propList, const detail::code_location CodeLoc=detail::code_location::current()) | |
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 |
template<int Dims = Dimensions, typename = std::enable_if_t<(Dims > 0)>> | |
range< Dims > | get_range () const |
template<int Dims = Dimensions, typename = std::enable_if_t<Dims == 0 && (IsAccessAnyWrite || IsAccessReadOnly)>> | |
operator RefType () const | |
template<int Dims = Dimensions, typename = std::enable_if_t<(Dims > 0) && (IsAccessAnyWrite || IsAccessReadOnly)>> | |
RefType | operator[] (id< Dimensions > Index) const |
template<int Dims = Dimensions, typename = std::enable_if_t<Dims == 1 && (IsAccessAnyWrite || IsAccessReadOnly)>> | |
RefType | operator[] (size_t Index) const |
template<int Dims = Dimensions> | |
operator typename std::enable_if_t< Dims==0 &&AccessMode==access::mode::atomic, atomic< DataT, AS >> () const | |
template<int Dims = Dimensions> | |
std::enable_if_t<(Dims > 0) &&AccessMode==access::mode::atomic, atomic< DataT, AS > > | operator[] (id< Dimensions > Index) const |
template<int Dims = Dimensions> | |
std::enable_if_t< Dims==1 &&AccessMode==access::mode::atomic, atomic< DataT, AS > > | operator[] (size_t Index) const |
template<int Dims = Dimensions, typename = std::enable_if_t<(Dims > 1)>> | |
AccessorCommonT::template AccessorSubscript< Dims - 1, local_accessor_base< DataT, Dimensions, AccessMode, IsPlaceholder > > | operator[] (size_t Index) const |
bool | operator== (const local_accessor_base &Rhs) const |
bool | operator!= (const local_accessor_base &Rhs) const |
![]() | |
LocalAccessorBaseHost (sycl::range< 3 > Size, int Dims, int ElemSize, const property_list &PropertyList={}) | |
sycl::range< 3 > & | getSize () |
const sycl::range< 3 > & | getSize () const |
void * | getPtr () |
void * | getPtr () const |
int | getNumOfDims () |
int | getElementSize () |
const property_list & | getPropList () const |
Protected Types | |
using | AccessorCommonT = detail::accessor_common< DataT, Dimensions, AccessMode, access::target::local, IsPlaceholder > |
template<int Dims> | |
using | AccessorSubscript = typename AccessorCommonT::template AccessorSubscript< Dims, local_accessor_base< DataT, Dimensions, AccessMode, IsPlaceholder > > |
using | ConcreteASPtrType = typename detail::DecoratedType< DataT, AS >::type * |
using | RefType = detail::const_if_const_AS< AS, DataT > & |
using | PtrType = detail::const_if_const_AS< AS, DataT > * |
![]() | |
using | RefType = detail::const_if_const_AS< AS, DataT > & |
using | ConstRefType = const DataT & |
using | PtrType = detail::const_if_const_AS< AS, DataT > * |
Protected Member Functions | |
local_accessor_base (const detail::LocalAccessorImplPtr &Impl) | |
PtrType | getQualifiedPtr () const |
void * | getPtr () |
void * | getPtr () const |
const range< 3 > & | getSize () const |
range< 3 > & | getSize () |
void | GDBMethodsAnchor () |
template<int Dims = AdjustedDim> | |
size_t | getLinearIndex (id< Dims > Id) const |
template<class Obj > | |
frienddecltype(Obj::impl) const & | detail::getSyclObjImpl (const Obj &SyclObject) |
![]() | |
LocalAccessorBaseHost (const LocalAccessorImplPtr &Impl) | |
template<class Obj > | |
frienddecltype(Obj::impl) const & | detail::getSyclObjImpl (const Obj &SyclObject) |
Protected Attributes | |
char | padding [sizeof(detail::LocalAccessorBaseDevice< AdjustedDim >)+sizeof(PtrType) - sizeof(detail::LocalAccessorBaseHost)] |
![]() | |
LocalAccessorImplPtr | impl |
Static Protected Attributes | |
constexpr static int | AdjustedDim = Dimensions == 0 ? 1 : Dimensions |
static constexpr bool | IsAccessAnyWrite = AccessorCommonT::IsAccessAnyWrite |
static constexpr bool | IsAccessReadOnly = AccessorCommonT::IsAccessReadOnly |
static constexpr bool | IsConst = AccessorCommonT::IsConst |
![]() | |
constexpr static access::address_space | AS |
constexpr static bool | IsHostBuf |
constexpr static bool | IsHostTask |
constexpr static bool | IsPlaceH |
constexpr static bool | IsGlobalBuf |
constexpr static bool | IsConstantBuf |
constexpr static bool | IsAccessAnyWrite |
constexpr static bool | IsAccessReadOnly |
static constexpr bool | IsConst |
constexpr static bool | IsAccessReadWrite |
constexpr static bool | IsAccessAtomic |
Friends | |
template<typename DataT_ , int Dimensions_> | |
class | local_accessor |
template<class T > | |
T | detail::createSyclObjFromImpl (decltype(T::impl) ImplObj) |
Local accessor.
Definition at line 2131 of file accessor.hpp.
|
protected |
Definition at line 2140 of file accessor.hpp.
|
protected |
Definition at line 2153 of file accessor.hpp.
|
protected |
Definition at line 2158 of file accessor.hpp.
using sycl::_V1::local_accessor_base< DataT, Dimensions, AccessMode, IsPlaceholder >::const_reference = const DataT & |
Definition at line 2252 of file accessor.hpp.
|
protected |
Definition at line 2161 of file accessor.hpp.
using sycl::_V1::local_accessor_base< DataT, Dimensions, AccessMode, IsPlaceholder >::reference = DataT & |
Definition at line 2251 of file accessor.hpp.
|
protected |
Definition at line 2160 of file accessor.hpp.
using sycl::_V1::local_accessor_base< DataT, Dimensions, AccessMode, IsPlaceholder >::value_type = DataT |
Definition at line 2250 of file accessor.hpp.
|
inline |
Definition at line 2196 of file accessor.hpp.
|
inlineprotected |
Definition at line 2201 of file accessor.hpp.
|
inline |
Definition at line 2255 of file accessor.hpp.
|
inline |
Definition at line 2270 of file accessor.hpp.
|
inline |
Definition at line 2288 of file accessor.hpp.
|
inline |
Definition at line 2306 of file accessor.hpp.
|
inline |
Definition at line 2326 of file accessor.hpp.
|
protected |
|
inlineprotected |
Definition at line 2220 of file accessor.hpp.
|
inline |
Definition at line 2331 of file accessor.hpp.
|
inline |
Definition at line 2324 of file accessor.hpp.
|
inlineprotected |
Definition at line 2233 of file accessor.hpp.
|
inlineprotected |
Definition at line 2212 of file accessor.hpp.
References sycl::_V1::detail::LocalAccessorBaseHost::getPtr().
|
inlineprotected |
Definition at line 2213 of file accessor.hpp.
References sycl::_V1::detail::LocalAccessorBaseHost::getPtr().
|
inlineprotected |
Definition at line 2208 of file accessor.hpp.
References sycl::_V1::detail::LocalAccessorBaseHost::getPtr().
|
inlineprotected |
Definition at line 2217 of file accessor.hpp.
References sycl::_V1::detail::LocalAccessorBaseHost::getSize().
|
inlineprotected |
Definition at line 2214 of file accessor.hpp.
References sycl::_V1::detail::LocalAccessorBaseHost::getSize().
|
inline |
Definition at line 2338 of file accessor.hpp.
|
inline |
Definition at line 2358 of file accessor.hpp.
|
inline |
Definition at line 2393 of file accessor.hpp.
|
inline |
Definition at line 2390 of file accessor.hpp.
References sycl::_V1::detail::LocalAccessorBaseHost::impl.
|
inline |
Definition at line 2345 of file accessor.hpp.
References sycl::_V1::detail::getLinearIndex().
|
inline |
Definition at line 2368 of file accessor.hpp.
References sycl::_V1::detail::getLinearIndex().
|
inline |
Definition at line 2353 of file accessor.hpp.
|
inline |
Definition at line 2377 of file accessor.hpp.
|
inline |
Definition at line 2386 of file accessor.hpp.
|
inlinenoexcept |
Definition at line 2328 of file accessor.hpp.
|
friend |
|
friend |
Definition at line 2247 of file accessor.hpp.
|
staticconstexprprotected |
Definition at line 2138 of file accessor.hpp.
|
staticconstexprprotected |
Definition at line 2148 of file accessor.hpp.
|
staticconstexprprotected |
Definition at line 2149 of file accessor.hpp.
|
staticconstexprprotected |
Definition at line 2150 of file accessor.hpp.
|
protected |
Definition at line 2204 of file accessor.hpp.