NDView

template<typename T, int64_t Ndim = 2>
class NDView : public aare::ArrayExpr<NDView<T, 2>, 2>

Public Functions

NDView() = default
~NDView() = default
NDView(const NDView&) = default
NDView(NDView&&) = default
inline NDView(T *buffer, std::array<int64_t, Ndim> shape)
template<typename ...Ix>
inline std::enable_if_t<sizeof...(Ix) == Ndim, T&> operator()(Ix... index)
template<typename ...Ix>
inline std::enable_if_t<sizeof...(Ix) == Ndim, T&> operator()(Ix... index) const
inline size_t size() const
inline size_t total_bytes() const
inline std::array<int64_t, Ndim> strides() const noexcept
inline T *begin()
inline T *end()
inline T const *begin() const
inline T const *end() const
inline T &operator()(int64_t i) const
inline T &operator[](int64_t i) const
inline bool operator==(const NDView &other) const
inline NDView &operator+=(const T val)
inline NDView &operator-=(const T val)
inline NDView &operator*=(const T val)
inline NDView &operator/=(const T val)
inline NDView &operator/=(const NDView &other)
inline NDView &operator=(const T val)
inline NDView &operator=(const NDView &other)
inline NDView &operator=(NDView &&other) noexcept
inline auto &shape() const
inline auto shape(int64_t i) const
inline T *data()
void print_all() const