A high-performance general-purpose compute library
array::array_proxy Class Reference

Intermediate data class. More...

#include <array.h>

Public Member Functions

 array_proxy (array &par, af_index_t *ssss, bool linear=false)
 
 array_proxy (const array_proxy &other)
 
 ~array_proxy ()
 
 operator array () const
 
 operator array ()
 
array_proxyoperator= (const array_proxy &a)
 
array_proxyoperator= (const array &a)
 
array_proxyoperator= (const double &a)
 
array_proxyoperator= (const cdouble &a)
 
array_proxyoperator= (const cfloat &a)
 
array_proxyoperator= (const float &a)
 
array_proxyoperator= (const int &a)
 
array_proxyoperator= (const unsigned &a)
 
array_proxyoperator= (const bool &a)
 
array_proxyoperator= (const char &a)
 
array_proxyoperator= (const unsigned char &a)
 
array_proxyoperator= (const long &a)
 
array_proxyoperator= (const unsigned long &a)
 
array_proxyoperator= (const long long &a)
 
array_proxyoperator= (const unsigned long long &a)
 
array_proxyoperator+= (const array_proxy &a)
 
array_proxyoperator+= (const array &a)
 
array_proxyoperator+= (const double &a)
 
array_proxyoperator+= (const cdouble &a)
 
array_proxyoperator+= (const cfloat &a)
 
array_proxyoperator+= (const float &a)
 
array_proxyoperator+= (const int &a)
 
array_proxyoperator+= (const unsigned &a)
 
array_proxyoperator+= (const bool &a)
 
array_proxyoperator+= (const char &a)
 
array_proxyoperator+= (const unsigned char &a)
 
array_proxyoperator+= (const long &a)
 
array_proxyoperator+= (const unsigned long &a)
 
array_proxyoperator+= (const long long &a)
 
array_proxyoperator+= (const unsigned long long &a)
 
array_proxyoperator-= (const array_proxy &a)
 
array_proxyoperator-= (const array &a)
 
array_proxyoperator-= (const double &a)
 
array_proxyoperator-= (const cdouble &a)
 
array_proxyoperator-= (const cfloat &a)
 
array_proxyoperator-= (const float &a)
 
array_proxyoperator-= (const int &a)
 
array_proxyoperator-= (const unsigned &a)
 
array_proxyoperator-= (const bool &a)
 
array_proxyoperator-= (const char &a)
 
array_proxyoperator-= (const unsigned char &a)
 
array_proxyoperator-= (const long &a)
 
array_proxyoperator-= (const unsigned long &a)
 
array_proxyoperator-= (const long long &a)
 
array_proxyoperator-= (const unsigned long long &a)
 
array_proxyoperator*= (const array_proxy &a)
 
array_proxyoperator*= (const array &a)
 
array_proxyoperator*= (const double &a)
 
array_proxyoperator*= (const cdouble &a)
 
array_proxyoperator*= (const cfloat &a)
 
array_proxyoperator*= (const float &a)
 
array_proxyoperator*= (const int &a)
 
array_proxyoperator*= (const unsigned &a)
 
array_proxyoperator*= (const bool &a)
 
array_proxyoperator*= (const char &a)
 
array_proxyoperator*= (const unsigned char &a)
 
array_proxyoperator*= (const long &a)
 
array_proxyoperator*= (const unsigned long &a)
 
array_proxyoperator*= (const long long &a)
 
array_proxyoperator*= (const unsigned long long &a)
 
array_proxyoperator/= (const array_proxy &a)
 
array_proxyoperator/= (const array &a)
 
array_proxyoperator/= (const double &a)
 
array_proxyoperator/= (const cdouble &a)
 
array_proxyoperator/= (const cfloat &a)
 
array_proxyoperator/= (const float &a)
 
array_proxyoperator/= (const int &a)
 
array_proxyoperator/= (const unsigned &a)
 
array_proxyoperator/= (const bool &a)
 
array_proxyoperator/= (const char &a)
 
array_proxyoperator/= (const unsigned char &a)
 
array_proxyoperator/= (const long &a)
 
array_proxyoperator/= (const unsigned long &a)
 
array_proxyoperator/= (const long long &a)
 
array_proxyoperator/= (const unsigned long long &a)
 
array_proxyoperator= (const short &a)
 
array_proxyoperator= (const unsigned short &a)
 
array_proxyoperator+= (const short &a)
 
array_proxyoperator+= (const unsigned short &a)
 
array_proxyoperator-= (const short &a)
 
array_proxyoperator-= (const unsigned short &a)
 
array_proxyoperator*= (const short &a)
 
array_proxyoperator*= (const unsigned short &a)
 
array_proxyoperator/= (const short &a)
 
array_proxyoperator/= (const unsigned short &a)
 
af_array get ()
 
af_array get () const
 
dim_t elements () const
 
template<typename T >
Thost () const
 
void host (void *ptr) const
 
dtype type () const
 
dim4 dims () const
 
dim_t dims (unsigned dim) const
 
unsigned numdims () const
 
size_t bytes () const
 
size_t allocated () const
 
array copy () const
 
bool isempty () const
 
bool isscalar () const
 
bool isvector () const
 
bool isrow () const
 
bool iscolumn () const
 
bool iscomplex () const
 
bool isreal () const
 
bool isdouble () const
 
bool issingle () const
 
bool ishalf () const
 
bool isrealfloating () const
 
bool isfloating () const
 
bool isinteger () const
 
bool isbool () const
 
bool issparse () const
 
void eval () const
 
array as (dtype type) const
 
array T () const
 
array H () const
 
template<typename T >
T scalar () const
 
template<typename T >
Tdevice () const
 
void unlock () const
 
void lock () const
 
bool isLocked () const
 
array::array_proxy row (int index)
 
const array::array_proxy row (int index) const
 
array::array_proxy rows (int first, int last)
 
const array::array_proxy rows (int first, int last) const
 
array::array_proxy col (int index)
 
const array::array_proxy col (int index) const
 
array::array_proxy cols (int first, int last)
 
const array::array_proxy cols (int first, int last) const
 
array::array_proxy slice (int index)
 
const array::array_proxy slice (int index) const
 
array::array_proxy slices (int first, int last)
 
const array::array_proxy slices (int first, int last) const
 

Detailed Description

Intermediate data class.

Used for assignment and indexing.

Note
This class is for internal book keeping while indexing. This class is not intended for use in user code.

Definition at line 56 of file array.h.

Constructor & Destructor Documentation

◆ array_proxy() [1/2]

array_proxy ( array par,
af_index_t ssss,
bool  linear = false 
)

◆ array_proxy() [2/2]

array_proxy ( const array_proxy other)

◆ ~array_proxy()

Member Function Documentation

◆ allocated()

size_t allocated ( ) const

◆ as()

array as ( dtype  type) const

◆ bytes()

size_t bytes ( ) const

◆ col() [1/2]

array::array_proxy col ( int  index)

◆ col() [2/2]

const array::array_proxy col ( int  index) const

◆ cols() [1/2]

array::array_proxy cols ( int  first,
int  last 
)

◆ cols() [2/2]

const array::array_proxy cols ( int  first,
int  last 
) const

◆ copy()

array copy ( ) const

◆ device()

T * device ( ) const

◆ dims() [1/2]

dim4 dims ( ) const

◆ dims() [2/2]

dim_t dims ( unsigned  dim) const

◆ elements()

dim_t elements ( ) const

◆ eval()

void eval ( ) const

◆ get() [1/2]

af_array get ( )

◆ get() [2/2]

af_array get ( ) const

◆ H()

array H ( ) const

◆ host() [1/2]

T * host ( ) const

◆ host() [2/2]

void host ( void *  ptr) const

◆ isbool()

bool isbool ( ) const

◆ iscolumn()

bool iscolumn ( ) const

◆ iscomplex()

bool iscomplex ( ) const

◆ isdouble()

bool isdouble ( ) const

◆ isempty()

bool isempty ( ) const

◆ isfloating()

bool isfloating ( ) const

◆ ishalf()

bool ishalf ( ) const

◆ isinteger()

bool isinteger ( ) const

◆ isLocked()

bool isLocked ( ) const

◆ isreal()

bool isreal ( ) const
inline

Definition at line 130 of file array.h.

130{ return !iscomplex(); }
bool iscomplex() const

◆ isrealfloating()

bool isrealfloating ( ) const

◆ isrow()

bool isrow ( ) const

◆ isscalar()

bool isscalar ( ) const

◆ issingle()

bool issingle ( ) const

◆ issparse()

bool issparse ( ) const

◆ isvector()

bool isvector ( ) const

◆ lock()

void lock ( ) const

◆ numdims()

unsigned numdims ( ) const

◆ operator array() [1/2]

operator array ( )

◆ operator array() [2/2]

operator array ( ) const

◆ operator*=() [1/17]

array_proxy & operator*= ( const array a)

◆ operator*=() [2/17]

array_proxy & operator*= ( const array_proxy a)

◆ operator*=() [3/17]

array_proxy & operator*= ( const bool &  a)

◆ operator*=() [4/17]

array_proxy & operator*= ( const cdouble a)

◆ operator*=() [5/17]

array_proxy & operator*= ( const cfloat a)

◆ operator*=() [6/17]

array_proxy & operator*= ( const char &  a)

◆ operator*=() [7/17]

array_proxy & operator*= ( const double &  a)

◆ operator*=() [8/17]

array_proxy & operator*= ( const float &  a)

◆ operator*=() [9/17]

array_proxy & operator*= ( const int &  a)

◆ operator*=() [10/17]

array_proxy & operator*= ( const long &  a)

◆ operator*=() [11/17]

array_proxy & operator*= ( const long long &  a)

◆ operator*=() [12/17]

array_proxy & operator*= ( const short &  a)

◆ operator*=() [13/17]

array_proxy & operator*= ( const unsigned &  a)

◆ operator*=() [14/17]

array_proxy & operator*= ( const unsigned char &  a)

◆ operator*=() [15/17]

array_proxy & operator*= ( const unsigned long &  a)

◆ operator*=() [16/17]

array_proxy & operator*= ( const unsigned long long &  a)

◆ operator*=() [17/17]

array_proxy & operator*= ( const unsigned short &  a)

◆ operator+=() [1/17]

array_proxy & operator+= ( const array a)

◆ operator+=() [2/17]

array_proxy & operator+= ( const array_proxy a)

◆ operator+=() [3/17]

array_proxy & operator+= ( const bool &  a)

◆ operator+=() [4/17]

array_proxy & operator+= ( const cdouble a)

◆ operator+=() [5/17]

array_proxy & operator+= ( const cfloat a)

◆ operator+=() [6/17]

array_proxy & operator+= ( const char &  a)

◆ operator+=() [7/17]

array_proxy & operator+= ( const double &  a)

◆ operator+=() [8/17]

array_proxy & operator+= ( const float &  a)

◆ operator+=() [9/17]

array_proxy & operator+= ( const int &  a)

◆ operator+=() [10/17]

array_proxy & operator+= ( const long &  a)

◆ operator+=() [11/17]

array_proxy & operator+= ( const long long &  a)

◆ operator+=() [12/17]

array_proxy & operator+= ( const short &  a)

◆ operator+=() [13/17]

array_proxy & operator+= ( const unsigned &  a)

◆ operator+=() [14/17]

array_proxy & operator+= ( const unsigned char &  a)

◆ operator+=() [15/17]

array_proxy & operator+= ( const unsigned long &  a)

◆ operator+=() [16/17]

array_proxy & operator+= ( const unsigned long long &  a)

◆ operator+=() [17/17]

array_proxy & operator+= ( const unsigned short &  a)

◆ operator-=() [1/17]

array_proxy & operator-= ( const array a)

◆ operator-=() [2/17]

array_proxy & operator-= ( const array_proxy a)

◆ operator-=() [3/17]

array_proxy & operator-= ( const bool &  a)

◆ operator-=() [4/17]

array_proxy & operator-= ( const cdouble a)

◆ operator-=() [5/17]

array_proxy & operator-= ( const cfloat a)

◆ operator-=() [6/17]

array_proxy & operator-= ( const char &  a)

◆ operator-=() [7/17]

array_proxy & operator-= ( const double &  a)

◆ operator-=() [8/17]

array_proxy & operator-= ( const float &  a)

◆ operator-=() [9/17]

array_proxy & operator-= ( const int &  a)

◆ operator-=() [10/17]

array_proxy & operator-= ( const long &  a)

◆ operator-=() [11/17]

array_proxy & operator-= ( const long long &  a)

◆ operator-=() [12/17]

array_proxy & operator-= ( const short &  a)

◆ operator-=() [13/17]

array_proxy & operator-= ( const unsigned &  a)

◆ operator-=() [14/17]

array_proxy & operator-= ( const unsigned char &  a)

◆ operator-=() [15/17]

array_proxy & operator-= ( const unsigned long &  a)

◆ operator-=() [16/17]

array_proxy & operator-= ( const unsigned long long &  a)

◆ operator-=() [17/17]

array_proxy & operator-= ( const unsigned short &  a)

◆ operator/=() [1/17]

array_proxy & operator/= ( const array a)

◆ operator/=() [2/17]

array_proxy & operator/= ( const array_proxy a)

◆ operator/=() [3/17]

array_proxy & operator/= ( const bool &  a)

◆ operator/=() [4/17]

array_proxy & operator/= ( const cdouble a)

◆ operator/=() [5/17]

array_proxy & operator/= ( const cfloat a)

◆ operator/=() [6/17]

array_proxy & operator/= ( const char &  a)

◆ operator/=() [7/17]

array_proxy & operator/= ( const double &  a)

◆ operator/=() [8/17]

array_proxy & operator/= ( const float &  a)

◆ operator/=() [9/17]

array_proxy & operator/= ( const int &  a)

◆ operator/=() [10/17]

array_proxy & operator/= ( const long &  a)

◆ operator/=() [11/17]

array_proxy & operator/= ( const long long &  a)

◆ operator/=() [12/17]

array_proxy & operator/= ( const short &  a)

◆ operator/=() [13/17]

array_proxy & operator/= ( const unsigned &  a)

◆ operator/=() [14/17]

array_proxy & operator/= ( const unsigned char &  a)

◆ operator/=() [15/17]

array_proxy & operator/= ( const unsigned long &  a)

◆ operator/=() [16/17]

array_proxy & operator/= ( const unsigned long long &  a)

◆ operator/=() [17/17]

array_proxy & operator/= ( const unsigned short &  a)

◆ operator=() [1/17]

array_proxy & operator= ( const array a)

◆ operator=() [2/17]

array_proxy & operator= ( const array_proxy a)

◆ operator=() [3/17]

array_proxy & operator= ( const bool &  a)

◆ operator=() [4/17]

array_proxy & operator= ( const cdouble a)

◆ operator=() [5/17]

array_proxy & operator= ( const cfloat a)

◆ operator=() [6/17]

array_proxy & operator= ( const char &  a)

◆ operator=() [7/17]

array_proxy & operator= ( const double &  a)

◆ operator=() [8/17]

array_proxy & operator= ( const float &  a)

◆ operator=() [9/17]

array_proxy & operator= ( const int &  a)

◆ operator=() [10/17]

array_proxy & operator= ( const long &  a)

◆ operator=() [11/17]

array_proxy & operator= ( const long long &  a)

◆ operator=() [12/17]

array_proxy & operator= ( const short &  a)

◆ operator=() [13/17]

array_proxy & operator= ( const unsigned &  a)

◆ operator=() [14/17]

array_proxy & operator= ( const unsigned char &  a)

◆ operator=() [15/17]

array_proxy & operator= ( const unsigned long &  a)

◆ operator=() [16/17]

array_proxy & operator= ( const unsigned long long &  a)

◆ operator=() [17/17]

array_proxy & operator= ( const unsigned short &  a)

◆ row() [1/2]

array::array_proxy row ( int  index)

◆ row() [2/2]

const array::array_proxy row ( int  index) const

◆ rows() [1/2]

array::array_proxy rows ( int  first,
int  last 
)

◆ rows() [2/2]

const array::array_proxy rows ( int  first,
int  last 
) const

◆ scalar()

T scalar ( ) const

◆ slice() [1/2]

array::array_proxy slice ( int  index)

◆ slice() [2/2]

const array::array_proxy slice ( int  index) const

◆ slices() [1/2]

array::array_proxy slices ( int  first,
int  last 
)

◆ slices() [2/2]

const array::array_proxy slices ( int  first,
int  last 
) const

◆ T()

array T ( ) const

◆ type()

dtype type ( ) const

◆ unlock()

void unlock ( ) const

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