MUDA
Loading...
Searching...
No Matches
muda::BufferViewT< IsConst, T > Class Template Reference
Inheritance diagram for muda::BufferViewT< IsConst, T >:
muda::ViewBase< IsConst >

Public Types

using ConstView = BufferViewT< true, T >
 
using ThisView = BufferViewT< IsConst, T >
 
using CViewer = CDense1D< T >
 
using Viewer = Dense1D< T >
 
using ThisViewer = std::conditional_t< IsConst, CViewer, Viewer >
 
template<typename U >
using auto_const_t = typename Base::template auto_const_t< U >
 
using value_type = T
 
using reference = T &
 
using pointer = T *
 
using iterator_category = std::random_access_iterator_tag
 
using difference_type = size_t
 
- Public Types inherited from muda::ViewBase< IsConst >
using auto_const_t = std::conditional_t< IsConst, const T, T >
 
using non_const_enable_t = std::enable_if_t< IsNonConst, T >
 

Public Member Functions

MUDA_GENERIC BufferViewT (const BufferViewT &other) MUDA_NOEXCEPT=default
 
MUDA_GENERIC BufferViewT (auto_const_t< T > *data, size_t offset, size_t size) MUDA_NOEXCEPT
 
MUDA_GENERIC BufferViewT (auto_const_t< T > *data, size_t size) MUDA_NOEXCEPT
 
template<bool OtherIsConst>
 BufferViewT (const BufferViewT< OtherIsConst, T > &other) MUDA_NOEXCEPT MUDA_REQUIRES(!OtherIsConst)
 
MUDA_GENERIC ConstView as_const () const MUDA_NOEXCEPT
 
MUDA_GENERIC auto_const_t< T > * data () const MUDA_NOEXCEPT
 
MUDA_GENERIC auto_const_t< T > * data (size_t i) const MUDA_NOEXCEPT
 
MUDA_GENERIC auto_const_t< T > * origin_data () const MUDA_NOEXCEPT
 
MUDA_GENERIC ThisView subview (size_t offset, size_t size=~0) const MUDA_NOEXCEPT
 
MUDA_GENERIC ThisViewer viewer () const MUDA_NOEXCEPT
 
MUDA_GENERIC CViewer cviewer () const MUDA_NOEXCEPT
 
MUDA_GENERIC size_t size () const MUDA_NOEXCEPT
 
MUDA_GENERIC size_t offset () const MUDA_NOEXCEPT
 
MUDA_GENERIC auto_const_t< T > & operator[] (size_t i) const MUDA_NOEXCEPT
 
MUDA_HOST void copy_from (const BufferViewT< true, T > &other) const MUDA_REQUIRES(!IsConst)
 
MUDA_HOST void fill (const T &value) const MUDA_REQUIRES(!IsConst)
 
MUDA_HOST void copy_from (const T *host) const MUDA_REQUIRES(!IsConst)
 
MUDA_HOST void copy_to (T *host) const
 
MUDA_GENERIC ThisView operator+ (int i) const MUDA_NOEXCEPT
 
MUDA_GENERIC reference operator* () const MUDA_NOEXCEPT
 
MUDA_GENERIC auto_const_t< T > & operator[] (int i) const MUDA_NOEXCEPT
 
template<bool OtherIsConst>
MUDA_GENERIC BufferViewT (const BufferViewT< OtherIsConst, T > &other) MUDA_NOEXCEPT MUDA_REQUIRES(!OtherIsConst)
 

Protected Attributes

auto_const_t< T > * m_data = nullptr
 
size_t m_offset = ~0
 
size_t m_size = ~0
 

Additional Inherited Members

- Static Public Attributes inherited from muda::ViewBase< IsConst >
static constexpr bool IsConst
 
static constexpr bool IsNonConst
 

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