blitz Version 1.0.2
|
Declaration of class Array, the "Swiss army knife" of Blitz expression template classes. More...
#include <array-impl.h>
Public Types | |
typedef P_numtype | T_numtype |
typedef TinyVector< int, N_rank > | T_index |
typedef Array< T_numtype, N_rank > | T_array |
typedef FastArrayIterator< T_numtype, N_rank > | T_iterator |
typedef ArrayIterator< T_numtype, N_rank > | iterator |
typedef ConstArrayIterator< T_numtype, N_rank > | const_iterator |
typedef GeneralArrayStorage< N_rank > | T_default_storage |
Set default storage order. | |
![]() | |
typedef P_numtype | T_type |
Public Member Functions | |
template<typename T_expr > | |
Array (_bz_ArrayExpr< T_expr > expr) | |
Construct an array from an expression. | |
Array (GeneralArrayStorage< N_rank > storage=T_default_storage()) | |
Array (int length0, GeneralArrayStorage< N_rank > storage=T_default_storage()) | |
Array (int length0, int length1, GeneralArrayStorage< N_rank > storage=T_default_storage()) | |
Array (int length0, int length1, int length2, GeneralArrayStorage< N_rank > storage=T_default_storage()) | |
Array (int length0, int length1, int length2, int length3, GeneralArrayStorage< N_rank > storage=T_default_storage()) | |
Array (int length0, int length1, int length2, int length3, int length4, GeneralArrayStorage< N_rank > storage=T_default_storage()) | |
Array (int length0, int length1, int length2, int length3, int length4, int length5, GeneralArrayStorage< N_rank > storage=T_default_storage()) | |
Array (int length0, int length1, int length2, int length3, int length4, int length5, int length6, GeneralArrayStorage< N_rank > storage=T_default_storage()) | |
Array (int length0, int length1, int length2, int length3, int length4, int length5, int length6, int length7, GeneralArrayStorage< N_rank > storage=T_default_storage()) | |
Array (int length0, int length1, int length2, int length3, int length4, int length5, int length6, int length7, int length8, GeneralArrayStorage< N_rank > storage=T_default_storage()) | |
Array (int length0, int length1, int length2, int length3, int length4, int length5, int length6, int length7, int length8, int length9, GeneralArrayStorage< N_rank > storage=T_default_storage()) | |
Array (int length0, int length1, int length2, int length3, int length4, int length5, int length6, int length7, int length8, int length9, int length10, GeneralArrayStorage< N_rank > storage=T_default_storage()) | |
Array (T_numtype *restrict dataFirst, TinyVector< int, N_rank > shape, GeneralArrayStorage< N_rank > storage=T_default_storage(contiguousData)) | |
Array (T_numtype *restrict dataFirst, TinyVector< int, N_rank > shape, TinyVector< diffType, N_rank > stride, GeneralArrayStorage< N_rank > storage=T_default_storage(contiguousData)) | |
Construct an array from an existing block of memory, with a given set of strides. | |
Array (T_numtype *restrict dataFirst, TinyVector< int, N_rank > shape, preexistingMemoryPolicy deletionPolicy, GeneralArrayStorage< N_rank > storage=T_default_storage(contiguousData)) | |
Construct an array from an existing block of memory. | |
Array (T_numtype *restrict dataFirst, TinyVector< int, N_rank > shape, TinyVector< diffType, N_rank > stride, preexistingMemoryPolicy deletionPolicy, GeneralArrayStorage< N_rank > storage=T_default_storage(contiguousData)) | |
Construct an array from an existing block of memory, with a given set of strides. | |
Array (const TinyVector< int, N_rank > &extent, GeneralArrayStorage< N_rank > storage=T_default_storage()) | |
Array (const TinyVector< int, N_rank > &lbounds, const TinyVector< int, N_rank > &extent, const GeneralArrayStorage< N_rank > &storage=T_default_storage()) | |
Array (Range r0, GeneralArrayStorage< N_rank > storage=T_default_storage()) | |
Array (Range r0, Range r1, GeneralArrayStorage< N_rank > storage=T_default_storage()) | |
Array (Range r0, Range r1, Range r2, GeneralArrayStorage< N_rank > storage=T_default_storage()) | |
Array (Range r0, Range r1, Range r2, Range r3, GeneralArrayStorage< N_rank > storage=T_default_storage()) | |
Array (Range r0, Range r1, Range r2, Range r3, Range r4, GeneralArrayStorage< N_rank > storage=T_default_storage()) | |
Array (Range r0, Range r1, Range r2, Range r3, Range r4, Range r5, GeneralArrayStorage< N_rank > storage=T_default_storage()) | |
Array (Range r0, Range r1, Range r2, Range r3, Range r4, Range r5, Range r6, GeneralArrayStorage< N_rank > storage=T_default_storage()) | |
Array (Range r0, Range r1, Range r2, Range r3, Range r4, Range r5, Range r6, Range r7, GeneralArrayStorage< N_rank > storage=T_default_storage()) | |
Array (Range r0, Range r1, Range r2, Range r3, Range r4, Range r5, Range r6, Range r7, Range r8, GeneralArrayStorage< N_rank > storage=T_default_storage()) | |
Array (Range r0, Range r1, Range r2, Range r3, Range r4, Range r5, Range r6, Range r7, Range r8, Range r9, GeneralArrayStorage< N_rank > storage=T_default_storage()) | |
Array (Range r0, Range r1, Range r2, Range r3, Range r4, Range r5, Range r6, Range r7, Range r8, Range r9, Range r10, GeneralArrayStorage< N_rank > storage=T_default_storage()) | |
Array (const Array< T_numtype, N_rank > &array) | |
Array (const TinyVector< int, N_rank-1 > &shape, int lastExtent, const GeneralArrayStorage< N_rank > &storage) | |
Array (Array< T_numtype, N_rank > &array, Range r0) | |
Array (Array< T_numtype, N_rank > &array, Range r0, Range r1) | |
Array (Array< T_numtype, N_rank > &array, Range r0, Range r1, Range r2) | |
Array (Array< T_numtype, N_rank > &array, Range r0, Range r1, Range r2, Range r3) | |
Array (Array< T_numtype, N_rank > &array, Range r0, Range r1, Range r2, Range r3, Range r4) | |
Array (Array< T_numtype, N_rank > &array, Range r0, Range r1, Range r2, Range r3, Range r4, Range r5) | |
Array (Array< T_numtype, N_rank > &array, Range r0, Range r1, Range r2, Range r3, Range r4, Range r5, Range r6) | |
Array (Array< T_numtype, N_rank > &array, Range r0, Range r1, Range r2, Range r3, Range r4, Range r5, Range r6, Range r7) | |
Array (Array< T_numtype, N_rank > &array, Range r0, Range r1, Range r2, Range r3, Range r4, Range r5, Range r6, Range r7, Range r8) | |
Array (Array< T_numtype, N_rank > &array, Range r0, Range r1, Range r2, Range r3, Range r4, Range r5, Range r6, Range r7, Range r8, Range r9) | |
Array (Array< T_numtype, N_rank > &array, Range r0, Range r1, Range r2, Range r3, Range r4, Range r5, Range r6, Range r7, Range r8, Range r9, Range r10) | |
Array (Array< T_numtype, N_rank > &array, const RectDomain< N_rank > &subdomain) | |
Array (Array< T_numtype, N_rank > &array, const StridedDomain< N_rank > &subdomain) | |
template<int N_rank2, typename R0 , typename R1 , typename R2 , typename R3 , typename R4 , typename R5 , typename R6 , typename R7 , typename R8 , typename R9 , typename R10 > | |
Array (Array< T_numtype, N_rank2 > &array, R0 r0, R1 r1, R2 r2, R3 r3, R4 r4, R5 r5, R6 r6, R7 r7, R8 r8, R9 r9, R10 r10) | |
const TinyVector< int, N_rank > & | base () const |
int | base (int rank) const |
iterator | begin () |
const_iterator | begin () const |
T_iterator | beginFast () const |
template<typename P_numtype2 > | |
Array< P_numtype2, N_rank > | chopComponent (P_numtype2 a, int compNum, int numComponents) const |
int | cols () const |
int | columns () const |
T_array | copy () const |
diffType | dataOffset () const |
const T_numtype *restrict | data () const |
T_numtype *restrict | data () |
const T_numtype *restrict | dataZero () const |
T_numtype *restrict | dataZero () |
diffType | dataFirstOffset () const |
const T_numtype *restrict | dataFirst () const |
T_numtype *restrict | dataFirst () |
int | depth () const |
int | dimensions () const |
RectDomain< N_rank > | domain () const |
void | dumpStructureInformation (ostream &os=cout) const |
iterator | end () |
const_iterator | end () const |
int | extent (int rank) const |
const TinyVector< int, N_rank > & | extent () const |
template<typename P_numtype2 > | |
Array< P_numtype2, N_rank > | extractComponent (P_numtype2, int compNum, int numComponents) const |
void | free () |
bool | isMajorRank (int rank) const |
bool | isMinorRank (int rank) const |
bool | isRankStoredAscending (int rank) const |
bool | isStorageContiguous () const |
int | lbound (int rank) const |
TinyVector< int, N_rank > | lbound () const |
int | length (int rank) const |
const TinyVector< int, N_rank > & | length () const |
void | makeUnique () |
sizeType | numElements () const |
int | ordering (int storageRankIndex) const |
const TinyVector< int, N_rank > & | ordering () const |
void | transposeSelf (int r0, int r1, int r2=0, int r3=0, int r4=0, int r5=0, int r6=0, int r7=0, int r8=0, int r9=0, int r10=0) |
T_array | transpose (int r0, int r1, int r2=0, int r3=0, int r4=0, int r5=0, int r6=0, int r7=0, int r8=0, int r9=0, int r10=0) const |
void | reference (const T_array &) |
void | weakReference (const T_array &) |
T_array | reindex (const TinyVector< int, N_rank > &) |
void | reindexSelf (const TinyVector< int, N_rank > &) |
void | resize (int extent) |
void | resize (int extent1, int extent2) |
void | resize (int extent1, int extent2, int extent3) |
void | resize (int extent1, int extent2, int extent3, int extent4) |
void | resize (int extent1, int extent2, int extent3, int extent4, int extent5) |
void | resize (int extent1, int extent2, int extent3, int extent4, int extent5, int extent6) |
void | resize (int extent1, int extent2, int extent3, int extent4, int extent5, int extent6, int extent7) |
void | resize (int extent1, int extent2, int extent3, int extent4, int extent5, int extent6, int extent7, int extent8) |
void | resize (int extent1, int extent2, int extent3, int extent4, int extent5, int extent6, int extent7, int extent8, int extent9) |
void | resize (int extent1, int extent2, int extent3, int extent4, int extent5, int extent6, int extent7, int extent8, int extent9, int extent10) |
void | resize (int extent1, int extent2, int extent3, int extent4, int extent5, int extent6, int extent7, int extent8, int extent9, int extent10, int extent11) |
void | resize (Range r1) |
void | resize (Range r1, Range r2) |
void | resize (Range r1, Range r2, Range r3) |
void | resize (Range r1, Range r2, Range r3, Range r4) |
void | resize (Range r1, Range r2, Range r3, Range r4, Range r5) |
void | resize (Range r1, Range r2, Range r3, Range r4, Range r5, Range r6) |
void | resize (Range r1, Range r2, Range r3, Range r4, Range r5, Range r6, Range r7) |
void | resize (Range r1, Range r2, Range r3, Range r4, Range r5, Range r6, Range r7, Range r8) |
void | resize (Range r1, Range r2, Range r3, Range r4, Range r5, Range r6, Range r7, Range r8, Range r9) |
void | resize (Range r1, Range r2, Range r3, Range r4, Range r5, Range r6, Range r7, Range r8, Range r9, Range r10) |
void | resize (Range r1, Range r2, Range r3, Range r4, Range r5, Range r6, Range r7, Range r8, Range r9, Range r10, Range r11) |
void | resize (const TinyVector< int, N_rank > &) |
void | resizeAndPreserve (const TinyVector< int, N_rank > &) |
void | resizeAndPreserve (int extent) |
void | resizeAndPreserve (int extent1, int extent2) |
void | resizeAndPreserve (int extent1, int extent2, int extent3) |
void | resizeAndPreserve (int extent1, int extent2, int extent3, int extent4) |
void | resizeAndPreserve (int extent1, int extent2, int extent3, int extent4, int extent5) |
void | resizeAndPreserve (int extent1, int extent2, int extent3, int extent4, int extent5, int extent6) |
void | resizeAndPreserve (int extent1, int extent2, int extent3, int extent4, int extent5, int extent6, int extent7) |
void | resizeAndPreserve (int extent1, int extent2, int extent3, int extent4, int extent5, int extent6, int extent7, int extent8) |
void | resizeAndPreserve (int extent1, int extent2, int extent3, int extent4, int extent5, int extent6, int extent7, int extent8, int extent9) |
void | resizeAndPreserve (int extent1, int extent2, int extent3, int extent4, int extent5, int extent6, int extent7, int extent8, int extent9, int extent10) |
void | resizeAndPreserve (int extent1, int extent2, int extent3, int extent4, int extent5, int extent6, int extent7, int extent8, int extent9, int extent10, int extent11) |
T_array | reverse (int rank) |
void | reverseSelf (int rank) |
int | rows () const |
void | setStorage (GeneralArrayStorage< N_rank >) |
void | slice (int rank, Range r) |
const TinyVector< int, N_rank > & | shape () const |
sizeType | size () const |
sizeType | storageSize () const |
Returns the length of the array storage. | |
const TinyVector< diffType, N_rank > & | stride () const |
diffType | stride (int rank) const |
bool | threadLocal (bool disableLock=true) const |
int | ubound (int rank) const |
TinyVector< int, N_rank > | ubound () const |
int | zeroOffset () const |
bool | isVectorAligned (diffType offset) const |
Returns true if the array is aligned on a simd vector width. | |
bool | isInRangeForDim (int i, int d) const |
bool | isInRange (int i0) const |
bool | isInRange (int i0, int i1) const |
bool | isInRange (int i0, int i1, int i2) const |
bool | isInRange (int i0, int i1, int i2, int i3) const |
bool | isInRange (int i0, int i1, int i2, int i3, int i4) const |
bool | isInRange (int i0, int i1, int i2, int i3, int i4, int i5) const |
bool | isInRange (int i0, int i1, int i2, int i3, int i4, int i5, int i6) const |
bool | isInRange (int i0, int i1, int i2, int i3, int i4, int i5, int i6, int i7) const |
bool | isInRange (int i0, int i1, int i2, int i3, int i4, int i5, int i6, int i7, int i8) const |
bool | isInRange (int i0, int i1, int i2, int i3, int i4, int i5, int i6, int i7, int i8, int i9) const |
bool | isInRange (int i0, int i1, int i2, int i3, int i4, int i5, int i6, int i7, int i8, int i9, int i10) const |
bool | isInRange (const T_index &index) const |
bool | assertInRange (const T_index &BZ_DEBUG_PARAM(index)) const |
bool | assertInRange (int BZ_DEBUG_PARAM(i0)) const |
bool | assertInRange (int BZ_DEBUG_PARAM(i0), int BZ_DEBUG_PARAM(i1)) const |
bool | assertInRange (int BZ_DEBUG_PARAM(i0), int BZ_DEBUG_PARAM(i1), int BZ_DEBUG_PARAM(i2)) const |
bool | assertInRange (int BZ_DEBUG_PARAM(i0), int BZ_DEBUG_PARAM(i1), int BZ_DEBUG_PARAM(i2), int BZ_DEBUG_PARAM(i3)) const |
bool | assertInRange (int BZ_DEBUG_PARAM(i0), int BZ_DEBUG_PARAM(i1), int BZ_DEBUG_PARAM(i2), int BZ_DEBUG_PARAM(i3), int BZ_DEBUG_PARAM(i4)) const |
bool | assertInRange (int BZ_DEBUG_PARAM(i0), int BZ_DEBUG_PARAM(i1), int BZ_DEBUG_PARAM(i2), int BZ_DEBUG_PARAM(i3), int BZ_DEBUG_PARAM(i4), int BZ_DEBUG_PARAM(i5)) const |
bool | assertInRange (int BZ_DEBUG_PARAM(i0), int BZ_DEBUG_PARAM(i1), int BZ_DEBUG_PARAM(i2), int BZ_DEBUG_PARAM(i3), int BZ_DEBUG_PARAM(i4), int BZ_DEBUG_PARAM(i5), int BZ_DEBUG_PARAM(i6)) const |
bool | assertInRange (int BZ_DEBUG_PARAM(i0), int BZ_DEBUG_PARAM(i1), int BZ_DEBUG_PARAM(i2), int BZ_DEBUG_PARAM(i3), int BZ_DEBUG_PARAM(i4), int BZ_DEBUG_PARAM(i5), int BZ_DEBUG_PARAM(i6), int BZ_DEBUG_PARAM(i7)) const |
bool | assertInRange (int BZ_DEBUG_PARAM(i0), int BZ_DEBUG_PARAM(i1), int BZ_DEBUG_PARAM(i2), int BZ_DEBUG_PARAM(i3), int BZ_DEBUG_PARAM(i4), int BZ_DEBUG_PARAM(i5), int BZ_DEBUG_PARAM(i6), int BZ_DEBUG_PARAM(i7), int BZ_DEBUG_PARAM(i8)) const |
bool | assertInRange (int BZ_DEBUG_PARAM(i0), int BZ_DEBUG_PARAM(i1), int BZ_DEBUG_PARAM(i2), int BZ_DEBUG_PARAM(i3), int BZ_DEBUG_PARAM(i4), int BZ_DEBUG_PARAM(i5), int BZ_DEBUG_PARAM(i6), int BZ_DEBUG_PARAM(i7), int BZ_DEBUG_PARAM(i8), int BZ_DEBUG_PARAM(i9)) const |
bool | assertInRange (int BZ_DEBUG_PARAM(i0), int BZ_DEBUG_PARAM(i1), int BZ_DEBUG_PARAM(i2), int BZ_DEBUG_PARAM(i3), int BZ_DEBUG_PARAM(i4), int BZ_DEBUG_PARAM(i5), int BZ_DEBUG_PARAM(i6), int BZ_DEBUG_PARAM(i7), int BZ_DEBUG_PARAM(i8), int BZ_DEBUG_PARAM(i9), int BZ_DEBUG_PARAM(i10)) const |
template<int N_rank2> | |
const T_numtype &restrict | operator() (const TinyVector< int, N_rank2 > &index) const |
template<int N_rank2> | |
T_numtype &restrict | operator() (const TinyVector< int, N_rank2 > &index) |
const T_numtype &restrict | operator() (TinyVector< int, 1 > index) const |
T_numtype & | operator() (TinyVector< int, 1 > index) |
const T_numtype &restrict | operator() (TinyVector< int, 2 > index) const |
T_numtype & | operator() (TinyVector< int, 2 > index) |
const T_numtype &restrict | operator() (TinyVector< int, 3 > index) const |
T_numtype & | operator() (TinyVector< int, 3 > index) |
const T_numtype &restrict | operator() (const TinyVector< int, 4 > &index) const |
T_numtype & | operator() (const TinyVector< int, 4 > &index) |
const T_numtype &restrict | operator() (const TinyVector< int, 5 > &index) const |
T_numtype & | operator() (const TinyVector< int, 5 > &index) |
const T_numtype &restrict | operator() (const TinyVector< int, 6 > &index) const |
T_numtype & | operator() (const TinyVector< int, 6 > &index) |
const T_numtype &restrict | operator() (const TinyVector< int, 7 > &index) const |
T_numtype & | operator() (const TinyVector< int, 7 > &index) |
const T_numtype &restrict | operator() (const TinyVector< int, 8 > &index) const |
T_numtype & | operator() (const TinyVector< int, 8 > &index) |
const T_numtype &restrict | operator() (const TinyVector< int, 9 > &index) const |
T_numtype & | operator() (const TinyVector< int, 9 > &index) |
const T_numtype &restrict | operator() (const TinyVector< int, 10 > &index) const |
T_numtype & | operator() (const TinyVector< int, 10 > &index) |
const T_numtype &restrict | operator() (const TinyVector< int, 11 > &index) const |
T_numtype & | operator() (const TinyVector< int, 11 > &index) |
const T_numtype &restrict | operator() (int i0) const |
T_numtype &restrict | operator() (int i0) |
const T_numtype &restrict | operator() (int i0, int i1) const |
T_numtype &restrict | operator() (int i0, int i1) |
const T_numtype &restrict | operator() (int i0, int i1, int i2) const |
T_numtype &restrict | operator() (int i0, int i1, int i2) |
const T_numtype &restrict | operator() (int i0, int i1, int i2, int i3) const |
T_numtype &restrict | operator() (int i0, int i1, int i2, int i3) |
const T_numtype &restrict | operator() (int i0, int i1, int i2, int i3, int i4) const |
T_numtype &restrict | operator() (int i0, int i1, int i2, int i3, int i4) |
const T_numtype &restrict | operator() (int i0, int i1, int i2, int i3, int i4, int i5) const |
T_numtype &restrict | operator() (int i0, int i1, int i2, int i3, int i4, int i5) |
const T_numtype &restrict | operator() (int i0, int i1, int i2, int i3, int i4, int i5, int i6) const |
T_numtype &restrict | operator() (int i0, int i1, int i2, int i3, int i4, int i5, int i6) |
const T_numtype &restrict | operator() (int i0, int i1, int i2, int i3, int i4, int i5, int i6, int i7) const |
T_numtype &restrict | operator() (int i0, int i1, int i2, int i3, int i4, int i5, int i6, int i7) |
const T_numtype &restrict | operator() (int i0, int i1, int i2, int i3, int i4, int i5, int i6, int i7, int i8) const |
T_numtype &restrict | operator() (int i0, int i1, int i2, int i3, int i4, int i5, int i6, int i7, int i8) |
const T_numtype &restrict | operator() (int i0, int i1, int i2, int i3, int i4, int i5, int i6, int i7, int i8, int i9) const |
T_numtype &restrict | operator() (int i0, int i1, int i2, int i3, int i4, int i5, int i6, int i7, int i8, int i9) |
const T_numtype &restrict | operator() (int i0, int i1, int i2, int i3, int i4, int i5, int i6, int i7, int i8, int i9, int i10) const |
T_numtype &restrict | operator() (int i0, int i1, int i2, int i3, int i4, int i5, int i6, int i7, int i8, int i9, int i10) |
T_array & | noConst () const |
T_array | operator() (const RectDomain< N_rank > &subdomain) const |
T_array | operator() (const StridedDomain< N_rank > &subdomain) const |
T_array | operator() (Range r0) const |
T_array | operator() (Range r0, Range r1) const |
T_array | operator() (Range r0, Range r1, Range r2) const |
T_array | operator() (Range r0, Range r1, Range r2, Range r3) const |
T_array | operator() (Range r0, Range r1, Range r2, Range r3, Range r4) const |
T_array | operator() (Range r0, Range r1, Range r2, Range r3, Range r4, Range r5) const |
T_array | operator() (Range r0, Range r1, Range r2, Range r3, Range r4, Range r5, Range r6) const |
T_array | operator() (Range r0, Range r1, Range r2, Range r3, Range r4, Range r5, Range r6, Range r7) const |
T_array | operator() (Range r0, Range r1, Range r2, Range r3, Range r4, Range r5, Range r6, Range r7, Range r8) const |
T_array | operator() (Range r0, Range r1, Range r2, Range r3, Range r4, Range r5, Range r6, Range r7, Range r8, Range r9) const |
T_array | operator() (Range r0, Range r1, Range r2, Range r3, Range r4, Range r5, Range r6, Range r7, Range r8, Range r9, Range r10) const |
template<int N0> | |
_bz_ArrayExpr< ArrayIndexMapping< typename asExpr< T_array >::T_expr, N0 > > | operator() (IndexPlaceholder< N0 >) const |
template<int N0, int N1> | |
_bz_ArrayExpr< ArrayIndexMapping< typename asExpr< T_array >::T_expr, N0, N1 > > | operator() (IndexPlaceholder< N0 >, IndexPlaceholder< N1 >) const |
template<int N0, int N1, int N2> | |
_bz_ArrayExpr< ArrayIndexMapping< typename asExpr< T_array >::T_expr, N0, N1, N2 > > | operator() (IndexPlaceholder< N0 >, IndexPlaceholder< N1 >, IndexPlaceholder< N2 >) const |
template<int N0, int N1, int N2, int N3> | |
_bz_ArrayExpr< ArrayIndexMapping< typename asExpr< T_array >::T_expr, N0, N1, N2, N3 > > | operator() (IndexPlaceholder< N0 >, IndexPlaceholder< N1 >, IndexPlaceholder< N2 >, IndexPlaceholder< N3 >) const |
template<int N0, int N1, int N2, int N3, int N4> | |
_bz_ArrayExpr< ArrayIndexMapping< typename asExpr< T_array >::T_expr, N0, N1, N2, N3, N4 > > | operator() (IndexPlaceholder< N0 >, IndexPlaceholder< N1 >, IndexPlaceholder< N2 >, IndexPlaceholder< N3 >, IndexPlaceholder< N4 >) const |
template<int N0, int N1, int N2, int N3, int N4, int N5> | |
_bz_ArrayExpr< ArrayIndexMapping< typename asExpr< T_array >::T_expr, N0, N1, N2, N3, N4, N5 > > | operator() (IndexPlaceholder< N0 >, IndexPlaceholder< N1 >, IndexPlaceholder< N2 >, IndexPlaceholder< N3 >, IndexPlaceholder< N4 >, IndexPlaceholder< N5 >) const |
template<int N0, int N1, int N2, int N3, int N4, int N5, int N6> | |
_bz_ArrayExpr< ArrayIndexMapping< typename asExpr< T_array >::T_expr, N0, N1, N2, N3, N4, N5, N6 > > | operator() (IndexPlaceholder< N0 >, IndexPlaceholder< N1 >, IndexPlaceholder< N2 >, IndexPlaceholder< N3 >, IndexPlaceholder< N4 >, IndexPlaceholder< N5 >, IndexPlaceholder< N6 >) const |
template<int N0, int N1, int N2, int N3, int N4, int N5, int N6, int N7> | |
_bz_ArrayExpr< ArrayIndexMapping< typename asExpr< T_array >::T_expr, N0, N1, N2, N3, N4, N5, N6, N7 > > | operator() (IndexPlaceholder< N0 >, IndexPlaceholder< N1 >, IndexPlaceholder< N2 >, IndexPlaceholder< N3 >, IndexPlaceholder< N4 >, IndexPlaceholder< N5 >, IndexPlaceholder< N6 >, IndexPlaceholder< N7 >) const |
template<int N0, int N1, int N2, int N3, int N4, int N5, int N6, int N7, int N8> | |
_bz_ArrayExpr< ArrayIndexMapping< typename asExpr< T_array >::T_expr, N0, N1, N2, N3, N4, N5, N6, N7, N8 > > | operator() (IndexPlaceholder< N0 >, IndexPlaceholder< N1 >, IndexPlaceholder< N2 >, IndexPlaceholder< N3 >, IndexPlaceholder< N4 >, IndexPlaceholder< N5 >, IndexPlaceholder< N6 >, IndexPlaceholder< N7 >, IndexPlaceholder< N8 >) const |
template<int N0, int N1, int N2, int N3, int N4, int N5, int N6, int N7, int N8, int N9> | |
_bz_ArrayExpr< ArrayIndexMapping< typename asExpr< T_array >::T_expr, N0, N1, N2, N3, N4, N5, N6, N7, N8, N9 > > | operator() (IndexPlaceholder< N0 >, IndexPlaceholder< N1 >, IndexPlaceholder< N2 >, IndexPlaceholder< N3 >, IndexPlaceholder< N4 >, IndexPlaceholder< N5 >, IndexPlaceholder< N6 >, IndexPlaceholder< N7 >, IndexPlaceholder< N8 >, IndexPlaceholder< N9 >) const |
template<int N0, int N1, int N2, int N3, int N4, int N5, int N6, int N7, int N8, int N9, int N10> | |
_bz_ArrayExpr< ArrayIndexMapping< typename asExpr< T_array >::T_expr, N0, N1, N2, N3, N4, N5, N6, N7, N8, N9, N10 > > | operator() (IndexPlaceholder< N0 >, IndexPlaceholder< N1 >, IndexPlaceholder< N2 >, IndexPlaceholder< N3 >, IndexPlaceholder< N4 >, IndexPlaceholder< N5 >, IndexPlaceholder< N6 >, IndexPlaceholder< N7 >, IndexPlaceholder< N8 >, IndexPlaceholder< N9 >, IndexPlaceholder< N10 >) const |
Array< typename multicomponent_traits< T_numtype >::T_element, N_rank > | operator[] (const unsigned component) |
const Array< typename multicomponent_traits< T_numtype >::T_element, N_rank > | operator[] (const unsigned component) const |
Array< typename multicomponent_traits< T_numtype >::T_element, N_rank > | operator[] (const int component) |
const Array< typename multicomponent_traits< T_numtype >::T_element, N_rank > | operator[] (const int component) const |
template<typename T_indexContainer > | |
IndirectArray< T_array, T_indexContainer > | operator[] (const T_indexContainer &index) |
T_numtype *restrict | getInitializationIterator () |
bool | canCollapse (int outerRank, int innerRank) const |
Assignment operators. \todo Index placeholder | |
operand.
| |
ListInitializationSwitch< T_array > | operator= (T_numtype x) |
Scalar operand assignment. | |
T_array & | initialize (T_numtype) |
Scalar operand assignment. | |
T_array & | operator+= (T_numtype) |
Scalar operand assignment. | |
T_array & | operator-= (T_numtype) |
Scalar operand assignment. | |
T_array & | operator*= (T_numtype) |
Scalar operand assignment. | |
T_array & | operator/= (T_numtype) |
Scalar operand assignment. | |
T_array & | operator%= (T_numtype) |
Scalar operand assignment. | |
T_array & | operator^= (T_numtype) |
Scalar operand assignment. | |
T_array & | operator&= (T_numtype) |
Scalar operand assignment. | |
T_array & | operator|= (T_numtype) |
Scalar operand assignment. | |
T_array & | operator>>= (T_numtype) |
Scalar operand assignment. | |
T_array & | operator<<= (T_numtype) |
Scalar operand assignment. | |
T_array & | operator= (const Array< T_numtype, N_rank > &) |
Scalar operand assignment. | |
template<typename P_numtype2 > | |
T_array & | operator= (const Array< P_numtype2, N_rank > &) |
Scalar operand assignment. | |
template<typename P_numtype2 > | |
T_array & | operator+= (const Array< P_numtype2, N_rank > &) |
Scalar operand assignment. | |
template<typename P_numtype2 > | |
T_array & | operator-= (const Array< P_numtype2, N_rank > &) |
Scalar operand assignment. | |
template<typename P_numtype2 > | |
T_array & | operator*= (const Array< P_numtype2, N_rank > &) |
Scalar operand assignment. | |
template<typename P_numtype2 > | |
T_array & | operator/= (const Array< P_numtype2, N_rank > &) |
Scalar operand assignment. | |
template<typename P_numtype2 > | |
T_array & | operator%= (const Array< P_numtype2, N_rank > &) |
Scalar operand assignment. | |
template<typename P_numtype2 > | |
T_array & | operator^= (const Array< P_numtype2, N_rank > &) |
Scalar operand assignment. | |
template<typename P_numtype2 > | |
T_array & | operator&= (const Array< P_numtype2, N_rank > &) |
Scalar operand assignment. | |
template<typename P_numtype2 > | |
T_array & | operator|= (const Array< P_numtype2, N_rank > &) |
Scalar operand assignment. | |
template<typename P_numtype2 > | |
T_array & | operator>>= (const Array< P_numtype2, N_rank > &) |
Scalar operand assignment. | |
template<typename P_numtype2 > | |
T_array & | operator<<= (const Array< P_numtype2, N_rank > &) |
Scalar operand assignment. | |
template<typename T_expr > | |
T_array & | operator= (BZ_ETPARM(_bz_ArrayExpr< T_expr >) expr) |
Scalar operand assignment. | |
template<typename T_expr > | |
T_array & | operator+= (BZ_ETPARM(_bz_ArrayExpr< T_expr >) expr) |
Scalar operand assignment. | |
template<typename T_expr > | |
T_array & | operator-= (BZ_ETPARM(_bz_ArrayExpr< T_expr >) expr) |
Scalar operand assignment. | |
template<typename T_expr > | |
T_array & | operator*= (BZ_ETPARM(_bz_ArrayExpr< T_expr >) expr) |
Scalar operand assignment. | |
template<typename T_expr > | |
T_array & | operator/= (BZ_ETPARM(_bz_ArrayExpr< T_expr >) expr) |
Scalar operand assignment. | |
template<typename T_expr > | |
T_array & | operator%= (BZ_ETPARM(_bz_ArrayExpr< T_expr >) expr) |
Scalar operand assignment. | |
template<typename T_expr > | |
T_array & | operator^= (BZ_ETPARM(_bz_ArrayExpr< T_expr >) expr) |
Scalar operand assignment. | |
template<typename T_expr > | |
T_array & | operator&= (BZ_ETPARM(_bz_ArrayExpr< T_expr >) expr) |
Scalar operand assignment. | |
template<typename T_expr > | |
T_array & | operator|= (BZ_ETPARM(_bz_ArrayExpr< T_expr >) expr) |
Scalar operand assignment. | |
template<typename T_expr > | |
T_array & | operator>>= (BZ_ETPARM(_bz_ArrayExpr< T_expr >) expr) |
Scalar operand assignment. | |
template<typename T_expr > | |
T_array & | operator<<= (BZ_ETPARM(_bz_ArrayExpr< T_expr >) expr) |
Scalar operand assignment. | |
![]() | |
MemoryBlockReference () | |
MemoryBlockReference (MemoryBlockReference< T_type > &ref, sizeType offset=0) | |
MemoryBlockReference (sizeType length, T_type *data, preexistingMemoryPolicy deletionPolicy) | |
MemoryBlockReference (sizeType items) | |
~MemoryBlockReference () | |
bool | isVectorAligned (size_t offset) const |
Returns true if the offset from data_ is vector aligned. | |
sizeType | blockLength () const |
Returns the allocated length of the memory block. | |
Static Public Member Functions | |
static int | rank () |
Static Public Attributes | |
static const int | rank_ = N_rank |
Protected Member Functions | |
_bz_inline2 void | computeStrides () |
_bz_inline2 void | setupStorage (int rank) |
void | constructSubarray (Array< T_numtype, N_rank > &array, const RectDomain< N_rank > &) |
void | constructSubarray (Array< T_numtype, N_rank > &array, const StridedDomain< N_rank > &) |
void | constructSubarray (Array< T_numtype, N_rank > &array, Range r0) |
void | constructSubarray (Array< T_numtype, N_rank > &array, Range r0, Range r1) |
void | constructSubarray (Array< T_numtype, N_rank > &array, Range r0, Range r1, Range r2) |
void | constructSubarray (Array< T_numtype, N_rank > &array, Range r0, Range r1, Range r2, Range r3) |
void | constructSubarray (Array< T_numtype, N_rank > &array, Range r0, Range r1, Range r2, Range r3, Range r4) |
void | constructSubarray (Array< T_numtype, N_rank > &array, Range r0, Range r1, Range r2, Range r3, Range r4, Range r5) |
void | constructSubarray (Array< T_numtype, N_rank > &array, Range r0, Range r1, Range r2, Range r3, Range r4, Range r5, Range r6) |
void | constructSubarray (Array< T_numtype, N_rank > &array, Range r0, Range r1, Range r2, Range r3, Range r4, Range r5, Range r6, Range r7) |
void | constructSubarray (Array< T_numtype, N_rank > &array, Range r0, Range r1, Range r2, Range r3, Range r4, Range r5, Range r6, Range r7, Range r8) |
void | constructSubarray (Array< T_numtype, N_rank > &array, Range r0, Range r1, Range r2, Range r3, Range r4, Range r5, Range r6, Range r7, Range r8, Range r9) |
void | constructSubarray (Array< T_numtype, N_rank > &array, Range r0, Range r1, Range r2, Range r3, Range r4, Range r5, Range r6, Range r7, Range r8, Range r9, Range r10) |
void | calculateZeroOffset () |
template<int N_rank2, typename R0 , typename R1 , typename R2 , typename R3 , typename R4 , typename R5 , typename R6 , typename R7 , typename R8 , typename R9 , typename R10 > | |
void | constructSlice (Array< T_numtype, N_rank2 > &array, R0 r0, R1 r1, R2 r2, R3 r3, R4 r4, R5 r5, R6 r6, R7 r7, R8 r8, R9 r9, R10 r10) |
template<int N_rank2> | |
void | slice (int &setRank, Range r, Array< T_numtype, N_rank2 > &array, TinyVector< int, N_rank2 > &rankMap, int sourceRank) |
template<int N_rank2> | |
void | slice (int &setRank, int i, Array< T_numtype, N_rank2 > &array, TinyVector< int, N_rank2 > &rankMap, int sourceRank) |
template<int N_rank2> | |
void | slice (int &, nilArraySection, Array< T_numtype, N_rank2 > &, TinyVector< int, N_rank2 > &, int) |
void | doTranspose (int destRank, int sourceRank, T_array &array) |
![]() | |
int | numReferences () const |
bool | lockReferenceCount (bool lockingPolicy) const |
void | changeToNullBlock () |
void | changeBlock (MemoryBlockReference< T_type > &ref, sizeType offset=0) |
void | newBlock (sizeType items) |
Protected Attributes | |
GeneralArrayStorage< N_rank > | storage_ |
TinyVector< int, N_rank > | length_ |
TinyVector< diffType, N_rank > | stride_ |
diffType | zeroOffset_ |
![]() | |
T_type *restrict | data_ |
Private Types | |
typedef MemoryBlockReference< P_numtype > | T_base |
Declaration of class Array, the "Swiss army knife" of Blitz expression template classes.
This is an arbitrary (at compile time) rank, arbitrary size container.
typedef ConstArrayIterator<T_numtype,N_rank> blitz::Array< P_numtype, N_rank >::const_iterator |
typedef ArrayIterator<T_numtype,N_rank> blitz::Array< P_numtype, N_rank >::iterator |
typedef Array<T_numtype, N_rank> blitz::Array< P_numtype, N_rank >::T_array |
|
private |
typedef GeneralArrayStorage<N_rank> blitz::Array< P_numtype, N_rank >::T_default_storage |
Set default storage order.
This is configurable via #defines as it is can be beneficial to set a specific storage for an entire project/file.
First check for the Fortan flag and then the column major flag, since Fortran arrays are column major.
typedef TinyVector<int, N_rank> blitz::Array< P_numtype, N_rank >::T_index |
typedef FastArrayIterator<T_numtype, N_rank> blitz::Array< P_numtype, N_rank >::T_iterator |
typedef P_numtype blitz::Array< P_numtype, N_rank >::T_numtype |
|
explicit |
Construct an array from an expression.
Because this entails a memory allocation, it is explicit so this fact is obvious to the user. (There may also be ambiguities in making it implicit?)
|
inline |
|
inlineexplicit |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
References blitz::Array< P_numtype, N_rank >::computeStrides(), blitz::MemoryBlockReference< P_numtype >::data_, blitz::Array< P_numtype, N_rank >::dataFirst(), blitz::Array< P_numtype, N_rank >::length_, blitz::Array< P_numtype, N_rank >::shape(), and blitz::Array< P_numtype, N_rank >::zeroOffset_.
|
inline |
Construct an array from an existing block of memory, with a given set of strides.
Ownership is not acquired (i.e. the memory block will not be freed by Blitz++). This constructor is used by extractComponent to make a component view of a multicomponent array, which is by design noncontiguous. This creates an incorrect length in the MemoryBlockReference (though that may be of no consequence since we're not freeing the memory).
References blitz::Array< P_numtype, N_rank >::calculateZeroOffset(), blitz::MemoryBlockReference< P_numtype >::data_, blitz::Array< P_numtype, N_rank >::dataFirst(), blitz::Array< P_numtype, N_rank >::length_, blitz::Array< P_numtype, N_rank >::shape(), blitz::Array< P_numtype, N_rank >::stride(), blitz::Array< P_numtype, N_rank >::stride_, and blitz::Array< P_numtype, N_rank >::zeroOffset_.
|
inline |
Construct an array from an existing block of memory.
If the storage represents a padded array, the length of the memory block will be incorrect, which would lead to a crash if "deleteDataWhenDone" is used. For this reason, we check that the resulting array is contiguous.
References blitz::Array< P_numtype, N_rank >::computeStrides(), blitz::Array< P_numtype, N_rank >::copy(), blitz::MemoryBlockReference< P_numtype >::data_, blitz::Array< P_numtype, N_rank >::dataFirst(), blitz::deleteDataWhenDone, blitz::duplicateData, blitz::Array< P_numtype, N_rank >::isStorageContiguous(), blitz::Array< P_numtype, N_rank >::length_, blitz::Array< P_numtype, N_rank >::reference(), blitz::Array< P_numtype, N_rank >::shape(), and blitz::Array< P_numtype, N_rank >::zeroOffset_.
|
inline |
Construct an array from an existing block of memory, with a given set of strides.
If the strides represent a noncontiguous array, the calculated length of the memory block will be wrong, which will lead to a crash if "deleteDataWhenDone" is specified. For this reason, we check that the resulting array is contiguous.
References blitz::Array< P_numtype, N_rank >::calculateZeroOffset(), blitz::Array< P_numtype, N_rank >::copy(), blitz::MemoryBlockReference< P_numtype >::data_, blitz::Array< P_numtype, N_rank >::dataFirst(), blitz::deleteDataWhenDone, blitz::duplicateData, blitz::Array< P_numtype, N_rank >::isStorageContiguous(), blitz::Array< P_numtype, N_rank >::length_, blitz::Array< P_numtype, N_rank >::reference(), blitz::Array< P_numtype, N_rank >::shape(), blitz::Array< P_numtype, N_rank >::stride(), blitz::Array< P_numtype, N_rank >::stride_, and blitz::Array< P_numtype, N_rank >::zeroOffset_.
|
inline |
blitz::Array< P_numtype, N_rank >::Array | ( | const TinyVector< int, N_rank > & | lbounds, |
const TinyVector< int, N_rank > & | extent, | ||
const GeneralArrayStorage< N_rank > & | storage = T_default_storage() |
||
) |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
References blitz::Array< P_numtype, N_rank >::reference().
blitz::Array< P_numtype, N_rank >::Array | ( | const TinyVector< int, N_rank-1 > & | shape, |
int | lastExtent, | ||
const GeneralArrayStorage< N_rank > & | storage | ||
) |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
Referenced by blitz::find().
|
inline |
|
inline |
|
protected |
Referenced by blitz::Array< P_numtype, N_rank >::Array().
|
inline |
|
inline |
References blitz::a, and blitz::Array< P_numtype, N_rank >::extractComponent().
|
inline |
References blitz::Array< P_numtype, N_rank >::length_.
|
inline |
References blitz::Array< P_numtype, N_rank >::length_.
|
protected |
Referenced by blitz::Array< P_numtype, N_rank >::Array().
|
protected |
Referenced by blitz::Array< P_numtype, N_rank >::Array().
|
protected |
Referenced by blitz::Array< P_numtype, N_rank >::Array().
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
T_array blitz::Array< P_numtype, N_rank >::copy | ( | ) | const |
Referenced by blitz::Array< P_numtype, N_rank >::Array().
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
References blitz::Array< P_numtype, N_rank >::storage_, and blitz::Array< P_numtype, N_rank >::stride_.
Referenced by blitz::Array< P_numtype, N_rank >::data().
|
inline |
References blitz::MemoryBlockReference< P_numtype >::data_.
|
inline |
References blitz::MemoryBlockReference< P_numtype >::data_.
|
inline |
References blitz::Array< P_numtype, N_rank >::length_.
|
inline |
|
inline |
|
protected |
void blitz::Array< P_numtype, N_rank >::dumpStructureInformation | ( | ostream & | os = cout | ) | const |
|
inline |
Referenced by blitz::find().
|
inline |
|
inline |
|
inline |
Array< P_numtype2, N_rank > blitz::Array< P_numtype, N_rank >::extractComponent | ( | P_numtype2 | , |
int | compNum, | ||
int | numComponents | ||
) | const |
|
inline |
|
inline |
References blitz::Array< P_numtype, N_rank >::dataFirst().
T_array & blitz::Array< P_numtype, N_rank >::initialize | ( | T_numtype | ) |
Scalar operand assignment.
Need a precondition check on isStorageContiguous when operator, is used.
We should do bounds checking, right now we will buffer overrun if the number of initializers in the list is larger than numElements.
|
inline |
|
inline |
References blitz::Array< P_numtype, N_rank >::base(), and blitz::Array< P_numtype, N_rank >::length_.
Referenced by blitz::Array< P_numtype, N_rank >::assertInRange().
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
bool blitz::Array< P_numtype, N_rank >::isStorageContiguous | ( | ) | const |
Referenced by blitz::Array< P_numtype, N_rank >::Array().
|
inline |
Returns true if the array is aligned on a simd vector width.
References blitz::Array< P_numtype, N_rank >::dataFirst(), and blitz::simdTypes< T >::isVectorAligned().
|
inline |
References blitz::Array< P_numtype, N_rank >::base().
Referenced by blitz::Array< P_numtype, N_rank >::domain().
|
inline |
|
inline |
References blitz::Array< P_numtype, N_rank >::length_.
|
inline |
void blitz::Array< P_numtype, N_rank >::makeUnique | ( | ) |
|
inline |
Referenced by blitz::Array< P_numtype, N_rank >::operator()().
|
inline |
References blitz::Array< P_numtype, N_rank >::length_, and blitz::_bz_returntype< T_ret >::product().
Referenced by blitz::Array< P_numtype, N_rank >::size().
|
inline |
Scalar operand assignment.
Need a precondition check on isStorageContiguous when operator, is used.
We should do bounds checking, right now we will buffer overrun if the number of initializers in the list is larger than numElements.
T_array & blitz::Array< P_numtype, N_rank >::operator%= | ( | const Array< P_numtype2, N_rank > & | ) |
Scalar operand assignment.
Need a precondition check on isStorageContiguous when operator, is used.
We should do bounds checking, right now we will buffer overrun if the number of initializers in the list is larger than numElements.
T_array & blitz::Array< P_numtype, N_rank >::operator%= | ( | T_numtype | ) |
Scalar operand assignment.
Need a precondition check on isStorageContiguous when operator, is used.
We should do bounds checking, right now we will buffer overrun if the number of initializers in the list is larger than numElements.
|
inline |
Scalar operand assignment.
Need a precondition check on isStorageContiguous when operator, is used.
We should do bounds checking, right now we will buffer overrun if the number of initializers in the list is larger than numElements.
T_array & blitz::Array< P_numtype, N_rank >::operator&= | ( | const Array< P_numtype2, N_rank > & | ) |
Scalar operand assignment.
Need a precondition check on isStorageContiguous when operator, is used.
We should do bounds checking, right now we will buffer overrun if the number of initializers in the list is larger than numElements.
T_array & blitz::Array< P_numtype, N_rank >::operator&= | ( | T_numtype | ) |
Scalar operand assignment.
Need a precondition check on isStorageContiguous when operator, is used.
We should do bounds checking, right now we will buffer overrun if the number of initializers in the list is larger than numElements.
|
inline |
References blitz::Array< P_numtype, N_rank >::noConst().
|
inline |
References blitz::Array< P_numtype, N_rank >::noConst().
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
References blitz::Array< P_numtype, N_rank >::noConst().
|
inline |
References blitz::Array< P_numtype, N_rank >::noConst().
|
inline |
References blitz::Array< P_numtype, N_rank >::noConst().
|
inline |
References blitz::Array< P_numtype, N_rank >::noConst().
|
inline |
References blitz::Array< P_numtype, N_rank >::noConst().
|
inline |
References blitz::Array< P_numtype, N_rank >::noConst().
|
inline |
References blitz::Array< P_numtype, N_rank >::noConst().
|
inline |
References blitz::Array< P_numtype, N_rank >::noConst().
|
inline |
References blitz::Array< P_numtype, N_rank >::noConst().
|
inline |
References blitz::Array< P_numtype, N_rank >::noConst().
|
inline |
References blitz::Array< P_numtype, N_rank >::noConst().
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
References blitz::Array< P_numtype, N_rank >::noConst().
|
inline |
References blitz::Array< P_numtype, N_rank >::noConst().
|
inline |
References blitz::Array< P_numtype, N_rank >::noConst().
|
inline |
References blitz::Array< P_numtype, N_rank >::noConst().
|
inline |
References blitz::Array< P_numtype, N_rank >::noConst().
|
inline |
References blitz::Array< P_numtype, N_rank >::noConst().
|
inline |
References blitz::Array< P_numtype, N_rank >::noConst().
|
inline |
References blitz::Array< P_numtype, N_rank >::noConst().
|
inline |
References blitz::Array< P_numtype, N_rank >::noConst().
|
inline |
References blitz::Array< P_numtype, N_rank >::noConst().
|
inline |
References blitz::Array< P_numtype, N_rank >::noConst().
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
Scalar operand assignment.
Need a precondition check on isStorageContiguous when operator, is used.
We should do bounds checking, right now we will buffer overrun if the number of initializers in the list is larger than numElements.
T_array & blitz::Array< P_numtype, N_rank >::operator*= | ( | const Array< P_numtype2, N_rank > & | ) |
Scalar operand assignment.
Need a precondition check on isStorageContiguous when operator, is used.
We should do bounds checking, right now we will buffer overrun if the number of initializers in the list is larger than numElements.
T_array & blitz::Array< P_numtype, N_rank >::operator*= | ( | T_numtype | ) |
Scalar operand assignment.
Need a precondition check on isStorageContiguous when operator, is used.
We should do bounds checking, right now we will buffer overrun if the number of initializers in the list is larger than numElements.
|
inline |
Scalar operand assignment.
Need a precondition check on isStorageContiguous when operator, is used.
We should do bounds checking, right now we will buffer overrun if the number of initializers in the list is larger than numElements.
T_array & blitz::Array< P_numtype, N_rank >::operator+= | ( | const Array< P_numtype2, N_rank > & | ) |
Scalar operand assignment.
Need a precondition check on isStorageContiguous when operator, is used.
We should do bounds checking, right now we will buffer overrun if the number of initializers in the list is larger than numElements.
T_array & blitz::Array< P_numtype, N_rank >::operator+= | ( | T_numtype | ) |
Scalar operand assignment.
Need a precondition check on isStorageContiguous when operator, is used.
We should do bounds checking, right now we will buffer overrun if the number of initializers in the list is larger than numElements.
|
inline |
Scalar operand assignment.
Need a precondition check on isStorageContiguous when operator, is used.
We should do bounds checking, right now we will buffer overrun if the number of initializers in the list is larger than numElements.
T_array & blitz::Array< P_numtype, N_rank >::operator-= | ( | const Array< P_numtype2, N_rank > & | ) |
Scalar operand assignment.
Need a precondition check on isStorageContiguous when operator, is used.
We should do bounds checking, right now we will buffer overrun if the number of initializers in the list is larger than numElements.
T_array & blitz::Array< P_numtype, N_rank >::operator-= | ( | T_numtype | ) |
Scalar operand assignment.
Need a precondition check on isStorageContiguous when operator, is used.
We should do bounds checking, right now we will buffer overrun if the number of initializers in the list is larger than numElements.
|
inline |
Scalar operand assignment.
Need a precondition check on isStorageContiguous when operator, is used.
We should do bounds checking, right now we will buffer overrun if the number of initializers in the list is larger than numElements.
T_array & blitz::Array< P_numtype, N_rank >::operator/= | ( | const Array< P_numtype2, N_rank > & | ) |
Scalar operand assignment.
Need a precondition check on isStorageContiguous when operator, is used.
We should do bounds checking, right now we will buffer overrun if the number of initializers in the list is larger than numElements.
T_array & blitz::Array< P_numtype, N_rank >::operator/= | ( | T_numtype | ) |
Scalar operand assignment.
Need a precondition check on isStorageContiguous when operator, is used.
We should do bounds checking, right now we will buffer overrun if the number of initializers in the list is larger than numElements.
|
inline |
Scalar operand assignment.
Need a precondition check on isStorageContiguous when operator, is used.
We should do bounds checking, right now we will buffer overrun if the number of initializers in the list is larger than numElements.
T_array & blitz::Array< P_numtype, N_rank >::operator<<= | ( | const Array< P_numtype2, N_rank > & | ) |
Scalar operand assignment.
Need a precondition check on isStorageContiguous when operator, is used.
We should do bounds checking, right now we will buffer overrun if the number of initializers in the list is larger than numElements.
T_array & blitz::Array< P_numtype, N_rank >::operator<<= | ( | T_numtype | ) |
Scalar operand assignment.
Need a precondition check on isStorageContiguous when operator, is used.
We should do bounds checking, right now we will buffer overrun if the number of initializers in the list is larger than numElements.
|
inline |
Scalar operand assignment.
Need a precondition check on isStorageContiguous when operator, is used.
We should do bounds checking, right now we will buffer overrun if the number of initializers in the list is larger than numElements.
T_array & blitz::Array< P_numtype, N_rank >::operator= | ( | const Array< P_numtype2, N_rank > & | ) |
Scalar operand assignment.
Need a precondition check on isStorageContiguous when operator, is used.
We should do bounds checking, right now we will buffer overrun if the number of initializers in the list is larger than numElements.
T_array & blitz::Array< P_numtype, N_rank >::operator= | ( | const Array< T_numtype, N_rank > & | ) |
Scalar operand assignment.
Need a precondition check on isStorageContiguous when operator, is used.
We should do bounds checking, right now we will buffer overrun if the number of initializers in the list is larger than numElements.
|
inline |
Scalar operand assignment.
Need a precondition check on isStorageContiguous when operator, is used.
We should do bounds checking, right now we will buffer overrun if the number of initializers in the list is larger than numElements.
|
inline |
Scalar operand assignment.
Need a precondition check on isStorageContiguous when operator, is used.
We should do bounds checking, right now we will buffer overrun if the number of initializers in the list is larger than numElements.
T_array & blitz::Array< P_numtype, N_rank >::operator>>= | ( | const Array< P_numtype2, N_rank > & | ) |
Scalar operand assignment.
Need a precondition check on isStorageContiguous when operator, is used.
We should do bounds checking, right now we will buffer overrun if the number of initializers in the list is larger than numElements.
T_array & blitz::Array< P_numtype, N_rank >::operator>>= | ( | T_numtype | ) |
Scalar operand assignment.
Need a precondition check on isStorageContiguous when operator, is used.
We should do bounds checking, right now we will buffer overrun if the number of initializers in the list is larger than numElements.
|
inline |
References blitz::Array< P_numtype, N_rank >::operator[]().
|
inline |
References blitz::Array< P_numtype, N_rank >::operator[]().
|
inline |
|
inline |
References blitz::Array< P_numtype, N_rank >::extractComponent().
Referenced by blitz::Array< P_numtype, N_rank >::operator[]().
|
inline |
|
inline |
Scalar operand assignment.
Need a precondition check on isStorageContiguous when operator, is used.
We should do bounds checking, right now we will buffer overrun if the number of initializers in the list is larger than numElements.
T_array & blitz::Array< P_numtype, N_rank >::operator^= | ( | const Array< P_numtype2, N_rank > & | ) |
Scalar operand assignment.
Need a precondition check on isStorageContiguous when operator, is used.
We should do bounds checking, right now we will buffer overrun if the number of initializers in the list is larger than numElements.
T_array & blitz::Array< P_numtype, N_rank >::operator^= | ( | T_numtype | ) |
Scalar operand assignment.
Need a precondition check on isStorageContiguous when operator, is used.
We should do bounds checking, right now we will buffer overrun if the number of initializers in the list is larger than numElements.
|
inline |
Scalar operand assignment.
Need a precondition check on isStorageContiguous when operator, is used.
We should do bounds checking, right now we will buffer overrun if the number of initializers in the list is larger than numElements.
T_array & blitz::Array< P_numtype, N_rank >::operator|= | ( | const Array< P_numtype2, N_rank > & | ) |
Scalar operand assignment.
Need a precondition check on isStorageContiguous when operator, is used.
We should do bounds checking, right now we will buffer overrun if the number of initializers in the list is larger than numElements.
T_array & blitz::Array< P_numtype, N_rank >::operator|= | ( | T_numtype | ) |
Scalar operand assignment.
Need a precondition check on isStorageContiguous when operator, is used.
We should do bounds checking, right now we will buffer overrun if the number of initializers in the list is larger than numElements.
|
inline |
References blitz::Array< P_numtype, N_rank >::storage_.
|
inline |
References blitz::Array< P_numtype, N_rank >::storage_.
|
inlinestatic |
References blitz::Array< P_numtype, N_rank >::rank_.
Referenced by blitz::Array< P_numtype, N_rank >::base(), blitz::Array< P_numtype, N_rank >::extent(), blitz::Array< P_numtype, N_rank >::isMajorRank(), blitz::Array< P_numtype, N_rank >::isMinorRank(), blitz::Array< P_numtype, N_rank >::isRankStoredAscending(), blitz::Array< P_numtype, N_rank >::lbound(), blitz::Array< P_numtype, N_rank >::length(), blitz::Array< P_numtype, N_rank >::stride(), and blitz::Array< P_numtype, N_rank >::ubound().
void blitz::Array< P_numtype, N_rank >::reference | ( | const T_array & | ) |
Referenced by blitz::Array< P_numtype, N_rank >::Array().
T_array blitz::Array< P_numtype, N_rank >::reindex | ( | const TinyVector< int, N_rank > & | ) |
void blitz::Array< P_numtype, N_rank >::reindexSelf | ( | const TinyVector< int, N_rank > & | ) |
void blitz::Array< P_numtype, N_rank >::resize | ( | const TinyVector< int, N_rank > & | ) |
void blitz::Array< P_numtype, N_rank >::resize | ( | int | extent | ) |
void blitz::Array< P_numtype, N_rank >::resize | ( | int | extent1, |
int | extent2 | ||
) |
void blitz::Array< P_numtype, N_rank >::resize | ( | int | extent1, |
int | extent2, | ||
int | extent3 | ||
) |
void blitz::Array< P_numtype, N_rank >::resize | ( | int | extent1, |
int | extent2, | ||
int | extent3, | ||
int | extent4 | ||
) |
void blitz::Array< P_numtype, N_rank >::resize | ( | int | extent1, |
int | extent2, | ||
int | extent3, | ||
int | extent4, | ||
int | extent5 | ||
) |
void blitz::Array< P_numtype, N_rank >::resize | ( | int | extent1, |
int | extent2, | ||
int | extent3, | ||
int | extent4, | ||
int | extent5, | ||
int | extent6 | ||
) |
void blitz::Array< P_numtype, N_rank >::resize | ( | int | extent1, |
int | extent2, | ||
int | extent3, | ||
int | extent4, | ||
int | extent5, | ||
int | extent6, | ||
int | extent7 | ||
) |
void blitz::Array< P_numtype, N_rank >::resize | ( | int | extent1, |
int | extent2, | ||
int | extent3, | ||
int | extent4, | ||
int | extent5, | ||
int | extent6, | ||
int | extent7, | ||
int | extent8 | ||
) |
void blitz::Array< P_numtype, N_rank >::resize | ( | int | extent1, |
int | extent2, | ||
int | extent3, | ||
int | extent4, | ||
int | extent5, | ||
int | extent6, | ||
int | extent7, | ||
int | extent8, | ||
int | extent9 | ||
) |
void blitz::Array< P_numtype, N_rank >::resize | ( | int | extent1, |
int | extent2, | ||
int | extent3, | ||
int | extent4, | ||
int | extent5, | ||
int | extent6, | ||
int | extent7, | ||
int | extent8, | ||
int | extent9, | ||
int | extent10 | ||
) |
void blitz::Array< P_numtype, N_rank >::resize | ( | int | extent1, |
int | extent2, | ||
int | extent3, | ||
int | extent4, | ||
int | extent5, | ||
int | extent6, | ||
int | extent7, | ||
int | extent8, | ||
int | extent9, | ||
int | extent10, | ||
int | extent11 | ||
) |
void blitz::Array< P_numtype, N_rank >::resize | ( | Range | r1 | ) |
void blitz::Array< P_numtype, N_rank >::resize | ( | Range | r1, |
Range | r2 | ||
) |
void blitz::Array< P_numtype, N_rank >::resize | ( | Range | r1, |
Range | r2, | ||
Range | r3 | ||
) |
void blitz::Array< P_numtype, N_rank >::resize | ( | Range | r1, |
Range | r2, | ||
Range | r3, | ||
Range | r4 | ||
) |
void blitz::Array< P_numtype, N_rank >::resize | ( | Range | r1, |
Range | r2, | ||
Range | r3, | ||
Range | r4, | ||
Range | r5 | ||
) |
void blitz::Array< P_numtype, N_rank >::resize | ( | Range | r1, |
Range | r2, | ||
Range | r3, | ||
Range | r4, | ||
Range | r5, | ||
Range | r6 | ||
) |
void blitz::Array< P_numtype, N_rank >::resize | ( | Range | r1, |
Range | r2, | ||
Range | r3, | ||
Range | r4, | ||
Range | r5, | ||
Range | r6, | ||
Range | r7 | ||
) |
void blitz::Array< P_numtype, N_rank >::resize | ( | Range | r1, |
Range | r2, | ||
Range | r3, | ||
Range | r4, | ||
Range | r5, | ||
Range | r6, | ||
Range | r7, | ||
Range | r8 | ||
) |
void blitz::Array< P_numtype, N_rank >::resize | ( | Range | r1, |
Range | r2, | ||
Range | r3, | ||
Range | r4, | ||
Range | r5, | ||
Range | r6, | ||
Range | r7, | ||
Range | r8, | ||
Range | r9 | ||
) |
void blitz::Array< P_numtype, N_rank >::resize | ( | Range | r1, |
Range | r2, | ||
Range | r3, | ||
Range | r4, | ||
Range | r5, | ||
Range | r6, | ||
Range | r7, | ||
Range | r8, | ||
Range | r9, | ||
Range | r10 | ||
) |
void blitz::Array< P_numtype, N_rank >::resize | ( | Range | r1, |
Range | r2, | ||
Range | r3, | ||
Range | r4, | ||
Range | r5, | ||
Range | r6, | ||
Range | r7, | ||
Range | r8, | ||
Range | r9, | ||
Range | r10, | ||
Range | r11 | ||
) |
void blitz::Array< P_numtype, N_rank >::resizeAndPreserve | ( | const TinyVector< int, N_rank > & | ) |
void blitz::Array< P_numtype, N_rank >::resizeAndPreserve | ( | int | extent | ) |
void blitz::Array< P_numtype, N_rank >::resizeAndPreserve | ( | int | extent1, |
int | extent2 | ||
) |
void blitz::Array< P_numtype, N_rank >::resizeAndPreserve | ( | int | extent1, |
int | extent2, | ||
int | extent3 | ||
) |
void blitz::Array< P_numtype, N_rank >::resizeAndPreserve | ( | int | extent1, |
int | extent2, | ||
int | extent3, | ||
int | extent4 | ||
) |
void blitz::Array< P_numtype, N_rank >::resizeAndPreserve | ( | int | extent1, |
int | extent2, | ||
int | extent3, | ||
int | extent4, | ||
int | extent5 | ||
) |
void blitz::Array< P_numtype, N_rank >::resizeAndPreserve | ( | int | extent1, |
int | extent2, | ||
int | extent3, | ||
int | extent4, | ||
int | extent5, | ||
int | extent6 | ||
) |
void blitz::Array< P_numtype, N_rank >::resizeAndPreserve | ( | int | extent1, |
int | extent2, | ||
int | extent3, | ||
int | extent4, | ||
int | extent5, | ||
int | extent6, | ||
int | extent7 | ||
) |
void blitz::Array< P_numtype, N_rank >::resizeAndPreserve | ( | int | extent1, |
int | extent2, | ||
int | extent3, | ||
int | extent4, | ||
int | extent5, | ||
int | extent6, | ||
int | extent7, | ||
int | extent8 | ||
) |
void blitz::Array< P_numtype, N_rank >::resizeAndPreserve | ( | int | extent1, |
int | extent2, | ||
int | extent3, | ||
int | extent4, | ||
int | extent5, | ||
int | extent6, | ||
int | extent7, | ||
int | extent8, | ||
int | extent9 | ||
) |
void blitz::Array< P_numtype, N_rank >::resizeAndPreserve | ( | int | extent1, |
int | extent2, | ||
int | extent3, | ||
int | extent4, | ||
int | extent5, | ||
int | extent6, | ||
int | extent7, | ||
int | extent8, | ||
int | extent9, | ||
int | extent10 | ||
) |
void blitz::Array< P_numtype, N_rank >::resizeAndPreserve | ( | int | extent1, |
int | extent2, | ||
int | extent3, | ||
int | extent4, | ||
int | extent5, | ||
int | extent6, | ||
int | extent7, | ||
int | extent8, | ||
int | extent9, | ||
int | extent10, | ||
int | extent11 | ||
) |
T_array blitz::Array< P_numtype, N_rank >::reverse | ( | int | rank | ) |
void blitz::Array< P_numtype, N_rank >::reverseSelf | ( | int | rank | ) |
|
inline |
References blitz::Array< P_numtype, N_rank >::length_.
void blitz::Array< P_numtype, N_rank >::setStorage | ( | GeneralArrayStorage< N_rank > | ) |
|
protected |
Referenced by blitz::Array< P_numtype, N_rank >::Array().
|
inline |
References blitz::Array< P_numtype, N_rank >::length_.
Referenced by blitz::Array< P_numtype, N_rank >::Array().
|
inline |
References blitz::Array< P_numtype, N_rank >::numElements().
Referenced by blitz::find().
|
inlineprotected |
|
protected |
|
protected |
void blitz::Array< P_numtype, N_rank >::slice | ( | int | rank, |
Range | r | ||
) |
|
inline |
Returns the length of the array storage.
This can be larger than the number of elements due to padding to meet alignment requirements. If you want to extract the array data to, for example, write it to disk, this is the size of the block needed.
References blitz::MemoryBlockReference< P_numtype >::blockLength().
|
inline |
References blitz::Array< P_numtype, N_rank >::stride_.
Referenced by blitz::Array< P_numtype, N_rank >::Array(), and blitz::Array< P_numtype, N_rank >::canCollapse().
|
inline |
|
inline |
T_array blitz::Array< P_numtype, N_rank >::transpose | ( | int | r0, |
int | r1, | ||
int | r2 = 0 , |
||
int | r3 = 0 , |
||
int | r4 = 0 , |
||
int | r5 = 0 , |
||
int | r6 = 0 , |
||
int | r7 = 0 , |
||
int | r8 = 0 , |
||
int | r9 = 0 , |
||
int | r10 = 0 |
||
) | const |
void blitz::Array< P_numtype, N_rank >::transposeSelf | ( | int | r0, |
int | r1, | ||
int | r2 = 0 , |
||
int | r3 = 0 , |
||
int | r4 = 0 , |
||
int | r5 = 0 , |
||
int | r6 = 0 , |
||
int | r7 = 0 , |
||
int | r8 = 0 , |
||
int | r9 = 0 , |
||
int | r10 = 0 |
||
) |
|
inline |
References blitz::Array< P_numtype, N_rank >::base(), and blitz::Array< P_numtype, N_rank >::extent().
Referenced by blitz::Array< P_numtype, N_rank >::domain().
|
inline |
void blitz::Array< P_numtype, N_rank >::weakReference | ( | const T_array & | ) |
|
inline |
References blitz::Array< P_numtype, N_rank >::zeroOffset_.
|
protected |
Referenced by blitz::Array< P_numtype, N_rank >::Array(), blitz::Array< P_numtype, N_rank >::assertInRange(), blitz::Array< P_numtype, N_rank >::cols(), blitz::Array< P_numtype, N_rank >::columns(), blitz::Array< P_numtype, N_rank >::dataFirstOffset(), blitz::Array< P_numtype, N_rank >::depth(), blitz::Array< P_numtype, N_rank >::extent(), blitz::Array< P_numtype, N_rank >::free(), blitz::Array< P_numtype, N_rank >::isInRange(), blitz::Array< P_numtype, N_rank >::isInRangeForDim(), blitz::Array< P_numtype, N_rank >::length(), blitz::Array< P_numtype, N_rank >::numElements(), blitz::Array< P_numtype, N_rank >::rows(), blitz::Array< P_numtype, N_rank >::shape(), and blitz::Array< P_numtype, N_rank >::ubound().
|
static |
Referenced by blitz::Array< P_numtype, N_rank >::rank().
|
protected |
Referenced by blitz::Array< P_numtype, N_rank >::Array(), blitz::Array< P_numtype, N_rank >::assertInRange(), blitz::Array< P_numtype, N_rank >::base(), blitz::Array< P_numtype, N_rank >::dataFirstOffset(), blitz::Array< P_numtype, N_rank >::dataOffset(), blitz::Array< P_numtype, N_rank >::isMajorRank(), blitz::Array< P_numtype, N_rank >::isMinorRank(), blitz::Array< P_numtype, N_rank >::isRankStoredAscending(), and blitz::Array< P_numtype, N_rank >::ordering().
|
protected |
|
protected |