blitz
Version 1.0.2
|
#include <range.h>
Classes | |
class | SliceInfo |
struct | tvresult |
The vectorized return type for a Range should be another range, but that's not useful since a vectorized TinyVector assignment can not contain index placeholders. More... | |
Public Types | |
typedef int | T_numtype |
typedef opType< T_numtype >::T_optype | T_optype |
typedef asET< T_numtype >::T_wrapped | T_typeprop |
typedef unwrapET< T_typeprop >::T_unwrapped | T_result |
typedef void | T_ctorArg1 |
typedef char | T_ctorArg2 |
typedef TinyVector< int, 1 > | T_index |
typedef Range | T_range_result |
![]() | |
typedef Range | T_unwrapped |
Public Member Functions | |
Range () | |
Range (const Range &r) | |
Range (T_numtype slicePosition) | |
Range (T_numtype first, T_numtype last, diffType stride=1) | |
T_numtype | operator* () const |
T_numtype | first_value () const |
int | ascending (const int) const |
int | ordering (const int) const |
int | lbound (const int) const |
int | ubound (const int) const |
RectDomain< rank_ > | domain () const |
bool | assertInRange (const T_index &BZ_DEBUG_PARAM(index)) const |
template<int N_rank> | |
T_numtype | operator() (const TinyVector< int, N_rank > &i) const |
T_numtype | operator[] (int i) const |
T_numtype | operator() (int i) const |
template<int N_rank> | |
const Range | operator() (const RectDomain< N_rank > &d) const |
void | push (int) |
void | pop (int) |
void | advance () |
void | advance (int) |
void | loadStride (int) |
bool | isUnitStride (int) const |
void | advanceUnitStride () |
bool | canCollapse (int, int) const |
T_numtype | fastRead (diffType) const |
template<int N> | |
tvresult< N >::Type | fastRead_tv (diffType) const |
void | _bz_offsetData (sizeType i) const |
void | _bz_offsetData (sizeType offset, int dim) const |
void | _bz_offsetData (sizeType offset1, int dim1, sizeType offset2, int dim2) const |
diffType | suggestStride (int) const |
bool | isStride (int, diffType) const |
void | moveTo (int) const |
T_numtype | shift (int offset, int dim) const |
T_numtype | shift (int offset1, int dim1, int offset2, int dim2) const |
template<int N_rank> | |
void | moveTo (const TinyVector< int, N_rank > &) const |
void | prettyPrint (std::string &str, prettyPrintFormat &format) const |
T_numtype | first (T_numtype lowRange=0) const |
T_numtype | last (T_numtype highRange=0) const |
int | length (int=0) const |
diffType | stride () const |
bool | isAscendingContiguous () const |
void | setRange (T_numtype first, T_numtype last, diffType stride=1) |
bool | isUnitStride () const |
Range | operator- (T_numtype shift) const |
Range | operator+ (T_numtype shift) const |
template<typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 > | |
SliceInfo< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11 >::T_slice | operator() (T1 r1, T2 r2, T3 r3, T4 r4, T5 r5, T6 r6, T7 r7, T8 r8, T9 r9, T10 r10, T11 r11) const |
![]() | |
ETBase () | |
ETBase (const ETBase< Range > &) | |
Range & | unwrap () |
const Range & | unwrap () const |
ETBase< Range > & | wrap () |
const ETBase< Range > & | wrap () const |
Static Public Member Functions | |
static Range | all () |
Static Public Attributes | |
static const int | numArrayOperands = 0 |
static const int | numTVOperands = 0 |
static const int | numTMOperands = 0 |
static const int | numIndexPlaceholders = 1 |
static const int | minWidth = simdTypes<T_numtype>::vecWidth |
static const int | maxWidth = simdTypes<T_numtype>::vecWidth |
static const int | rank_ = 1 |
Private Attributes | |
T_numtype | first_ |
T_numtype | last_ |
diffType | stride_ |
Friends | |
ostream & | operator<< (ostream &os, const Range &range) |
typedef void blitz::Range::T_ctorArg1 |
typedef char blitz::Range::T_ctorArg2 |
typedef TinyVector<int, 1> blitz::Range::T_index |
typedef int blitz::Range::T_numtype |
typedef opType<T_numtype>::T_optype blitz::Range::T_optype |
typedef Range blitz::Range::T_range_result |
typedef unwrapET<T_typeprop>::T_unwrapped blitz::Range::T_result |
typedef asET<T_numtype>::T_wrapped blitz::Range::T_typeprop |
|
inline |
References first_, blitz::fromStart, last_, stride_, and blitz::toEnd.
Referenced by all(), operator+(), and operator-().
|
inlineexplicit |
References stride().
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
Referenced by operator()().
|
inline |
RectDomain<rank_> blitz::Range::domain | ( | ) | const |
References first_.
Referenced by blitz::Array< P_numtype, 1 >::Array(), and setRange().
|
inline |
|
inline |
References first_, last_, and stride_.
Referenced by blitz::Array< P_numtype, 1 >::Array().
|
inline |
|
inline |
References last_.
Referenced by setRange().
|
inline |
|
inline |
References first_, last_, and stride_.
Referenced by blitz::Array< P_numtype, 1 >::Array(), and ubound().
|
inline |
|
inline |
|
inline |
|
inline |
References assertInRange(), and operator[]().
|
inline |
References operator[]().
|
inline |
|
inline |
|
inline |
T_numtype blitz::Range::operator[] | ( | int | i | ) | const |
Referenced by operator()().
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
References stride_.
Referenced by Range(), and setRange().
|
inline |
|
inline |
References length().
|
friend |
|
private |
Referenced by first(), isAscendingContiguous(), length(), operator+(), operator-(), prettyPrint(), Range(), and setRange().
|
private |
Referenced by isAscendingContiguous(), last(), length(), operator+(), operator-(), prettyPrint(), Range(), and setRange().
|
static |
|
static |
|
static |
|
static |
|
static |
|
private |
Referenced by isAscendingContiguous(), isUnitStride(), length(), operator+(), operator-(), prettyPrint(), Range(), setRange(), and stride().