DPC++ Runtime
Runtime libraries for oneAPI DPC++
syclcompat::detail::memory_traits< Memory, T > Class Template Reference

#include <syclcompat/memory.hpp>

Collaboration diagram for syclcompat::detail::memory_traits< Memory, T >:

Public Types

using element_t = typename std::conditional_t< Memory==memory_region::constant, const T, T >
 
using value_t = typename std::remove_cv_t< T >
 
template<size_t Dimension = 1>
using accessor_t = typename std::conditional_t< target==target::local, sycl::local_accessor< T, Dimension >, sycl::accessor< T, Dimension, mode > >
 
using pointer_t = T *
 

Static Public Attributes

static constexpr sycl::access::address_space asp
 
static constexpr target target
 
static constexpr sycl::access_mode mode
 
static constexpr size_t type_size = sizeof(T)
 

Detailed Description

template<memory_region Memory, class T = byte_t>
class syclcompat::detail::memory_traits< Memory, T >

Definition at line 126 of file memory.hpp.

Member Typedef Documentation

◆ accessor_t

template<memory_region Memory, class T = byte_t>
template<size_t Dimension = 1>
using syclcompat::detail::memory_traits< Memory, T >::accessor_t = typename std::conditional_t<target == target::local, sycl::local_accessor<T, Dimension>, sycl::accessor<T, Dimension, mode> >

Definition at line 143 of file memory.hpp.

◆ element_t

template<memory_region Memory, class T = byte_t>
using syclcompat::detail::memory_traits< Memory, T >::element_t = typename std::conditional_t<Memory == memory_region::constant, const T, T>

Definition at line 138 of file memory.hpp.

◆ pointer_t

template<memory_region Memory, class T = byte_t>
using syclcompat::detail::memory_traits< Memory, T >::pointer_t = T *

Definition at line 147 of file memory.hpp.

◆ value_t

template<memory_region Memory, class T = byte_t>
using syclcompat::detail::memory_traits< Memory, T >::value_t = typename std::remove_cv_t<T>

Definition at line 141 of file memory.hpp.

Member Data Documentation

◆ asp

template<memory_region Memory, class T = byte_t>
constexpr sycl::access::address_space syclcompat::detail::memory_traits< Memory, T >::asp
staticconstexpr
Initial value:
=
? sycl::access::address_space::local_space
: sycl::access::address_space::global_space

Definition at line 128 of file memory.hpp.

◆ mode

template<memory_region Memory, class T = byte_t>
constexpr sycl::access_mode syclcompat::detail::memory_traits< Memory, T >::mode
staticconstexpr
Initial value:
? sycl::access_mode::read
constexpr mode_tag_t< access_mode::read_write > read_write
Definition: access.hpp:85

Definition at line 134 of file memory.hpp.

◆ target

template<memory_region Memory, class T = byte_t>
constexpr target syclcompat::detail::memory_traits< Memory, T >::target
staticconstexpr
Initial value:

Definition at line 132 of file memory.hpp.

◆ type_size

template<memory_region Memory, class T = byte_t>
constexpr size_t syclcompat::detail::memory_traits< Memory, T >::type_size = sizeof(T)
staticconstexpr

Definition at line 137 of file memory.hpp.


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