atlas::array::Array class

Derived classes

template<typename Value>
class ArrayT

Public types

struct CopyPolicy

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

Array() defaulted
~Array() virtual

Public functions

auto footprint() const -> size_t pure 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 strides() const -> const ArrayStrides&
auto device_strides() const -> const ArrayStrides&
auto shape() const -> const ArrayShape&
auto shapef() const -> const std::vector<int>&
auto stridesf() const -> const std::vector<int>&
auto device_stridesf() const -> const std::vector<int>&
auto contiguous() const -> bool
auto hasDefaultLayout() const -> bool
auto datatype() const -> array::DataType pure virtual
void resize(const ArrayShape& shape) pure virtual
void resize(idx_t size0) pure virtual
void resize(idx_t size0, idx_t size1) pure virtual
void resize(idx_t size0, idx_t size1, idx_t size2) pure virtual
void resize(idx_t size0, idx_t size1, idx_t size2, idx_t size3) pure virtual
void resize(idx_t size0, idx_t size1, idx_t size2, idx_t size3, idx_t size4) pure virtual
void insert(idx_t idx1, idx_t size1) pure virtual
void dump(std::ostream& os) const pure virtual
void accMap() const pure virtual
void accUnmap() const pure virtual
auto accMapped() const -> bool pure virtual
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&, const CopyPolicy&) pure virtual
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&
This website is beyond its original expiry date and the content may be out of date. The site owner has been notified and may choose to extend the expiry date and remove this banner. If you have any questions about this, please visit our support portal.