atlas
Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
atlas::array::Array Class Referenceabstract
Inheritance diagram for atlas::array::Array:
Inheritance graph
[legend]
Collaboration diagram for atlas::array::Array:
Collaboration graph
[legend]

Public Member Functions

virtual size_t footprint () const =0
 
idx_t bytes () const
 
size_t size () const
 
idx_t rank () const
 
idx_t stride (idx_t i) const
 
idx_t shape (idx_t i) const
 
const ArrayStridesstrides () const
 
const ArrayShapeshape () const
 
const std::vector< int > & shapef () const
 
const std::vector< int > & stridesf () const
 
bool contiguous () const
 
bool hasDefaultLayout () const
 
virtual array::DataType datatype () const =0
 
virtual void resize (const ArrayShape &shape)=0
 
virtual void resize (idx_t size0)=0
 
virtual void resize (idx_t size0, idx_t size1)=0
 
virtual void resize (idx_t size0, idx_t size1, idx_t size2)=0
 
virtual void resize (idx_t size0, idx_t size1, idx_t size2, idx_t size3)=0
 
virtual void resize (idx_t size0, idx_t size1, idx_t size2, idx_t size3, idx_t size4)=0
 
virtual void insert (idx_t idx1, idx_t size1)=0
 
virtual void dump (std::ostream &os) const =0
 
virtual bool accMap () const =0
 
virtual void * storage ()
 
virtual const void * storage () const
 
void updateDevice () const
 
void updateHost () const
 
bool valid () const
 
void syncHostDevice () const
 
bool hostNeedsUpdate () const
 
bool deviceNeedsUpdate () const
 
void reactivateDeviceWriteViews () const
 
void reactivateHostWriteViews () const
 
const ArraySpecspec () const
 
template<typename DATATYPE >
DATATYPE const * host_data () const
 
template<typename DATATYPE >
DATATYPE * host_data ()
 
template<typename DATATYPE >
DATATYPE const * device_data () const
 
template<typename DATATYPE >
DATATYPE * device_data ()
 
template<typename DATATYPE >
DATATYPE const * data () const
 
template<typename DATATYPE >
DATATYPE * data ()
 
void const * data () const
 
void * data ()
 
const ArrayDataStoredata_store () const
 

Static Public Member Functions

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

Protected Member Functions

 Array (ArraySpec &&spec)
 
void replace (Array &array)
 

Protected Attributes

ArraySpec spec_
 
std::unique_ptr< ArrayDataStoredata_store_
 

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