|
| buffer (const range< dimensions > &bufferRange, const property_list &propList={}, const detail::code_location CodeLoc=detail::code_location::current()) |
|
| buffer (const range< dimensions > &bufferRange, AllocatorT allocator, const property_list &propList={}, const detail::code_location CodeLoc=detail::code_location::current()) |
|
| buffer (T *hostData, const range< dimensions > &bufferRange, const property_list &propList={}, const detail::code_location CodeLoc=detail::code_location::current()) |
|
| buffer (T *hostData, const range< dimensions > &bufferRange, AllocatorT allocator, const property_list &propList={}, const detail::code_location CodeLoc=detail::code_location::current()) |
|
template<typename _T = T> |
| buffer (EnableIfSameNonConstIterators< T, _T > const *hostData, const range< dimensions > &bufferRange, const property_list &propList={}, const detail::code_location CodeLoc=detail::code_location::current()) |
|
template<typename _T = T> |
| buffer (EnableIfSameNonConstIterators< T, _T > const *hostData, const range< dimensions > &bufferRange, AllocatorT allocator, const property_list &propList={}, const detail::code_location CodeLoc=detail::code_location::current()) |
|
| buffer (const std::shared_ptr< T > &hostData, const range< dimensions > &bufferRange, AllocatorT allocator, const property_list &propList={}, const detail::code_location CodeLoc=detail::code_location::current()) |
|
| buffer (const std::shared_ptr< T[]> &hostData, const range< dimensions > &bufferRange, AllocatorT allocator, const property_list &propList={}, const detail::code_location CodeLoc=detail::code_location::current()) |
|
| buffer (const std::shared_ptr< T > &hostData, const range< dimensions > &bufferRange, const property_list &propList={}, const detail::code_location CodeLoc=detail::code_location::current()) |
|
| buffer (const std::shared_ptr< T[]> &hostData, const range< dimensions > &bufferRange, const property_list &propList={}, const detail::code_location CodeLoc=detail::code_location::current()) |
|
template<class InputIterator , int N = dimensions, typename = EnableIfOneDimension<N>, typename = EnableIfItInputIterator<InputIterator>> |
| buffer (InputIterator first, InputIterator last, AllocatorT allocator, const property_list &propList={}, const detail::code_location CodeLoc=detail::code_location::current()) |
|
template<class InputIterator , int N = dimensions, typename = EnableIfOneDimension<N>, typename = EnableIfItInputIterator<InputIterator>> |
| buffer (InputIterator first, InputIterator last, const property_list &propList={}, const detail::code_location CodeLoc=detail::code_location::current()) |
|
template<class Container , int N = dimensions, typename = EnableIfOneDimension<N>, typename = EnableIfContiguous<Container>> |
| buffer (Container &container, AllocatorT allocator, const property_list &propList={}, const detail::code_location CodeLoc=detail::code_location::current()) |
|
template<class Container , int N = dimensions, typename = EnableIfOneDimension<N>, typename = EnableIfContiguous<Container>> |
| buffer (Container &container, const property_list &propList={}, const detail::code_location CodeLoc=detail::code_location::current()) |
|
| buffer (buffer< T, dimensions, AllocatorT > &b, const id< dimensions > &baseIndex, const range< dimensions > &subRange, const detail::code_location CodeLoc=detail::code_location::current()) |
|
| buffer (const buffer &rhs, const detail::code_location CodeLoc=detail::code_location::current()) |
|
| buffer (buffer &&rhs, const detail::code_location CodeLoc=detail::code_location::current()) |
|
buffer & | operator= (const buffer &rhs)=default |
|
buffer & | operator= (buffer &&rhs)=default |
|
| ~buffer () |
|
bool | operator== (const buffer &rhs) const |
|
bool | operator!= (const buffer &rhs) const |
|
range< dimensions > | get_range () const |
|
| __SYCL2020_DEPRECATED ("get_count() is deprecated, please use size() instead") size_t get_count() const |
|
size_t | size () const noexcept |
|
| __SYCL2020_DEPRECATED ("get_size() is deprecated, please use byte_size() instead") size_t get_size() const |
|
size_t | byte_size () const noexcept |
|
AllocatorT | get_allocator () const |
|
template<access::mode Mode, access::target Target = access::target::device> |
accessor< T, dimensions, Mode, Target, access::placeholder::false_t, ext::oneapi::accessor_property_list<> > | get_access (handler &CommandGroupHandler, const detail::code_location CodeLoc=detail::code_location::current()) |
|
template<access::mode mode> |
| __SYCL2020_DEPRECATED ("get_access for host_accessor is deprecated, please " "use get_host_access instead") accessor< T |
|
ext::oneapi::accessor_property_list | get_access (const detail::code_location CodeLoc=detail::code_location::current()) |
|
template<access::mode mode, access::target target = access::target::device> |
accessor< T, dimensions, mode, target, access::placeholder::false_t, ext::oneapi::accessor_property_list<> > | get_access (handler &commandGroupHandler, range< dimensions > accessRange, id< dimensions > accessOffset={}, const detail::code_location CodeLoc=detail::code_location::current()) |
|
template<access::mode mode> |
| __SYCL2020_DEPRECATED ("get_access for host_accessor is deprecated, please " "use get_host_access instead") accessor< T |
|
ext::oneapi::accessor_property_list | get_access (range< dimensions > accessRange, id< dimensions > accessOffset={}, const detail::code_location CodeLoc=detail::code_location::current()) |
|
template<typename... Ts> |
auto | get_access (Ts... args) |
|
template<typename... Ts> |
auto | get_access (handler &commandGroupHandler, Ts... args) |
|
template<typename... Ts> |
auto | get_host_access (Ts... args) |
|
template<typename... Ts> |
auto | get_host_access (handler &commandGroupHandler, Ts... args) |
|
template<typename Destination = std::nullptr_t> |
void | set_final_data (Destination finalData=nullptr) |
|
void | set_final_data_internal (std::nullptr_t) |
|
template<template< typename WeakT > class WeakPtrT, typename WeakT > |
std::enable_if_t< std::is_convertible_v< WeakPtrT< WeakT >, std::weak_ptr< WeakT > > > | set_final_data_internal (WeakPtrT< WeakT > FinalData) |
|
template<typename WeakT > |
void | set_final_data_internal (std::weak_ptr< WeakT > FinalData) |
|
template<typename Destination > |
detail::EnableIfOutputPointerT< Destination > | set_final_data_internal (Destination FinalData) |
|
template<typename Destination > |
detail::EnableIfOutputIteratorT< Destination > | set_final_data_internal (Destination FinalData) |
|
void | set_final_data (std::nullptr_t) |
|
void | set_write_back (bool flag=true) |
|
bool | is_sub_buffer () const |
|
template<typename ReinterpretT , int ReinterpretDim> |
buffer< ReinterpretT, ReinterpretDim, typename std::allocator_traits< AllocatorT >::template rebind_alloc< std::remove_const_t< ReinterpretT > > > | reinterpret (range< ReinterpretDim > reinterpretRange) const |
|
template<typename ReinterpretT , int ReinterpretDim = dimensions> |
std::enable_if_t<(sizeof(ReinterpretT)==sizeof(T)) &&(dimensions==ReinterpretDim), buffer< ReinterpretT, ReinterpretDim, typename std::allocator_traits< AllocatorT >::template rebind_alloc< std::remove_const_t< ReinterpretT > > > > | reinterpret () const |
|
template<typename ReinterpretT , int ReinterpretDim = dimensions> |
std::enable_if_t<(ReinterpretDim==1) &&((dimensions !=ReinterpretDim)||(sizeof(ReinterpretT) !=sizeof(T))), buffer< ReinterpretT, ReinterpretDim, AllocatorT > > | reinterpret () const |
|
template<typename propertyT > |
bool | has_property () const noexcept |
|
template<typename propertyT > |
propertyT | get_property () const |
|
template<typename T, int dimensions = 1, typename AllocatorT = buffer_allocator<std::remove_const_t<T>>, typename __Enabled = typename std::enable_if_t<(dimensions > 0) && (dimensions <= 3)>>
class sycl::_V1::buffer< T, dimensions, AllocatorT, __Enabled >
Defines a shared array that can be used by kernels in queues.
Buffers can be 1-, 2-, and 3-dimensional. They have to be accessed using accessor classes.
- See also
- Accessors
Definition at line 60 of file buffer.hpp.