template<typename Value>
atlas::array::ArrayT class

Base classes

class Array

Public static functions

static auto create(array::DataType, const ArrayShape&) -> Array*
static auto create(array::DataType, const ArrayShape&, const ArrayLayout&) -> Array*
static auto create(array::DataType, ArraySpec&&) -> Array*
static auto create(ArraySpec&&) -> Array*
template<typename Value>
static auto create(idx_t size0) -> Array*
template<typename Value>
static auto create(idx_t size0, idx_t size1) -> Array*
template<typename Value>
static auto create(idx_t size0, idx_t size1, idx_t size2) -> Array*
template<typename Value>
static auto create(idx_t size0, idx_t size1, idx_t size2, idx_t size3) -> Array*
template<typename Value>
static auto create(idx_t size0, idx_t size1, idx_t size2, idx_t size3, idx_t size4) -> Array*
template<typename Value>
static auto create(const ArrayShape& shape) -> Array*
template<typename Value>
static auto create(const ArrayShape& shape, const ArrayLayout& layout) -> Array*
template<typename Value>
static auto wrap(Value* data, const ArrayShape& shape) -> Array*
template<typename Value>
static auto wrap(Value* data, const ArraySpec& spec) -> Array*

Constructors, destructors, conversion operators

ArrayT(idx_t size0)
ArrayT(idx_t size0, idx_t size1)
ArrayT(idx_t size0, idx_t size1, idx_t size2)
ArrayT(idx_t size0, idx_t size1, idx_t size2, idx_t size3)
ArrayT(idx_t size0, idx_t size1, idx_t size2, idx_t size3, idx_t size4)
ArrayT(ArraySpec&&)
ArrayT(const ArrayShape&)
ArrayT(const ArrayShape&, const ArrayAlignment&)
ArrayT(const ArrayShape&, const ArrayLayout&)
ArrayT(ArrayDataStore*, const ArraySpec&)

Public functions

void insert(idx_t idx1, idx_t size1) virtual
void resize(const ArrayShape&) virtual
void resize(idx_t size0) virtual
void resize(idx_t size0, idx_t size1) virtual
void resize(idx_t size0, idx_t size1, idx_t size2) virtual
void resize(idx_t size0, idx_t size1, idx_t size2, idx_t size3) virtual
void resize(idx_t size0, idx_t size1, idx_t size2, idx_t size3, idx_t size4) virtual
void copy(const Array&, const CopyPolicy&) virtual
auto datatype() const -> array::DataType virtual
void dump(std::ostream& os) const virtual
auto footprint() const -> size_t virtual
void accMap() const virtual
void accUnmap() const virtual
auto accMapped() const -> bool virtual
auto bytes() const -> idx_t
auto size() const -> size_t
auto rank() const -> idx_t
auto stride(idx_t i) const -> idx_t
auto shape(idx_t i) const -> idx_t
auto shape() const -> const ArrayShape&
auto strides() const -> const ArrayStrides&
auto shapef() const -> const std::vector<int>&
auto stridesf() const -> const std::vector<int>&
auto contiguous() const -> bool
auto hasDefaultLayout() const -> bool
auto storage() -> void* virtual
auto storage() const -> const void* virtual
auto valid() const -> bool
void updateDevice() const
void updateHost() const
void syncHostDevice() const
auto hostNeedsUpdate() const -> bool
auto deviceNeedsUpdate() const -> bool
void setHostNeedsUpdate(bool v) const
void setDeviceNeedsUpdate(bool v) const
auto deviceAllocated() const -> bool
void allocateDevice()
void deallocateDevice()
void reactivateDeviceWriteViews() const
void reactivateHostWriteViews() const
auto spec() const -> const ArraySpec&
void copy(const Array& other)
template<typename DATATYPE>
auto host_data() const -> DATATYPE const *
template<typename DATATYPE>
auto host_data() -> DATATYPE*
template<typename DATATYPE>
auto device_data() const -> DATATYPE const *
template<typename DATATYPE>
auto device_data() -> DATATYPE*
template<typename DATATYPE>
auto data() const -> DATATYPE const *
template<typename DATATYPE>
auto data() -> DATATYPE*
auto data() const -> void const *
auto data() -> void*
auto data_store() const -> const ArrayDataStore&