LSSTApplications
10.0+286,10.0+36,10.0+46,10.0-2-g4f67435,10.1+152,10.1+37,11.0,11.0+1,11.0-1-g47edd16,11.0-1-g60db491,11.0-1-g7418c06,11.0-2-g04d2804,11.0-2-g68503cd,11.0-2-g818369d,11.0-2-gb8b8ce7
LSSTDataManagementBasePackage
|
CRTP base class for all multidimensional expressions. More...
#include <ExpressionBase.h>
Public Types | |
typedef ExpressionTraits < Derived >::Element | Element |
Data type of expression elements. More... | |
typedef ExpressionTraits < Derived >::ND | ND |
Number of dimensions (boost::mpl::int_). More... | |
typedef ExpressionTraits < Derived >::Iterator | Iterator |
Nested expression or element iterator. More... | |
typedef ExpressionTraits < Derived >::Reference | Reference |
Nested expression or element reference. More... | |
typedef ExpressionTraits < Derived >::Value | Value |
Nested expression or element value type. More... | |
typedef Vector< int, ND::value > | Index |
Vector type for N-dimensional indices. More... | |
typedef Derived | Self |
CRTP derived type. More... | |
typedef Value | value_type |
typedef Iterator | iterator |
typedef Iterator | const_iterator |
typedef Reference | reference |
typedef Reference | const_reference |
typedef Iterator | pointer |
typedef int | difference_type |
typedef int | size_type |
Public Member Functions | |
Reference | operator[] (int n) const |
Return a single nested expression or element. More... | |
Reference | front () const |
Return the first nested expression or element. More... | |
Reference | back () const |
Return the last nested expression or element. More... | |
Iterator | begin () const |
Return an Iterator to the beginning of the expression. More... | |
Iterator | end () const |
Return an Iterator to one past the end of the expression. More... | |
template<int P> | |
int | getSize () const |
Return the size of a specific dimension. More... | |
Index | getShape () const |
Return a Vector of the sizes of all dimensions. More... | |
int | getNumElements () const |
Return the total number of elements in the expression. More... | |
size_type | size () const |
Return the size of the first dimension. More... | |
bool | empty () const |
Return true if the first dimension has no elements. More... | |
Protected Member Functions | |
Self & | getSelf () |
Self const & | getSelf () const |
CRTP base class for all multidimensional expressions.
ExpressionBase is a CRTP base class for both true array objects (subclasses of ArrayBase) and lazy array expressions, which are created by most arithmetic, bitwise, and logical operations on arrays. These lazy expressions have most of the features of a true array to a const data type.
ExpressionBase also provides implementations for a few STL compatibility and convenience member functions.
Definition at line 52 of file ExpressionBase.h.
typedef Iterator ndarray::ExpressionBase< Derived >::const_iterator |
Definition at line 97 of file ExpressionBase.h.
typedef Reference ndarray::ExpressionBase< Derived >::const_reference |
Definition at line 99 of file ExpressionBase.h.
typedef int ndarray::ExpressionBase< Derived >::difference_type |
Definition at line 101 of file ExpressionBase.h.
typedef ExpressionTraits<Derived>::Element ndarray::ExpressionBase< Derived >::Element |
Data type of expression elements.
Definition at line 55 of file ExpressionBase.h.
typedef Vector<int,ND::value> ndarray::ExpressionBase< Derived >::Index |
Vector type for N-dimensional indices.
Definition at line 65 of file ExpressionBase.h.
typedef ExpressionTraits<Derived>::Iterator ndarray::ExpressionBase< Derived >::Iterator |
Nested expression or element iterator.
Definition at line 59 of file ExpressionBase.h.
typedef Iterator ndarray::ExpressionBase< Derived >::iterator |
Definition at line 96 of file ExpressionBase.h.
typedef ExpressionTraits<Derived>::ND ndarray::ExpressionBase< Derived >::ND |
Number of dimensions (boost::mpl::int_).
Definition at line 57 of file ExpressionBase.h.
typedef Iterator ndarray::ExpressionBase< Derived >::pointer |
Definition at line 100 of file ExpressionBase.h.
typedef ExpressionTraits<Derived>::Reference ndarray::ExpressionBase< Derived >::Reference |
Nested expression or element reference.
Definition at line 61 of file ExpressionBase.h.
typedef Reference ndarray::ExpressionBase< Derived >::reference |
Definition at line 98 of file ExpressionBase.h.
typedef Derived ndarray::ExpressionBase< Derived >::Self |
CRTP derived type.
Definition at line 67 of file ExpressionBase.h.
typedef int ndarray::ExpressionBase< Derived >::size_type |
Definition at line 102 of file ExpressionBase.h.
typedef ExpressionTraits<Derived>::Value ndarray::ExpressionBase< Derived >::Value |
Nested expression or element value type.
Definition at line 63 of file ExpressionBase.h.
typedef Value ndarray::ExpressionBase< Derived >::value_type |
Definition at line 95 of file ExpressionBase.h.
|
inline |
Return the last nested expression or element.
Definition at line 76 of file ExpressionBase.h.
|
inline |
Return an Iterator to the beginning of the expression.
Definition at line 79 of file ExpressionBase.h.
|
inline |
Return true if the first dimension has no elements.
Definition at line 108 of file ExpressionBase.h.
|
inline |
Return an Iterator to one past the end of the expression.
Definition at line 82 of file ExpressionBase.h.
|
inline |
Return the first nested expression or element.
Definition at line 73 of file ExpressionBase.h.
|
inline |
Return the total number of elements in the expression.
Definition at line 91 of file ExpressionBase.h.
|
inlineprotected |
Definition at line 113 of file ExpressionBase.h.
|
inlineprotected |
Definition at line 114 of file ExpressionBase.h.
|
inline |
|
inline |
|
inline |
|
inline |
Return the size of the first dimension.
Definition at line 105 of file ExpressionBase.h.