Provides a cross-platform math array class template that works on SYCL devices as well as in host C++ code. More...
#include <sycl/marray.hpp>
Public Types | |
using | value_type = Type |
using | reference = Type & |
using | const_reference = const Type & |
using | iterator = Type * |
using | const_iterator = const Type * |
Public Member Functions | |
constexpr | marray () |
constexpr | marray (const Type &Arg) |
template<typename... ArgTN, typename = std::enable_if_t< AllSuitableArgTypes<ArgTN...>::value && detail::GetMArrayArgsSize<ArgTN...>::value == NumElements>> | |
constexpr | marray (const ArgTN &...Args) |
constexpr | marray (const marray< Type, NumElements > &Rhs)=default |
constexpr | marray (marray< Type, NumElements > &&Rhs)=default |
template<std::size_t Size = NumElements, typename = std::enable_if_t<Size == 1>> | |
operator Type () const | |
reference | operator[] (std::size_t index) |
const_reference | operator[] (std::size_t index) const |
marray & | operator= (const marray< Type, NumElements > &Rhs)=default |
marray & | operator= (const Type &Rhs) |
iterator | begin () |
const_iterator | begin () const |
iterator | end () |
const_iterator | end () const |
Static Public Member Functions | |
static constexpr std::size_t | size () noexcept |
Friends | |
template<typename Type_ , std::size_t NumElements_> | |
class | marray |
template<typename T = DataT> | |
std::enable_if_t< std::is_integral_v< T >, marray > | operator~ (const marray &Lhs) |
marray< bool, NumElements > | operator! (const marray &Lhs) |
marray | operator+ (const marray &Lhs) |
marray | operator- (const marray &Lhs) |
Provides a cross-platform math array class template that works on SYCL devices as well as in host C++ code.
Definition at line 48 of file marray.hpp.
using sycl::_V1::marray< Type, NumElements >::const_iterator = const Type * |
Definition at line 56 of file marray.hpp.
using sycl::_V1::marray< Type, NumElements >::const_reference = const Type & |
Definition at line 54 of file marray.hpp.
using sycl::_V1::marray< Type, NumElements >::iterator = Type * |
Definition at line 55 of file marray.hpp.
using sycl::_V1::marray< Type, NumElements >::reference = Type & |
Definition at line 53 of file marray.hpp.
using sycl::_V1::marray< Type, NumElements >::value_type = Type |
Definition at line 52 of file marray.hpp.
|
inlineconstexpr |
Definition at line 115 of file marray.hpp.
|
inlineexplicitconstexpr |
Definition at line 117 of file marray.hpp.
|
inlineconstexpr |
Definition at line 125 of file marray.hpp.
|
constexprdefault |
|
constexprdefault |
|
inline |
Definition at line 158 of file marray.hpp.
|
inline |
Definition at line 160 of file marray.hpp.
|
inline |
Definition at line 162 of file marray.hpp.
|
inline |
Definition at line 164 of file marray.hpp.
|
inline |
Definition at line 136 of file marray.hpp.
|
default |
|
inline |
Definition at line 150 of file marray.hpp.
|
inline |
Definition at line 143 of file marray.hpp.
|
inline |
Definition at line 145 of file marray.hpp.
|
inlinestaticconstexprnoexcept |
Definition at line 140 of file marray.hpp.
|
friend |
Definition at line 101 of file marray.hpp.
|
friend |
Definition at line 341 of file marray.hpp.
|
friend |
Definition at line 349 of file marray.hpp.
|
friend |
Definition at line 357 of file marray.hpp.
|
friend |
Definition at line 333 of file marray.hpp.