SLIP
1.4
|
This is a four-dimensional dynamic and generic container. This container statisfies the BidirectionnalContainer concepts of the STL. It is also an 4d extension of the RandomAccessContainer concept. That is to say the bracket element access is replaced by the quadruple bracket element access. More...
#include <Array4d.hpp>
Public Member Functions | |
void | resize (std::size_t d1, std::size_t d2, std::size_t d3, std::size_t d4, const T &val=T()) |
Resizes a Array4d. More... | |
std::string | name () const |
Returns the name of the class. More... | |
size_type | dim1 () const |
Returns the number of slabs (first dimension size, called time dimension too) in the Array4d. More... | |
size_type | slabs () const |
Returns the number of slabs (first dimension size, called time dimension too) in the Array4d. More... | |
size_type | dim2 () const |
Returns the number of slices (second dimension size) in the Array4d. More... | |
size_type | slices () const |
Returns the number of slices (second dimension size) in the Array4d. More... | |
size_type | dim3 () const |
Returns the number of rows (third dimension size) in the Array4d. More... | |
size_type | rows () const |
Returns the number of rows (third dimension size) in the Array4d. More... | |
size_type | dim4 () const |
Returns the number of columns (fourth dimension size) in the Array4d. More... | |
size_type | cols () const |
Returns the number of columns (fourth dimension size) in the Array4d. More... | |
size_type | columns () const |
Returns the number of columns (fourth dimension size) in the Array4d. More... | |
size_type | size () const |
Returns the number of elements in the Array4d. More... | |
size_type | max_size () const |
Returns the maximal size (number of elements) in the Array4d. More... | |
bool | empty () const |
Returns true if the Array4d is empty. (Thus size() == 0) More... | |
void | swap (Array4d &M) |
Swaps data with another Array4d. More... | |
template<typename T> | |
Array4d (const typename Array4d< T >::size_type d1, const typename Array4d< T >::size_type d2, const typename Array4d< T >::size_type d3, const typename Array4d< T >::size_type d4) | |
template<typename T> | |
Array4d (const typename Array4d< T >::size_type d1, const typename Array4d< T >::size_type d2, const typename Array4d< T >::size_type d3, const typename Array4d< T >::size_type d4, const T &val) | |
template<typename T> | |
Array4d (const typename Array4d< T >::size_type d1, const typename Array4d< T >::size_type d2, const typename Array4d< T >::size_type d3, const typename Array4d< T >::size_type d4, const T *val) | |
Constructors & Destructors | |
Array4d () | |
Constructs a Array4d. More... | |
Array4d (const std::size_t d1, const std::size_t d2, const std::size_t d3, const std::size_t d4) | |
Constructs a Array4d. More... | |
Array4d (const std::size_t d1, const std::size_t d2, const std::size_t d3, const std::size_t d4, const T &val) | |
Constructs a Array4d initialized by the scalar value val. More... | |
Array4d (const std::size_t d1, const std::size_t d2, const std::size_t d3, const std::size_t d4, const T *val) | |
Constructs a Array4d initialized by an array val. More... | |
template<typename InputIterator > | |
Array4d (const size_type d1, const size_type d2, const size_type d3, const size_type d4, InputIterator first, InputIterator last) | |
Contructs a Array4d from a range. More... | |
Array4d (const Array4d< T > &rhs) | |
Constructs a copy of the Array4d rhs. More... | |
~Array4d () | |
Destructor of the Array4d. More... | |
One dimensional global iterators | |
const_iterator | begin () const |
Returns a read-only (constant) iterator that points to the first element in the Array4d. Iteration is done in ordinary element order. More... | |
iterator | begin () |
Returns a read/write iterator that points to the first element in the Array4d. Iteration is done in ordinary element order. More... | |
iterator | end () |
Returns a read/write iterator that points one past the last element in the Array4d. Iteration is done in ordinary element order. More... | |
const_iterator | end () const |
Returns a read-only (constant) iterator that points one past the last element in the Array4d. Iteration is done in ordinary element order. More... | |
reverse_iterator | rbegin () |
Returns a read/write reverse iterator that points to the last element in the Array4d. Iteration is done in reverse element order. More... | |
const_reverse_iterator | rbegin () const |
Returns a read-only (constant) reverse iterator that points to the last element in the Array4d. Iteration is done in reverse element order. More... | |
reverse_iterator | rend () |
Returns a read/write reverse iterator that points to one before the first element in the Array4d. Iteration is done in reverse element order. More... | |
const_reverse_iterator | rend () const |
Returns a read-only (constant) reverse iterator that points to one before the first element in the Array4d. Iteration is done in reverse element order. More... | |
One dimensional slab iterators | |
slab_iterator | slab_begin (const size_type slice, const size_type row, const size_type col) |
Returns a read/write iterator that points to the first element of the line (slice,row,col) through the slabs in the Array4d. Iteration is done in ordinary element order (increasing slab number). More... | |
const_slab_iterator | slab_begin (const size_type slice, const size_type row, const size_type col) const |
Returns a read-only (constant) iterator that points to the first element of the line (slice,row,col) through the slabs in the Array4d. Iteration is done in ordinary element order (increasing slab number). More... | |
slab_iterator | slab_end (const size_type slice, const size_type row, const size_type col) |
Returns a read/write iterator that points to the one past the end element of the line (slice,row,col) through the slabs in the Array4d. Iteration is done in ordinary element order (increasing slab number). More... | |
const_slab_iterator | slab_end (const size_type slice, const size_type row, const size_type col) const |
Returns a read-only (constant) iterator that points to the one past the end element of the line (slice,row,col) through the slabs in the Array4d. Iteration is done in ordinary element order (increasing slab number). More... | |
reverse_slab_iterator | slab_rbegin (const size_type slice, const size_type row, const size_type col) |
Returns a read/write iterator that points to the last element of the line (slice,row,col) through the slabs in the Array4d. Iteration is done in reverse element order (decreasing slab number). More... | |
const_reverse_slab_iterator | slab_rbegin (const size_type slice, const size_type row, const size_type col) const |
Returns a read-only (constant) iterator that points to the last element of the line (slice,row,col) through the slabs in the Array4d. Iteration is done in reverse element order (decreasing slab number). More... | |
reverse_slab_iterator | slab_rend (const size_type slice, const size_type row, const size_type col) |
Returns a read/write iterator that points to the one before the first element of the line (slice,row,col) through the slabs in the Array4d. Iteration is done in reverse element order (decreasing slab number). More... | |
const_reverse_slab_iterator | slab_rend (const size_type slice, const size_type row, const size_type col) const |
Returns a read (constant) iterator that points to the one before the first element of the line (slice,row,col) through the slabs in the Array4d. Iteration is done in reverse element order (decreasing slab number). More... | |
One dimensional slice iterators | |
slice_iterator | slice_begin (const size_type slab, const size_type row, const size_type col) |
Returns a read/write iterator that points to the first element of the line (slab,row,col) through the slices in the Array4d. Iteration is done in ordinary element order (increasing slice number). More... | |
const_slice_iterator | slice_begin (const size_type slab, const size_type row, const size_type col) const |
Returns a read-only (constant) iterator that points to the first element of the line (slab,row,col) through the slices in the Array4d. Iteration is done in ordinary element order (increasing slice number). More... | |
slice_iterator | slice_end (const size_type slab, const size_type row, const size_type col) |
Returns a read/write iterator that points to the one past the end element of the line (slab,row,col) through the slices in the Array4d. Iteration is done in ordinary element order (increasing slice number). More... | |
const_slice_iterator | slice_end (const size_type slab, const size_type row, const size_type col) const |
Returns a read-only (constant) iterator that points to the one past the end element of the line (slab,row,col) through the slices in the Array4d. Iteration is done in ordinary element order (increasing slice number). More... | |
reverse_slice_iterator | slice_rbegin (const size_type slab, const size_type row, const size_type col) |
Returns a read/write iterator that points to the last element of the line (slab,row,col) through the slices in the Array4d. Iteration is done in reverse element order (decreasing slice number). More... | |
const_reverse_slice_iterator | slice_rbegin (const size_type slab, const size_type row, const size_type col) const |
Returns a read-only (constant) iterator that points to the last element of the line (slab,row,col) through the slices in the Array4d. Iteration is done in reverse element order (decreasing slice number). More... | |
reverse_slice_iterator | slice_rend (const size_type slab, const size_type row, const size_type col) |
Returns a read/write iterator that points to the one before the first element of the line (slab,row,col) through the slices in the Array4d. Iteration is done in reverse element order (decreasing slice number). More... | |
const_reverse_slice_iterator | slice_rend (const size_type slab, const size_type row, const size_type col) const |
Returns a read (constant) iterator that points to the one before the first element of the line (slab,row,col) through the slices in the Array4d. Iteration is done in reverse element order (decreasing slice number). More... | |
One dimensional row iterators | |
row_iterator | row_begin (const size_type slab, const size_type slice, const size_type row) |
Returns a read/write iterator that points to the first element of the row row of a given slab slab and a given slice slice in the Array4d. Iteration is done in ordinary element order. More... | |
const_row_iterator | row_begin (const size_type slab, const size_type slice, const size_type row) const |
Returns a read_only iterator that points to the first element of the row row of a given slab slab and a given slice slice in the Array4d. Iteration is done in ordinary element order. More... | |
row_iterator | row_end (const size_type slab, const size_type slice, const size_type row) |
Returns a read/write iterator that points to the past-the-end element of the row row of a given slab slab and a given slice slice in the Array4d. Iteration is done in ordinary element order. More... | |
const_row_iterator | row_end (const size_type slab, const size_type slice, const size_type row) const |
Returns a read_only iterator that points to the past-the-end element of the row row of a given slab slab and a given slice slice in the Array4d. Iteration is done in ordinary element order. More... | |
reverse_row_iterator | row_rbegin (const size_type slab, const size_type slice, const size_type row) |
Returns a read/write reverse iterator that points to the last element of the row row of a given slab slab and a given slice slice in the Array4d. Iteration is done in reverse element order. More... | |
const_reverse_row_iterator | row_rbegin (const size_type slab, const size_type slice, const size_type row) const |
Returns a read_only reverse iterator that points to the last element of the row row of a given slab slab and a given slice slice in the Array4d. Iteration is done in reverse element order. More... | |
reverse_row_iterator | row_rend (const size_type slab, const size_type slice, const size_type row) |
Returns a read/write reverse iterator that points to the first element of the row row of a given slab slab and a given slice slice in the Array4d. Iteration is done in reverse element order. More... | |
const_reverse_row_iterator | row_rend (const size_type slab, const size_type slice, const size_type row) const |
Returns a read_only reverse iterator that points to the first element of the row row of a given slab slab and a given slice slice in the Array4d. Iteration is done in reverse element order. More... | |
One dimensional col iterators | |
col_iterator | col_begin (const size_type slab, const size_type slice, const size_type col) |
Returns a read/write iterator that points to the first element of the column column of a given slab slab and a given slice slice in the Array4d. Iteration is done modulo the number of columns. More... | |
const_col_iterator | col_begin (const size_type slab, const size_type slice, const size_type col) const |
Returns a read_only iterator that points to the first element of the column column of a given slab slab and a given slice slice in the Array4d. Iteration is done modulo the number of columns. More... | |
col_iterator | col_end (const size_type slab, const size_type slice, const size_type col) |
Returns a read/write iterator that points to the past-the-end element of the column column of a given slab slab and a given slice slice in the Array4d. Iteration is done modulo the number of columns. More... | |
const_col_iterator | col_end (const size_type slab, const size_type slice, const size_type col) const |
Returns a read_only iterator that points to the past-the-end element of the column column of a given slab slab and a given slice slice in the Array4d. Iteration is done modulo the number of columns. More... | |
reverse_col_iterator | col_rbegin (const size_type slab, const size_type slice, const size_type col) |
Returns a read/write reverse iterator that points to the last element of the column column of a given slab slab and a given slice slice in the Array4d. Iteration is done modulo the number of columns. More... | |
const_reverse_col_iterator | col_rbegin (const size_type slab, const size_type slice, const size_type col) const |
Returns a read_only reverse iterator that points to the last element of the column column of a given slab slab and a given slice slice in the Array4d. Iteration is done modulo the number of columns. More... | |
reverse_col_iterator | col_rend (const size_type slab, const size_type slice, const size_type col) |
Returns a read/write reverse iterator that points to the first element of the column column of a given slab slab and a given slice slice in the Array4d. Iteration is done modulo the number of columns. More... | |
const_reverse_col_iterator | col_rend (const size_type slab, const size_type slice, const size_type col) const |
Returns a read_only reverse iterator that points to the first element of the column column of a given slab slab and a given slice slice in the Array4d. Iteration is done modulo the number of columns. More... | |
One dimensional slab range iterators | |
slab_range_iterator | slab_begin (const size_type slice, const size_type row, const size_type col, const slip::Range< int > &range) |
Returns a read/write iterator that points to the first element of the Range range of the of the line (slice,row,col) through the slabs in the Array4d. Iteration is done in ordinary element order according to the Range. More... | |
slab_range_iterator | slab_end (const size_type slice, const size_type row, const size_type col, const slip::Range< int > &range) |
Returns a read/write iterator that points one past the end element of the Range range of the of the line (slice,row,col) through the slabs in the Array4d. Iteration is done in ordinary element order according to the Range. More... | |
const_slab_range_iterator | slab_begin (const size_type slice, const size_type row, const size_type col, const slip::Range< int > &range) const |
Returns a read only (constant) iterator that points to the first element of the Range range of the of the line (slice,row,col) through the slabs in the Array4d. Iteration is done in ordinary element order according to the Range. More... | |
const_slab_range_iterator | slab_end (const size_type slice, const size_type row, const size_type col, const slip::Range< int > &range) const |
Returns a read_only iterator that points one past the last element of the Range range of the of the line (slice,row,col) through the slabs in the Array4d. Iteration is done in ordinary element order according to the Range. More... | |
reverse_slab_range_iterator | slab_rbegin (const size_type slice, const size_type row, const size_type col, const slip::Range< int > &range) |
Returns a read/write iterator that points to the last element of the Range range of the of the line (slice,row,col) through the slabs in the Array4d. Iteration is done in the reverse element order according to the Range. More... | |
reverse_slab_range_iterator | slab_rend (const size_type slice, const size_type row, const size_type col, const slip::Range< int > &range) |
Returns a read/write iterator that points to the first element of the Range range of the of the line (slice,row,col) through the slabs in the Array4d. Iteration is done in reverse element order according to the Range. More... | |
const_reverse_slab_range_iterator | slab_rbegin (const size_type slice, const size_type row, const size_type col, const slip::Range< int > &range) const |
Returns a read only (constant) iterator that points to the last element of the Range range of the of the line (slice,row,col) through the slabs in the Array4d. Iteration is done in reverse element order according to the Range. More... | |
const_reverse_slab_range_iterator | slab_rend (const size_type slice, const size_type row, const size_type col, const slip::Range< int > &range) const |
Returns a read_only iterator that points one past the lastto the first element of the Range range of the of the line (slice,row,col) through the slabs in the Array4d. Iteration is done in reverse element order according to the Range. More... | |
One dimensional slice range iterators | |
slice_range_iterator | slice_begin (const size_type slab, const size_type row, const size_type col, const slip::Range< int > &range) |
Returns a read/write iterator that points to the first element of the Range range of the of the line (slab,row,col) through the slices in the Array4d. Iteration is done in ordinary element order according to the Range. More... | |
slice_range_iterator | slice_end (const size_type slab, const size_type row, const size_type col, const slip::Range< int > &range) |
Returns a read/write iterator that points one past the end element of the Range range of the of the line (slab,row,col) through the slices in the Array4d. Iteration is done in ordinary element order according to the Range. More... | |
const_slice_range_iterator | slice_begin (const size_type slab, const size_type row, const size_type col, const slip::Range< int > &range) const |
Returns a read only (constant) iterator that points to the first element of the Range range of the of the line (slab,row,col) through the slices in the Array4d. Iteration is done in ordinary element order according to the Range. More... | |
const_slice_range_iterator | slice_end (const size_type slab, const size_type row, const size_type col, const slip::Range< int > &range) const |
Returns a read_only iterator that points one past the last element of the Range range of the of the line (slab,row,col) through the slices in the Array4d. Iteration is done in ordinary element order according to the Range. More... | |
reverse_slice_range_iterator | slice_rbegin (const size_type slab, const size_type row, const size_type col, const slip::Range< int > &range) |
Returns a read/write iterator that points to the last element of the Range range of the of the line (slab,row,col) through the slices in the Array4d. Iteration is done in the reverse element order according to the Range. More... | |
reverse_slice_range_iterator | slice_rend (const size_type slab, const size_type row, const size_type col, const slip::Range< int > &range) |
Returns a read/write iterator that points to the first element of the Range range of the of the line (slab,row,col) through the slices in the Array4d. Iteration is done in reverse element order according to the Range. More... | |
const_reverse_slice_range_iterator | slice_rbegin (const size_type slab, const size_type row, const size_type col, const slip::Range< int > &range) const |
Returns a read only (constant) iterator that points to the last element of the Range range of the of the line (slab,row,col) through the slices in the Array4d. Iteration is done in reverse element order according to the Range. More... | |
const_reverse_slice_range_iterator | slice_rend (const size_type slab, const size_type row, const size_type col, const slip::Range< int > &range) const |
Returns a read_only iterator that points one past the lastto the first element of the Range range of the of the line (slab,row,col) through the slices in the Array4d. Iteration is done in reverse element order according to the Range. More... | |
One dimensional row range iterators | |
row_range_iterator | row_begin (const size_type slab, const size_type slice, const size_type row, const slip::Range< int > &range) |
Returns a read/write iterator that points to the first element of the Range range of the row row in the slab slab and the slice slice in the Array4d. Iteration is done in ordinary element order according to the Range. More... | |
row_range_iterator | row_end (const size_type slab, const size_type slice, const size_type row, const slip::Range< int > &range) |
Returns a read/write iterator that points one past the end element of the Range range of the row row in the slab slab and the slice slice in the Array4d. Iteration is done in ordinary element order according to the Range. More... | |
const_row_range_iterator | row_begin (const size_type slab, const size_type slice, const size_type row, const slip::Range< int > &range) const |
Returns a read-only iterator that points to the first element of the Range range of the row row in the slab slab and the slice slice in the Array4d. Iteration is done in ordinary element order according to the Range. More... | |
const_row_range_iterator | row_end (const size_type slab, const size_type slice, const size_type row, const slip::Range< int > &range) const |
Returns a read_only iterator that points one past the last element of the Range range of the row row in the slab slab and the slice slice in the Array4d. Iteration is done in ordinary element order according to the Range. More... | |
reverse_row_range_iterator | row_rbegin (const size_type slab, const size_type slice, const size_type row, const slip::Range< int > &range) |
Returns a read-write iterator that points to the last element of the Range range of the row row in the slab slab and the slice slice in the Array4d. Iteration is done in the reverse element order according to the Range. More... | |
reverse_row_range_iterator | row_rend (const size_type slab, const size_type slice, const size_type row, const slip::Range< int > &range) |
Returns a read-write iterator that points one before the first element of the Range range of the row row in the slab slab and the slice slice in the Array4d. Iteration is done in the reverse element order according to the Range. More... | |
const_reverse_row_range_iterator | row_rbegin (const size_type slab, const size_type slice, const size_type row, const slip::Range< int > &range) const |
Returns a read-only iterator that points to the last element of the Range range of the row row in the slab slab and the slice slice in the Array4d. Iteration is done in the reverse element order according to the Range. More... | |
const_reverse_row_range_iterator | row_rend (const size_type slab, const size_type slice, const size_type row, const slip::Range< int > &range) const |
Returns a read-only iterator that points one before the first element of the Range range of the row row in the slab slab and the slice slice in the Array4d. Iteration is done in the reverse element order according to the Range. More... | |
One dimensional col range iterators | |
col_range_iterator | col_begin (const size_type slab, const size_type slice, const size_type col, const slip::Range< int > &range) |
Returns a read-write iterator that points to the first element of the Range range of the col col in the slab slab and the slice slice in the Array4d. Iteration is done in ordinary element order according to the Range. More... | |
col_range_iterator | col_end (const size_type slab, const size_type slice, const size_type col, const slip::Range< int > &range) |
Returns a read-write iterator that points to the past the end element of the Range range of the col col in the slab slab and the slice slice in the Array4d. Iteration is done in ordinary element order according to the Range. More... | |
const_col_range_iterator | col_begin (const size_type slab, const size_type slice, const size_type col, const slip::Range< int > &range) const |
Returns a read-only iterator that points to the first element of the Range range of the col col in the slab slab and the slice slice in the Array4d. Iteration is done in ordinary element order according to the Range. More... | |
const_col_range_iterator | col_end (const size_type slab, const size_type slice, const size_type col, const slip::Range< int > &range) const |
Returns a read-only iterator that points to the past the end element of the Range range of the col col in the slab slab and the slice slice in the Array4d. More... | |
reverse_col_range_iterator | col_rbegin (const size_type slab, const size_type slice, const size_type col, const slip::Range< int > &range) |
Returns a read-write iterator that points to the last element of the Range range of the col of a slice col in the slab slab and the slice slice in the Array4d. Iteration is done in the reverse element order according to the Range. More... | |
reverse_col_range_iterator | col_rend (const size_type slab, const size_type slice, const size_type col, const slip::Range< int > &range) |
Returns a read-write iterator that points to one before the first element of the Range range of the col of a slice col in the slab slab and the slice slice in the Array4d. Iteration is done in the reverse element order according to the Range. More... | |
const_reverse_col_range_iterator | col_rbegin (const size_type slab, const size_type slice, const size_type col, const slip::Range< int > &range) const |
Returns a read_only iterator that points to the last element of the Range & range of the col of a slice col in the slab slab and the slice slice in the Array4d. Iteration is done in the reverse element order according to the Range. More... | |
const_reverse_col_range_iterator | col_rend (const size_type slab, const size_type slice, const size_type col, const slip::Range< int > &range) const |
Returns a read-only iterator that points to the first element of the Range range of the col of a slice col in the slab slab and the slice slice in the Array4d. Iteration is done in the reverse element order according to the Range. More... | |
four dimensional iterators : Global iterators | |
iterator4d | first_front_upper_left () |
Returns a read/write iterator4d that points to the first element of the Array4d. It points to the first front upper left element of the Array4d. More... | |
iterator4d | last_back_bottom_right () |
Returns a read/write iterator4d that points to the past the end element of the Array4d. It points to past the end element of the last back bottom right element of the Array4d. More... | |
const_iterator4d | first_front_upper_left () const |
Returns a read-only iterator4d that points to the first element of the Array4d. It points to the fist front upper left element of the Array4d. More... | |
const_iterator4d | last_back_bottom_right () const |
Returns a read-only iterator4d that points to the past the end element of the Array4d. It points to past the end element of the last back bottom right element of the Array4d. More... | |
reverse_iterator4d | rfirst_front_upper_left () |
Returns a read/write reverse iterator4d. It points to the last back bottom right element of the Array4d. Iteration is done within the Array4d in the reverse order. More... | |
reverse_iterator4d | rlast_back_bottom_right () |
Returns a read/write reverse iterator4d. It points to past the first front upper left element of the Array4d. Iteration is done in the reverse order. More... | |
const_reverse_iterator4d | rfirst_front_upper_left () const |
Returns a read only reverse iterator4d that points. It points to the last back bottom right element of the Array4d. Iteration is done within the Array4d in the reverse order. More... | |
const_reverse_iterator4d | rlast_back_bottom_right () const |
Returns a read only reverse iterator4d. It points to past the first front upper left element of the Array4d. Iteration is done in the reverse order. More... | |
four dimensional iterators : Box iterators | |
iterator4d | first_front_upper_left (const Box4d< int > &box) |
Returns a read/write iterator4d that points to the first element of the Array4d. It points to the first front upper left element of the Box4d associated to the Array4d. More... | |
iterator4d | last_back_bottom_right (const Box4d< int > &box) |
Returns a read/write iterator4d that points to the past the end element of the Array4d. It points to past the end element of the last back bottom right element of the Box4d associated to the Array4d. More... | |
const_iterator4d | first_front_upper_left (const Box4d< int > &box) const |
Returns a read only iterator4d that points to the first element of the Array4d. It points to the front upper left element of the Box4d associated to the Array4d. More... | |
const_iterator4d | last_back_bottom_right (const Box4d< int > &box) const |
Returns a read only iterator4d that points to the past the end element of the Array4d. It points to past the end element of the back bottom right element of the Box4d associated to the Array4d. More... | |
reverse_iterator4d | rfirst_front_upper_left (const Box4d< int > &box) |
Returns a read/write reverse iterator4d. It points to the back bottom right element of the Box4d associated to the Array4d. Iteration is done in the reverse order. More... | |
reverse_iterator4d | rlast_back_bottom_right (const Box4d< int > &box) |
Returns a read/write reverse iterator4d. It points to one before the front upper left element of the Box4d box associated to the Array4d. More... | |
const_reverse_iterator4d | rfirst_front_upper_left (const Box4d< int > &box) const |
Returns a read only reverse iterator4d. It points to the back bottom right element of the Box4d box associated to the Array4d. Iteration is done in the reverse order. More... | |
const_reverse_iterator4d | rlast_back_bottom_right (const Box4d< int > &box) const |
Returns a read-only reverse iterator4d. It points to one before the front element of the bottom right element of the Box4d box associated to the Array4d. More... | |
four dimensional iterators : Range iterators | |
iterator4d_range | first_front_upper_left (const range &slab_range, const range &slice_range, const range &row_range, const range &col_range) |
Returns a read/write iterator4d_range that points to the first front upper left element of the ranges slab_range, slice_range, row_range and col_range associated to the Array4d. More... | |
iterator4d_range | last_back_bottom_right (const range &slab_range, const range &slice_range, const range &row_range, const range &col_range) |
Returns a read/write iterator4d_range that points to the past the end last back bottom right element of the ranges slab_range, slice_range, row_range and col_range associated to the Array4d. More... | |
const_iterator4d_range | first_front_upper_left (const range &slab_range, const range &slice_range, const range &row_range, const range &col_range) const |
Returns a read-only iterator4d_range that points to the to the first front upper left element of the ranges slab_range, slice_range, row_range and col_range associated to the Array4d. More... | |
const_iterator4d_range | last_back_bottom_right (const range &slab_range, const range &slice_range, const range &row_range, const range &col_range) const |
Returns a read-only iterator4d_range that points to the past the end last back bottom right element of the ranges slab_range, slice_range, row_range and col_range associated to the Array4d. More... | |
reverse_iterator4d_range | rfirst_front_upper_left (const range &slab_range, const range &slice_range, const range &row_range, const range &col_range) |
Returns a read/write reverse_iterator4d_range that points to the past the last back bottom right element of the ranges slab_range, slice_range, row_range and col_range associated to the Array4d. Iteration is done in the reverse order. More... | |
reverse_iterator4d_range | rlast_back_bottom_right (const range &slab_range, const range &slice_range, const range &row_range, const range &col_range) |
Returns a read/write reverse_iterator4d_range that points to one before the first front upper left element of the ranges slab_range, slice_range, row_range and col_range associated to the Array4d. Iteration is done in the reverse order. More... | |
const_reverse_iterator4d_range | rfirst_front_upper_left (const range &slab_range, const range &slice_range, const range &row_range, const range &col_range) const |
Returns a read-only reverse_iterator4d_range that points to the past the last back bottom right element of the ranges slab_range, slice_range, row_range and col_range associated to the Array4d. Iteration is done in the reverse order. More... | |
const_reverse_iterator4d_range | rlast_back_bottom_right (const range &slab_range, const range &slice_range, const range &row_range, const range &col_range) const |
Returns a read-only reverse_iterator4d_range that points to one before the first front upper left element of the ranges slab_range, slice_range, row_range and col_range associated to the Array4d. Iteration is done in the reverse order. More... | |
Assignment operators and methods | |
self & | operator= (const Array4d< T > &rhs) |
Assign a Array4d. More... | |
self & | operator= (const T &value) |
Assign all the elments of the Array4d by value. More... | |
void | fill (const T &value) |
Fills the container range [begin(),begin()+size()) with copies of value. More... | |
void | fill (const T *value) |
Fills the container range [begin(),begin()+size()) with a copy of the value array. More... | |
template<typename InputIterator > | |
void | fill (InputIterator first, InputIterator last) |
Fills the container range [begin(),begin()+size()) with a copy of the range [first,last) More... | |
Element access operators | |
T *** | operator[] (const size_type l) |
const T **const * | operator[] (const size_type l) const |
reference | operator() (const size_type l, const size_type k, const size_type i, const size_type j) |
Subscript access to the data contained in the Array4d. More... | |
const_reference | operator() (const size_type l, const size_type k, const size_type i, const size_type j) const |
Subscript access to the data contained in the Array4d. More... | |
Static Public Attributes | |
static const std::size_t | DIM = 4 |
Friends | |
class | boost::serialization::access |
i/o operators | |
std::ostream & | operator<< (std::ostream &out, const self &a) |
Write the Array4d to the ouput stream. More... | |
Comparison operators | |
bool | operator== (const Array4d< T > &x, const Array4d< T > &y) |
Array4d equality comparison More... | |
bool | operator!= (const Array4d< T > &x, const Array4d< T > &y) |
Array4d inequality comparison More... | |
bool | operator< (const Array4d< T > &x, const Array4d< T > &y) |
Less than comparison operator (Array4d ordering relation) More... | |
bool | operator> (const Array4d< T > &x, const Array4d< T > &y) |
More than comparison operator. More... | |
bool | operator<= (const Array4d< T > &x, const Array4d< T > &y) |
Less than equal comparison operator. More... | |
bool | operator>= (const Array4d< T > &x, const Array4d< T > &y) |
More than equal comparison operator. More... | |
This is a four-dimensional dynamic and generic container. This container statisfies the BidirectionnalContainer concepts of the STL. It is also an 4d extension of the RandomAccessContainer concept. That is to say the bracket element access is replaced by the quadruple bracket element access.
T | Type of the elements in the Array4d. |
Definition at line 105 of file Array4d.hpp.
typedef slip::stride_iterator<pointer> slip::Array4d< T >::col_iterator |
Definition at line 190 of file Array4d.hpp.
typedef slip::stride_iterator<col_iterator> slip::Array4d< T >::col_range_iterator |
Definition at line 199 of file Array4d.hpp.
typedef slip::stride_iterator<const_pointer> slip::Array4d< T >::const_col_iterator |
Definition at line 191 of file Array4d.hpp.
typedef slip::stride_iterator<const_col_iterator> slip::Array4d< T >::const_col_range_iterator |
Definition at line 200 of file Array4d.hpp.
typedef const_iterator4d slip::Array4d< T >::const_default_iterator |
Definition at line 232 of file Array4d.hpp.
typedef value_type const* slip::Array4d< T >::const_iterator |
Definition at line 178 of file Array4d.hpp.
typedef slip::const_iterator4d_box<const_self> slip::Array4d< T >::const_iterator4d |
Definition at line 221 of file Array4d.hpp.
typedef slip::const_iterator4d_range<const_self> slip::Array4d< T >::const_iterator4d_range |
Definition at line 223 of file Array4d.hpp.
typedef value_type const* slip::Array4d< T >::const_pointer |
Definition at line 172 of file Array4d.hpp.
typedef value_type const& slip::Array4d< T >::const_reference |
Definition at line 169 of file Array4d.hpp.
typedef std::reverse_iterator<const_col_iterator> slip::Array4d< T >::const_reverse_col_iterator |
Definition at line 209 of file Array4d.hpp.
typedef std::reverse_iterator<const_col_range_iterator> slip::Array4d< T >::const_reverse_col_range_iterator |
Definition at line 217 of file Array4d.hpp.
typedef std::reverse_iterator<const_iterator> slip::Array4d< T >::const_reverse_iterator |
Definition at line 181 of file Array4d.hpp.
typedef std::reverse_iterator<const_iterator4d> slip::Array4d< T >::const_reverse_iterator4d |
Definition at line 226 of file Array4d.hpp.
typedef std::reverse_iterator<const_iterator4d_range> slip::Array4d< T >::const_reverse_iterator4d_range |
Definition at line 228 of file Array4d.hpp.
typedef std::reverse_iterator<const_iterator> slip::Array4d< T >::const_reverse_row_iterator |
Definition at line 207 of file Array4d.hpp.
typedef std::reverse_iterator<const_row_range_iterator> slip::Array4d< T >::const_reverse_row_range_iterator |
Definition at line 215 of file Array4d.hpp.
typedef std::reverse_iterator<const_slab_iterator> slip::Array4d< T >::const_reverse_slab_iterator |
Definition at line 203 of file Array4d.hpp.
typedef std::reverse_iterator<const_slice_range_iterator> slip::Array4d< T >::const_reverse_slab_range_iterator |
Definition at line 211 of file Array4d.hpp.
typedef std::reverse_iterator<const_slice_iterator> slip::Array4d< T >::const_reverse_slice_iterator |
Definition at line 205 of file Array4d.hpp.
typedef std::reverse_iterator<const_slice_range_iterator> slip::Array4d< T >::const_reverse_slice_range_iterator |
Definition at line 213 of file Array4d.hpp.
typedef const_pointer slip::Array4d< T >::const_row_iterator |
Definition at line 189 of file Array4d.hpp.
typedef slip::stride_iterator<const_pointer> slip::Array4d< T >::const_row_range_iterator |
Definition at line 198 of file Array4d.hpp.
typedef const Array4d<T> slip::Array4d< T >::const_self |
Definition at line 166 of file Array4d.hpp.
typedef slip::stride_iterator<const_pointer> slip::Array4d< T >::const_slab_iterator |
Definition at line 185 of file Array4d.hpp.
typedef slip::stride_iterator<const_slab_iterator> slip::Array4d< T >::const_slab_range_iterator |
Definition at line 194 of file Array4d.hpp.
typedef slip::stride_iterator<const_pointer> slip::Array4d< T >::const_slice_iterator |
Definition at line 187 of file Array4d.hpp.
typedef slip::stride_iterator<const_slice_iterator> slip::Array4d< T >::const_slice_range_iterator |
Definition at line 196 of file Array4d.hpp.
typedef iterator4d slip::Array4d< T >::default_iterator |
Definition at line 231 of file Array4d.hpp.
typedef ptrdiff_t slip::Array4d< T >::difference_type |
Definition at line 174 of file Array4d.hpp.
typedef value_type* slip::Array4d< T >::iterator |
Definition at line 177 of file Array4d.hpp.
typedef slip::iterator4d_box<self> slip::Array4d< T >::iterator4d |
Definition at line 220 of file Array4d.hpp.
typedef slip::iterator4d_range<self> slip::Array4d< T >::iterator4d_range |
Definition at line 222 of file Array4d.hpp.
typedef value_type* slip::Array4d< T >::pointer |
Definition at line 171 of file Array4d.hpp.
typedef slip::Range<int> slip::Array4d< T >::range |
Definition at line 235 of file Array4d.hpp.
typedef value_type& slip::Array4d< T >::reference |
Definition at line 168 of file Array4d.hpp.
typedef std::reverse_iterator<col_iterator> slip::Array4d< T >::reverse_col_iterator |
Definition at line 208 of file Array4d.hpp.
typedef std::reverse_iterator<col_range_iterator> slip::Array4d< T >::reverse_col_range_iterator |
Definition at line 216 of file Array4d.hpp.
typedef std::reverse_iterator<iterator> slip::Array4d< T >::reverse_iterator |
Definition at line 180 of file Array4d.hpp.
typedef std::reverse_iterator<iterator4d> slip::Array4d< T >::reverse_iterator4d |
Definition at line 225 of file Array4d.hpp.
typedef std::reverse_iterator<iterator4d_range> slip::Array4d< T >::reverse_iterator4d_range |
Definition at line 227 of file Array4d.hpp.
typedef std::reverse_iterator<iterator> slip::Array4d< T >::reverse_row_iterator |
Definition at line 206 of file Array4d.hpp.
typedef std::reverse_iterator<row_range_iterator> slip::Array4d< T >::reverse_row_range_iterator |
Definition at line 214 of file Array4d.hpp.
typedef std::reverse_iterator<slab_iterator> slip::Array4d< T >::reverse_slab_iterator |
Definition at line 202 of file Array4d.hpp.
typedef std::reverse_iterator<slice_range_iterator> slip::Array4d< T >::reverse_slab_range_iterator |
Definition at line 210 of file Array4d.hpp.
typedef std::reverse_iterator<slice_iterator> slip::Array4d< T >::reverse_slice_iterator |
Definition at line 204 of file Array4d.hpp.
typedef std::reverse_iterator<slice_range_iterator> slip::Array4d< T >::reverse_slice_range_iterator |
Definition at line 212 of file Array4d.hpp.
typedef pointer slip::Array4d< T >::row_iterator |
Definition at line 188 of file Array4d.hpp.
typedef slip::stride_iterator<pointer> slip::Array4d< T >::row_range_iterator |
Definition at line 197 of file Array4d.hpp.
typedef Array4d<T> slip::Array4d< T >::self |
Definition at line 165 of file Array4d.hpp.
typedef std::size_t slip::Array4d< T >::size_type |
Definition at line 175 of file Array4d.hpp.
typedef slip::stride_iterator<pointer> slip::Array4d< T >::slab_iterator |
Definition at line 184 of file Array4d.hpp.
typedef slip::stride_iterator<slab_iterator> slip::Array4d< T >::slab_range_iterator |
Definition at line 193 of file Array4d.hpp.
typedef slip::stride_iterator<pointer> slip::Array4d< T >::slice_iterator |
Definition at line 186 of file Array4d.hpp.
typedef slip::stride_iterator<slice_iterator> slip::Array4d< T >::slice_range_iterator |
Definition at line 195 of file Array4d.hpp.
typedef T slip::Array4d< T >::value_type |
Definition at line 164 of file Array4d.hpp.
|
inline |
Constructs a Array4d.
Definition at line 3251 of file Array4d.hpp.
slip::Array4d< T >::Array4d | ( | const std::size_t | d1, |
const std::size_t | d2, | ||
const std::size_t | d3, | ||
const std::size_t | d4 | ||
) |
Constructs a Array4d.
d1 | first dimension of the Array4d |
d2 | second dimension of the Array4d |
d3 | third dimension of the Array4d |
d4 | fourth dimension of the Array4d |
slip::Array4d< T >::Array4d | ( | const std::size_t | d1, |
const std::size_t | d2, | ||
const std::size_t | d3, | ||
const std::size_t | d4, | ||
const T & | val | ||
) |
Constructs a Array4d initialized by the scalar value val.
d1 | first dimension of the Array4d |
d2 | second dimension of the Array4d |
d3 | third dimension of the Array4d |
d4 | fourth dimension of the Array4d |
val | initialization value of the elements |
slip::Array4d< T >::Array4d | ( | const std::size_t | d1, |
const std::size_t | d2, | ||
const std::size_t | d3, | ||
const std::size_t | d4, | ||
const T * | val | ||
) |
Constructs a Array4d initialized by an array val.
d1 | first dimension of the Array4d |
d2 | second dimension of the Array4d |
d3 | third dimension of the Array4d |
d4 | fourth dimension of the Array4d |
val | initialization array value of the elements |
|
inline |
Contructs a Array4d from a range.
d1 | first dimension of the Array4d |
d2 | second dimension of the Array4d |
d3 | third dimension of the Array4d |
d4 | fourth dimension of the Array4d |
first | An input iterator. |
last | An input iterator. |
Definition at line 303 of file Array4d.hpp.
|
inline |
Constructs a copy of the Array4d rhs.
Definition at line 3296 of file Array4d.hpp.
|
inline |
Destructor of the Array4d.
Definition at line 3308 of file Array4d.hpp.
|
inline |
Definition at line 3258 of file Array4d.hpp.
|
inline |
Definition at line 3270 of file Array4d.hpp.
|
inline |
Definition at line 3283 of file Array4d.hpp.
|
inline |
Returns a read-only (constant) iterator that points to the first element in the Array4d. Iteration is done in ordinary element order.
Definition at line 3390 of file Array4d.hpp.
|
inline |
Returns a read/write iterator that points to the first element in the Array4d. Iteration is done in ordinary element order.
Definition at line 3404 of file Array4d.hpp.
col_iterator slip::Array4d< T >::col_begin | ( | const size_type | slab, |
const size_type | slice, | ||
const size_type | col | ||
) |
Returns a read/write iterator that points to the first element of the column column of a given slab slab and a given slice slice in the Array4d. Iteration is done modulo the number of columns.
slab | The index of the slab. |
slice | The index of the slice. |
col | The index of the column |
const_col_iterator slip::Array4d< T >::col_begin | ( | const size_type | slab, |
const size_type | slice, | ||
const size_type | col | ||
) | const |
Returns a read_only iterator that points to the first element of the column column of a given slab slab and a given slice slice in the Array4d. Iteration is done modulo the number of columns.
slab | The index of the slab. |
slice | The index of the slice. |
col | The index of the column |
col_range_iterator slip::Array4d< T >::col_begin | ( | const size_type | slab, |
const size_type | slice, | ||
const size_type | col, | ||
const slip::Range< int > & | range | ||
) |
Returns a read-write iterator that points to the first element of the Range range of the col col in the slab slab and the slice slice in the Array4d. Iteration is done in ordinary element order according to the Range.
slab | slab coordinate of the line |
slice | The index of the slice. |
col | The index of the column to iterate. |
range | Range of the column to iterate |
const_col_range_iterator slip::Array4d< T >::col_begin | ( | const size_type | slab, |
const size_type | slice, | ||
const size_type | col, | ||
const slip::Range< int > & | range | ||
) | const |
Returns a read-only iterator that points to the first element of the Range range of the col col in the slab slab and the slice slice in the Array4d. Iteration is done in ordinary element order according to the Range.
slab | slab coordinate of the line |
slice | The index of the slice. |
col | The index of the column to iterate. |
range | Range of the column to iterate. |
col_iterator slip::Array4d< T >::col_end | ( | const size_type | slab, |
const size_type | slice, | ||
const size_type | col | ||
) |
Returns a read/write iterator that points to the past-the-end element of the column column of a given slab slab and a given slice slice in the Array4d. Iteration is done modulo the number of columns.
slab | The index of the slab. |
slice | The index of the slice. |
col | The index of the column |
const_col_iterator slip::Array4d< T >::col_end | ( | const size_type | slab, |
const size_type | slice, | ||
const size_type | col | ||
) | const |
Returns a read_only iterator that points to the past-the-end element of the column column of a given slab slab and a given slice slice in the Array4d. Iteration is done modulo the number of columns.
slab | The index of the slab. |
slice | The index of the slice. |
col | The index of the column |
col_range_iterator slip::Array4d< T >::col_end | ( | const size_type | slab, |
const size_type | slice, | ||
const size_type | col, | ||
const slip::Range< int > & | range | ||
) |
Returns a read-write iterator that points to the past the end element of the Range range of the col col in the slab slab and the slice slice in the Array4d. Iteration is done in ordinary element order according to the Range.
slab | slab coordinate of the line |
slice | The index of the slice. |
col | The index of the column to iterate. |
range | Range of the column to iterate. |
const_col_range_iterator slip::Array4d< T >::col_end | ( | const size_type | slab, |
const size_type | slice, | ||
const size_type | col, | ||
const slip::Range< int > & | range | ||
) | const |
Returns a read-only iterator that points to the past the end element of the Range range of the col col in the slab slab and the slice slice in the Array4d.
slab | slab coordinate of the line Iteration is done in ordinary element order according to the Range. |
slice | The index of the slice. |
col | The index of the column to iterate. |
range | Range of the column to iterate |
reverse_col_iterator slip::Array4d< T >::col_rbegin | ( | const size_type | slab, |
const size_type | slice, | ||
const size_type | col | ||
) |
Returns a read/write reverse iterator that points to the last element of the column column of a given slab slab and a given slice slice in the Array4d. Iteration is done modulo the number of columns.
slab | The index of the slab. |
slice | The index of the slice. |
col | The index of the column |
const_reverse_col_iterator slip::Array4d< T >::col_rbegin | ( | const size_type | slab, |
const size_type | slice, | ||
const size_type | col | ||
) | const |
Returns a read_only reverse iterator that points to the last element of the column column of a given slab slab and a given slice slice in the Array4d. Iteration is done modulo the number of columns.
slab | The index of the slab. |
slice | The index of the slice. |
col | The index of the column |
reverse_col_range_iterator slip::Array4d< T >::col_rbegin | ( | const size_type | slab, |
const size_type | slice, | ||
const size_type | col, | ||
const slip::Range< int > & | range | ||
) |
Returns a read-write iterator that points to the last element of the Range range of the col of a slice col in the slab slab and the slice slice in the Array4d. Iteration is done in the reverse element order according to the Range.
slab | slab coordinate of the line |
slice | The index of the slice. |
col | The index of the column to iterate. |
range | Range of the column to iterate. |
const_reverse_col_range_iterator slip::Array4d< T >::col_rbegin | ( | const size_type | slab, |
const size_type | slice, | ||
const size_type | col, | ||
const slip::Range< int > & | range | ||
) | const |
Returns a read_only iterator that points to the last element of the Range & range of the col of a slice col in the slab slab and the slice slice in the Array4d. Iteration is done in the reverse element order according to the Range.
slab | slab coordinate of the line |
slice | The index of the slice. |
col | The index of the column to iterate. |
range | Range of the column to iterate. |
reverse_col_iterator slip::Array4d< T >::col_rend | ( | const size_type | slab, |
const size_type | slice, | ||
const size_type | col | ||
) |
Returns a read/write reverse iterator that points to the first element of the column column of a given slab slab and a given slice slice in the Array4d. Iteration is done modulo the number of columns.
slab | The index of the slab. |
slice | The index of the slice. |
col | The index of the column |
const_reverse_col_iterator slip::Array4d< T >::col_rend | ( | const size_type | slab, |
const size_type | slice, | ||
const size_type | col | ||
) | const |
Returns a read_only reverse iterator that points to the first element of the column column of a given slab slab and a given slice slice in the Array4d. Iteration is done modulo the number of columns.
slab | The index of the slab. |
slice | The index of the slice. |
col | The index of the column |
reverse_col_range_iterator slip::Array4d< T >::col_rend | ( | const size_type | slab, |
const size_type | slice, | ||
const size_type | col, | ||
const slip::Range< int > & | range | ||
) |
Returns a read-write iterator that points to one before the first element of the Range range of the col of a slice col in the slab slab and the slice slice in the Array4d. Iteration is done in the reverse element order according to the Range.
slab | slab coordinate of the line |
slice | The index of the slice. |
col | The index of the column to iterate. |
range | Range of the column to iterate. |
const_reverse_col_range_iterator slip::Array4d< T >::col_rend | ( | const size_type | slab, |
const size_type | slice, | ||
const size_type | col, | ||
const slip::Range< int > & | range | ||
) | const |
Returns a read-only iterator that points to the first element of the Range range of the col of a slice col in the slab slab and the slice slice in the Array4d. Iteration is done in the reverse element order according to the Range.
slab | slab coordinate of the line |
slice | The index of the slice. |
col | The index of the column to iterate. |
range | Range of the column to iterate. |
|
inline |
Returns the number of columns (fourth dimension size) in the Array4d.
Definition at line 4715 of file Array4d.hpp.
|
inline |
Returns the number of columns (fourth dimension size) in the Array4d.
Definition at line 4720 of file Array4d.hpp.
|
inline |
Returns the number of slabs (first dimension size, called time dimension too) in the Array4d.
Definition at line 4680 of file Array4d.hpp.
|
inline |
Returns the number of slices (second dimension size) in the Array4d.
Definition at line 4690 of file Array4d.hpp.
|
inline |
Returns the number of rows (third dimension size) in the Array4d.
Definition at line 4700 of file Array4d.hpp.
|
inline |
Returns the number of columns (fourth dimension size) in the Array4d.
Definition at line 4710 of file Array4d.hpp.
|
inline |
Returns true if the Array4d is empty. (Thus size() == 0)
Definition at line 4738 of file Array4d.hpp.
|
inline |
Returns a read/write iterator that points one past the last element in the Array4d. Iteration is done in ordinary element order.
Definition at line 3411 of file Array4d.hpp.
|
inline |
Returns a read-only (constant) iterator that points one past the last element in the Array4d. Iteration is done in ordinary element order.
Definition at line 3397 of file Array4d.hpp.
|
inline |
Fills the container range [begin(),begin()+size()) with copies of value.
value | A reference-to-const of arbitrary type. |
Definition at line 2924 of file Array4d.hpp.
|
inline |
Fills the container range [begin(),begin()+size()) with a copy of the value array.
value | A pointer of arbitrary type. |
Definition at line 2935 of file Array4d.hpp.
|
inline |
Fills the container range [begin(),begin()+size()) with a copy of the range [first,last)
first | An input iterator. |
last | An input iterator. |
Definition at line 2949 of file Array4d.hpp.
|
inline |
Returns a read/write iterator4d that points to the first element of the Array4d. It points to the first front upper left element of the Array4d.
Definition at line 4341 of file Array4d.hpp.
|
inline |
Returns a read-only iterator4d that points to the first element of the Array4d. It points to the fist front upper left element of the Array4d.
Definition at line 4348 of file Array4d.hpp.
|
inline |
Returns a read/write iterator4d that points to the first element of the Array4d. It points to the first front upper left element of the Box4d associated to the Array4d.
box | A Box4d defining the range of indices to iterate within the Array4d. |
Definition at line 4410 of file Array4d.hpp.
|
inline |
Returns a read only iterator4d that points to the first element of the Array4d. It points to the front upper left element of the Box4d associated to the Array4d.
box | a Box4d defining the range of indices to iterate within the Array4d. |
Definition at line 4417 of file Array4d.hpp.
iterator4d_range slip::Array4d< T >::first_front_upper_left | ( | const range & | slab_range, |
const range & | slice_range, | ||
const range & | row_range, | ||
const range & | col_range | ||
) |
Returns a read/write iterator4d_range that points to the first front upper left element of the ranges slab_range, slice_range, row_range and col_range associated to the Array4d.
slab_range | The range of the slices. |
slice_range | The range of the slices. |
row_range | The range of the rows. |
col_range | The range of the columns. |
const_iterator4d_range slip::Array4d< T >::first_front_upper_left | ( | const range & | slab_range, |
const range & | slice_range, | ||
const range & | row_range, | ||
const range & | col_range | ||
) | const |
Returns a read-only iterator4d_range that points to the to the first front upper left element of the ranges slab_range, slice_range, row_range and col_range associated to the Array4d.
slab_range | The range of the slices. |
slice_range | The range of the slices. |
row_range | The range of the rows. |
col_range | The range of the columns. |
|
inline |
Returns a read/write iterator4d that points to the past the end element of the Array4d. It points to past the end element of the last back bottom right element of the Array4d.
Definition at line 4356 of file Array4d.hpp.
|
inline |
Returns a read-only iterator4d that points to the past the end element of the Array4d. It points to past the end element of the last back bottom right element of the Array4d.
Definition at line 4365 of file Array4d.hpp.
|
inline |
Returns a read/write iterator4d that points to the past the end element of the Array4d. It points to past the end element of the last back bottom right element of the Box4d associated to the Array4d.
box | a Box4d defining the range of indices to iterate within the Array4d. |
Definition at line 4426 of file Array4d.hpp.
|
inline |
Returns a read only iterator4d that points to the past the end element of the Array4d. It points to past the end element of the back bottom right element of the Box4d associated to the Array4d.
box | a Box4d defining the range of indices to iterate within the Array4d. |
Definition at line 4436 of file Array4d.hpp.
iterator4d_range slip::Array4d< T >::last_back_bottom_right | ( | const range & | slab_range, |
const range & | slice_range, | ||
const range & | row_range, | ||
const range & | col_range | ||
) |
Returns a read/write iterator4d_range that points to the past the end last back bottom right element of the ranges slab_range, slice_range, row_range and col_range associated to the Array4d.
slab_range | The range of the slices. |
slice_range | The range of the slices. |
row_range | The range of the rows. |
col_range | The range of the columns. |
const_iterator4d_range slip::Array4d< T >::last_back_bottom_right | ( | const range & | slab_range, |
const range & | slice_range, | ||
const range & | row_range, | ||
const range & | col_range | ||
) | const |
Returns a read-only iterator4d_range that points to the past the end last back bottom right element of the ranges slab_range, slice_range, row_range and col_range associated to the Array4d.
slab_range | The range of the slices. |
slice_range | The range of the slices. |
row_range | The range of the rows. |
col_range | The range of the columns. |
|
inline |
Returns the maximal size (number of elements) in the Array4d.
Definition at line 4731 of file Array4d.hpp.
|
inline |
Returns the name of the class.
Definition at line 4674 of file Array4d.hpp.
reference slip::Array4d< T >::operator() | ( | const size_type | l, |
const size_type | k, | ||
const size_type | i, | ||
const size_type | j | ||
) |
Subscript access to the data contained in the Array4d.
l | The index of the slab for which the data should be accessed. |
k | The index of the slice for which the data should be accessed. |
i | The index of the row for which the data should be accessed. |
j | The index of the column for which the data should be accessed. |
const_reference slip::Array4d< T >::operator() | ( | const size_type | l, |
const size_type | k, | ||
const size_type | i, | ||
const size_type | j | ||
) | const |
Subscript access to the data contained in the Array4d.
l | The index of the slab for which the data should be accessed. |
k | The index of the slice for which the data should be accessed. |
i | The index of the row for which the data should be accessed. |
j | The index of the column for which the data should be accessed. |
|
inline |
Assign a Array4d.
Assign elements of Array4d in rhs
rhs | Array4d to get the values from. |
Definition at line 3321 of file Array4d.hpp.
|
inline |
Assign all the elments of the Array4d by value.
value | A reference-to-const of arbitrary type. |
Definition at line 3341 of file Array4d.hpp.
T*** slip::Array4d< T >::operator[] | ( | const size_type | l | ) |
const T** const* slip::Array4d< T >::operator[] | ( | const size_type | l | ) | const |
|
inline |
Returns a read/write reverse iterator that points to the last element in the Array4d. Iteration is done in reverse element order.
Definition at line 3418 of file Array4d.hpp.
|
inline |
Returns a read-only (constant) reverse iterator that points to the last element in the Array4d. Iteration is done in reverse element order.
Definition at line 3425 of file Array4d.hpp.
|
inline |
Returns a read/write reverse iterator that points to one before the first element in the Array4d. Iteration is done in reverse element order.
Definition at line 3432 of file Array4d.hpp.
|
inline |
Returns a read-only (constant) reverse iterator that points to one before the first element in the Array4d. Iteration is done in reverse element order.
Definition at line 3440 of file Array4d.hpp.
|
inline |
Resizes a Array4d.
d1 | new first dimension |
d2 | new second dimension |
d3 | new third dimension |
d4 | new fourth dimension |
val | new value for all the elements |
Definition at line 3351 of file Array4d.hpp.
|
inline |
Returns a read/write reverse iterator4d. It points to the last back bottom right element of the Array4d. Iteration is done within the Array4d in the reverse order.
Definition at line 4391 of file Array4d.hpp.
|
inline |
Returns a read only reverse iterator4d that points. It points to the last back bottom right element of the Array4d. Iteration is done within the Array4d in the reverse order.
Definition at line 4400 of file Array4d.hpp.
|
inline |
Returns a read/write reverse iterator4d. It points to the back bottom right element of the Box4d associated to the Array4d. Iteration is done in the reverse order.
box | a Box4d defining the range of indices to iterate within the Array4d. |
Definition at line 4462 of file Array4d.hpp.
|
inline |
Returns a read only reverse iterator4d. It points to the back bottom right element of the Box4d box associated to the Array4d. Iteration is done in the reverse order.
box | A Box4d defining the range of indices to iterate within the Array4d. |
Definition at line 4471 of file Array4d.hpp.
reverse_iterator4d_range slip::Array4d< T >::rfirst_front_upper_left | ( | const range & | slab_range, |
const range & | slice_range, | ||
const range & | row_range, | ||
const range & | col_range | ||
) |
Returns a read/write reverse_iterator4d_range that points to the past the last back bottom right element of the ranges slab_range, slice_range, row_range and col_range associated to the Array4d. Iteration is done in the reverse order.
slab_range | The range of the slices. |
slice_range | The range of the slices. |
row_range | The range of the rows. |
col_range | The range of the columns. |
const_reverse_iterator4d_range slip::Array4d< T >::rfirst_front_upper_left | ( | const range & | slab_range, |
const range & | slice_range, | ||
const range & | row_range, | ||
const range & | col_range | ||
) | const |
Returns a read-only reverse_iterator4d_range that points to the past the last back bottom right element of the ranges slab_range, slice_range, row_range and col_range associated to the Array4d. Iteration is done in the reverse order.
slab_range | The range of the slices. |
slice_range | The range of the slices. |
row_range | The range of the rows. |
col_range | The range of the columns. |
|
inline |
Returns a read/write reverse iterator4d. It points to past the first front upper left element of the Array4d. Iteration is done in the reverse order.
Definition at line 4375 of file Array4d.hpp.
|
inline |
Returns a read only reverse iterator4d. It points to past the first front upper left element of the Array4d. Iteration is done in the reverse order.
Definition at line 4383 of file Array4d.hpp.
|
inline |
Returns a read/write reverse iterator4d. It points to one before the front upper left element of the Box4d box associated to the Array4d.
box | A Box4d defining the range of indices to iterate within the Array4d. |
Definition at line 4446 of file Array4d.hpp.
|
inline |
Returns a read-only reverse iterator4d. It points to one before the front element of the bottom right element of the Box4d box associated to the Array4d.
box | A Box4d defining the range of indices to iterate within the Array4d. |
Definition at line 4454 of file Array4d.hpp.
reverse_iterator4d_range slip::Array4d< T >::rlast_back_bottom_right | ( | const range & | slab_range, |
const range & | slice_range, | ||
const range & | row_range, | ||
const range & | col_range | ||
) |
Returns a read/write reverse_iterator4d_range that points to one before the first front upper left element of the ranges slab_range, slice_range, row_range and col_range associated to the Array4d. Iteration is done in the reverse order.
slab_range | The range of the slices. |
slice_range | The range of the slices. |
row_range | The range of the rows. |
col_range | The range of the columns. |
const_reverse_iterator4d_range slip::Array4d< T >::rlast_back_bottom_right | ( | const range & | slab_range, |
const range & | slice_range, | ||
const range & | row_range, | ||
const range & | col_range | ||
) | const |
Returns a read-only reverse_iterator4d_range that points to one before the first front upper left element of the ranges slab_range, slice_range, row_range and col_range associated to the Array4d. Iteration is done in the reverse order.
slab_range | The range of the slices. |
slice_range | The range of the slices. |
row_range | The range of the rows. |
col_range | The range of the columns. |
row_iterator slip::Array4d< T >::row_begin | ( | const size_type | slab, |
const size_type | slice, | ||
const size_type | row | ||
) |
Returns a read/write iterator that points to the first element of the row row of a given slab slab and a given slice slice in the Array4d. Iteration is done in ordinary element order.
slab | The index of the slab. |
slice | The index of the slice. |
row | The index of the row. |
const_row_iterator slip::Array4d< T >::row_begin | ( | const size_type | slab, |
const size_type | slice, | ||
const size_type | row | ||
) | const |
Returns a read_only iterator that points to the first element of the row row of a given slab slab and a given slice slice in the Array4d. Iteration is done in ordinary element order.
slab | The index of the slab. |
slice | The index of the slice. |
row | The index of the row. |
row_range_iterator slip::Array4d< T >::row_begin | ( | const size_type | slab, |
const size_type | slice, | ||
const size_type | row, | ||
const slip::Range< int > & | range | ||
) |
Returns a read/write iterator that points to the first element of the Range range of the row row in the slab slab and the slice slice in the Array4d. Iteration is done in ordinary element order according to the Range.
slab | slab coordinate of the line |
slice | The index of the slice. |
row | The index of the row to iterate. |
range | Range of the row to iterate. |
const_row_range_iterator slip::Array4d< T >::row_begin | ( | const size_type | slab, |
const size_type | slice, | ||
const size_type | row, | ||
const slip::Range< int > & | range | ||
) | const |
Returns a read-only iterator that points to the first element of the Range range of the row row in the slab slab and the slice slice in the Array4d. Iteration is done in ordinary element order according to the Range.
slab | slab coordinate of the line |
slice | The index of the slice. |
row | The index of the row to iterate. |
range | Range of the row to iterate. |
row_iterator slip::Array4d< T >::row_end | ( | const size_type | slab, |
const size_type | slice, | ||
const size_type | row | ||
) |
Returns a read/write iterator that points to the past-the-end element of the row row of a given slab slab and a given slice slice in the Array4d. Iteration is done in ordinary element order.
slab | The index of the slab. |
slice | The index of the slice. |
row | The index of the row. |
const_row_iterator slip::Array4d< T >::row_end | ( | const size_type | slab, |
const size_type | slice, | ||
const size_type | row | ||
) | const |
Returns a read_only iterator that points to the past-the-end element of the row row of a given slab slab and a given slice slice in the Array4d. Iteration is done in ordinary element order.
slab | The index of the slab. |
slice | The index of the slice. |
row | The index of the row. |
row_range_iterator slip::Array4d< T >::row_end | ( | const size_type | slab, |
const size_type | slice, | ||
const size_type | row, | ||
const slip::Range< int > & | range | ||
) |
Returns a read/write iterator that points one past the end element of the Range range of the row row in the slab slab and the slice slice in the Array4d. Iteration is done in ordinary element order according to the Range.
slab | slab coordinate of the line |
slice | The index of the slice. |
row | The index of the row to iterate. |
range | Range of the row to iterate. |
const_row_range_iterator slip::Array4d< T >::row_end | ( | const size_type | slab, |
const size_type | slice, | ||
const size_type | row, | ||
const slip::Range< int > & | range | ||
) | const |
Returns a read_only iterator that points one past the last element of the Range range of the row row in the slab slab and the slice slice in the Array4d. Iteration is done in ordinary element order according to the Range.
slab | slab coordinate of the line |
slice | The index of the slice. |
row | Row to iterate. |
range | Range of the row to iterate |
reverse_row_iterator slip::Array4d< T >::row_rbegin | ( | const size_type | slab, |
const size_type | slice, | ||
const size_type | row | ||
) |
Returns a read/write reverse iterator that points to the last element of the row row of a given slab slab and a given slice slice in the Array4d. Iteration is done in reverse element order.
slab | The index of the slab. |
slice | The index of the slice. |
row | The index of the row. |
const_reverse_row_iterator slip::Array4d< T >::row_rbegin | ( | const size_type | slab, |
const size_type | slice, | ||
const size_type | row | ||
) | const |
Returns a read_only reverse iterator that points to the last element of the row row of a given slab slab and a given slice slice in the Array4d. Iteration is done in reverse element order.
slab | The index of the slab. |
slice | The index of the slice. |
row | The index of the row. |
reverse_row_range_iterator slip::Array4d< T >::row_rbegin | ( | const size_type | slab, |
const size_type | slice, | ||
const size_type | row, | ||
const slip::Range< int > & | range | ||
) |
Returns a read-write iterator that points to the last element of the Range range of the row row in the slab slab and the slice slice in the Array4d. Iteration is done in the reverse element order according to the Range.
slab | slab coordinate of the line |
slice | The index of the slice. |
row | The index of the row to iterate. |
range | Range of the row to iterate. |
const_reverse_row_range_iterator slip::Array4d< T >::row_rbegin | ( | const size_type | slab, |
const size_type | slice, | ||
const size_type | row, | ||
const slip::Range< int > & | range | ||
) | const |
Returns a read-only iterator that points to the last element of the Range range of the row row in the slab slab and the slice slice in the Array4d. Iteration is done in the reverse element order according to the Range.
slab | slab coordinate of the line |
slice | The index of the slice. |
row | The index of the row to iterate. |
range | Range of the row to iterate |
reverse_row_iterator slip::Array4d< T >::row_rend | ( | const size_type | slab, |
const size_type | slice, | ||
const size_type | row | ||
) |
Returns a read/write reverse iterator that points to the first element of the row row of a given slab slab and a given slice slice in the Array4d. Iteration is done in reverse element order.
slab | The index of the slab. |
slice | The index of the slice. |
row | The index of the row. |
const_reverse_row_iterator slip::Array4d< T >::row_rend | ( | const size_type | slab, |
const size_type | slice, | ||
const size_type | row | ||
) | const |
Returns a read_only reverse iterator that points to the first element of the row row of a given slab slab and a given slice slice in the Array4d. Iteration is done in reverse element order.
slab | The index of the slab. |
slice | The index of the slice. |
row | The index of the row. |
reverse_row_range_iterator slip::Array4d< T >::row_rend | ( | const size_type | slab, |
const size_type | slice, | ||
const size_type | row, | ||
const slip::Range< int > & | range | ||
) |
Returns a read-write iterator that points one before the first element of the Range range of the row row in the slab slab and the slice slice in the Array4d. Iteration is done in the reverse element order according to the Range.
slab | slab coordinate of the line |
slice | The index of the slice. |
row | The index of the row to iterate. |
range | Range of the row to iterate. |
const_reverse_row_range_iterator slip::Array4d< T >::row_rend | ( | const size_type | slab, |
const size_type | slice, | ||
const size_type | row, | ||
const slip::Range< int > & | range | ||
) | const |
Returns a read-only iterator that points one before the first element of the Range range of the row row in the slab slab and the slice slice in the Array4d. Iteration is done in the reverse element order according to the Range.
slab | slab coordinate of the line |
slice | The index of the slice. |
row | The index of the row to iterate. |
range | Range of the row to iterate |
|
inline |
Returns the number of rows (third dimension size) in the Array4d.
Definition at line 4705 of file Array4d.hpp.
|
inline |
Returns the number of elements in the Array4d.
Definition at line 4726 of file Array4d.hpp.
slab_iterator slip::Array4d< T >::slab_begin | ( | const size_type | slice, |
const size_type | row, | ||
const size_type | col | ||
) |
Returns a read/write iterator that points to the first element of the line (slice,row,col) through the slabs in the Array4d. Iteration is done in ordinary element order (increasing slab number).
slice | slice coordinate of the line |
row | row coordinate of the line |
col | col coordinate of the line |
const_slab_iterator slip::Array4d< T >::slab_begin | ( | const size_type | slice, |
const size_type | row, | ||
const size_type | col | ||
) | const |
Returns a read-only (constant) iterator that points to the first element of the line (slice,row,col) through the slabs in the Array4d. Iteration is done in ordinary element order (increasing slab number).
slice | slice coordinate of the line |
row | row coordinate of the line |
col | col coordinate of the line |
slab_range_iterator slip::Array4d< T >::slab_begin | ( | const size_type | slice, |
const size_type | row, | ||
const size_type | col, | ||
const slip::Range< int > & | range | ||
) |
Returns a read/write iterator that points to the first element of the Range range of the of the line (slice,row,col) through the slabs in the Array4d. Iteration is done in ordinary element order according to the Range.
slice | slice coordinate of the line |
row | row coordinate of the line |
col | col coordinate of the line |
range | Range of the line to iterate. |
const_slab_range_iterator slip::Array4d< T >::slab_begin | ( | const size_type | slice, |
const size_type | row, | ||
const size_type | col, | ||
const slip::Range< int > & | range | ||
) | const |
Returns a read only (constant) iterator that points to the first element of the Range range of the of the line (slice,row,col) through the slabs in the Array4d. Iteration is done in ordinary element order according to the Range.
slice | slice coordinate of the line |
row | row coordinate of the line |
col | col coordinate of the line |
range | Range of the line to iterate. |
slab_iterator slip::Array4d< T >::slab_end | ( | const size_type | slice, |
const size_type | row, | ||
const size_type | col | ||
) |
Returns a read/write iterator that points to the one past the end element of the line (slice,row,col) through the slabs in the Array4d. Iteration is done in ordinary element order (increasing slab number).
slice | slice coordinate of the line |
row | row coordinate of the line |
col | col coordinate of the line |
const_slab_iterator slip::Array4d< T >::slab_end | ( | const size_type | slice, |
const size_type | row, | ||
const size_type | col | ||
) | const |
Returns a read-only (constant) iterator that points to the one past the end element of the line (slice,row,col) through the slabs in the Array4d. Iteration is done in ordinary element order (increasing slab number).
slice | slice coordinate of the line |
row | row coordinate of the line |
col | col coordinate of the line |
slab_range_iterator slip::Array4d< T >::slab_end | ( | const size_type | slice, |
const size_type | row, | ||
const size_type | col, | ||
const slip::Range< int > & | range | ||
) |
Returns a read/write iterator that points one past the end element of the Range range of the of the line (slice,row,col) through the slabs in the Array4d. Iteration is done in ordinary element order according to the Range.
slice | slice coordinate of the line |
row | row coordinate of the line |
col | col coordinate of the line |
range | Range of the line to iterate. |
const_slab_range_iterator slip::Array4d< T >::slab_end | ( | const size_type | slice, |
const size_type | row, | ||
const size_type | col, | ||
const slip::Range< int > & | range | ||
) | const |
Returns a read_only iterator that points one past the last element of the Range range of the of the line (slice,row,col) through the slabs in the Array4d. Iteration is done in ordinary element order according to the Range.
slice | slice coordinate of the line |
row | row coordinate of the line |
col | col coordinate of the line |
range | Range of the line to iterate. |
reverse_slab_iterator slip::Array4d< T >::slab_rbegin | ( | const size_type | slice, |
const size_type | row, | ||
const size_type | col | ||
) |
Returns a read/write iterator that points to the last element of the line (slice,row,col) through the slabs in the Array4d. Iteration is done in reverse element order (decreasing slab number).
slice | slice coordinate of the line |
row | row coordinate of the line |
col | col coordinate of the line |
const_reverse_slab_iterator slip::Array4d< T >::slab_rbegin | ( | const size_type | slice, |
const size_type | row, | ||
const size_type | col | ||
) | const |
Returns a read-only (constant) iterator that points to the last element of the line (slice,row,col) through the slabs in the Array4d. Iteration is done in reverse element order (decreasing slab number).
slice | slice coordinate of the line |
row | row coordinate of the line |
col | col coordinate of the line |
reverse_slab_range_iterator slip::Array4d< T >::slab_rbegin | ( | const size_type | slice, |
const size_type | row, | ||
const size_type | col, | ||
const slip::Range< int > & | range | ||
) |
Returns a read/write iterator that points to the last element of the Range range of the of the line (slice,row,col) through the slabs in the Array4d. Iteration is done in the reverse element order according to the Range.
slice | slice coordinate of the line |
row | row coordinate of the line |
col | col coordinate of the line |
range | Range of the line to iterate. |
const_reverse_slab_range_iterator slip::Array4d< T >::slab_rbegin | ( | const size_type | slice, |
const size_type | row, | ||
const size_type | col, | ||
const slip::Range< int > & | range | ||
) | const |
Returns a read only (constant) iterator that points to the last element of the Range range of the of the line (slice,row,col) through the slabs in the Array4d. Iteration is done in reverse element order according to the Range.
slice | slice coordinate of the line |
row | row coordinate of the line |
col | col coordinate of the line |
range | Range of the line to iterate. |
reverse_slab_iterator slip::Array4d< T >::slab_rend | ( | const size_type | slice, |
const size_type | row, | ||
const size_type | col | ||
) |
Returns a read/write iterator that points to the one before the first element of the line (slice,row,col) through the slabs in the Array4d. Iteration is done in reverse element order (decreasing slab number).
slice | slice coordinate of the line |
row | row coordinate of the line |
col | col coordinate of the line |
const_reverse_slab_iterator slip::Array4d< T >::slab_rend | ( | const size_type | slice, |
const size_type | row, | ||
const size_type | col | ||
) | const |
Returns a read (constant) iterator that points to the one before the first element of the line (slice,row,col) through the slabs in the Array4d. Iteration is done in reverse element order (decreasing slab number).
slice | slice coordinate of the line |
row | row coordinate of the line |
col | col coordinate of the line |
reverse_slab_range_iterator slip::Array4d< T >::slab_rend | ( | const size_type | slice, |
const size_type | row, | ||
const size_type | col, | ||
const slip::Range< int > & | range | ||
) |
Returns a read/write iterator that points to the first element of the Range range of the of the line (slice,row,col) through the slabs in the Array4d. Iteration is done in reverse element order according to the Range.
slice | slice coordinate of the line |
row | row coordinate of the line |
col | col coordinate of the line |
range | Range of the line to iterate. |
const_reverse_slab_range_iterator slip::Array4d< T >::slab_rend | ( | const size_type | slice, |
const size_type | row, | ||
const size_type | col, | ||
const slip::Range< int > & | range | ||
) | const |
Returns a read_only iterator that points one past the lastto the first element of the Range range of the of the line (slice,row,col) through the slabs in the Array4d. Iteration is done in reverse element order according to the Range.
slice | slice coordinate of the line |
row | row coordinate of the line |
col | col coordinate of the line |
range | Range of the line to iterate. |
|
inline |
Returns the number of slabs (first dimension size, called time dimension too) in the Array4d.
Definition at line 4685 of file Array4d.hpp.
slice_iterator slip::Array4d< T >::slice_begin | ( | const size_type | slab, |
const size_type | row, | ||
const size_type | col | ||
) |
Returns a read/write iterator that points to the first element of the line (slab,row,col) through the slices in the Array4d. Iteration is done in ordinary element order (increasing slice number).
slab | slab coordinate of the line |
row | row coordinate of the line |
col | col coordinate of the line |
const_slice_iterator slip::Array4d< T >::slice_begin | ( | const size_type | slab, |
const size_type | row, | ||
const size_type | col | ||
) | const |
Returns a read-only (constant) iterator that points to the first element of the line (slab,row,col) through the slices in the Array4d. Iteration is done in ordinary element order (increasing slice number).
slab | slab coordinate of the line |
row | row coordinate of the line |
col | col coordinate of the line |
slice_range_iterator slip::Array4d< T >::slice_begin | ( | const size_type | slab, |
const size_type | row, | ||
const size_type | col, | ||
const slip::Range< int > & | range | ||
) |
Returns a read/write iterator that points to the first element of the Range range of the of the line (slab,row,col) through the slices in the Array4d. Iteration is done in ordinary element order according to the Range.
slab | slab coordinate of the line |
row | row coordinate of the line |
col | col coordinate of the line |
range | Range of the line to iterate. |
const_slice_range_iterator slip::Array4d< T >::slice_begin | ( | const size_type | slab, |
const size_type | row, | ||
const size_type | col, | ||
const slip::Range< int > & | range | ||
) | const |
Returns a read only (constant) iterator that points to the first element of the Range range of the of the line (slab,row,col) through the slices in the Array4d. Iteration is done in ordinary element order according to the Range.
slab | slab coordinate of the line |
row | row coordinate of the line |
col | col coordinate of the line |
range | Range of the line to iterate. |
slice_iterator slip::Array4d< T >::slice_end | ( | const size_type | slab, |
const size_type | row, | ||
const size_type | col | ||
) |
Returns a read/write iterator that points to the one past the end element of the line (slab,row,col) through the slices in the Array4d. Iteration is done in ordinary element order (increasing slice number).
slab | slab coordinate of the line |
row | row coordinate of the line |
col | col coordinate of the line |
const_slice_iterator slip::Array4d< T >::slice_end | ( | const size_type | slab, |
const size_type | row, | ||
const size_type | col | ||
) | const |
Returns a read-only (constant) iterator that points to the one past the end element of the line (slab,row,col) through the slices in the Array4d. Iteration is done in ordinary element order (increasing slice number).
slab | slab coordinate of the line |
row | row coordinate of the line |
col | col coordinate of the line |
slice_range_iterator slip::Array4d< T >::slice_end | ( | const size_type | slab, |
const size_type | row, | ||
const size_type | col, | ||
const slip::Range< int > & | range | ||
) |
Returns a read/write iterator that points one past the end element of the Range range of the of the line (slab,row,col) through the slices in the Array4d. Iteration is done in ordinary element order according to the Range.
slab | slab coordinate of the line |
row | row coordinate of the line |
col | col coordinate of the line |
range | Range of the line to iterate. |
const_slice_range_iterator slip::Array4d< T >::slice_end | ( | const size_type | slab, |
const size_type | row, | ||
const size_type | col, | ||
const slip::Range< int > & | range | ||
) | const |
Returns a read_only iterator that points one past the last element of the Range range of the of the line (slab,row,col) through the slices in the Array4d. Iteration is done in ordinary element order according to the Range.
slab | slab coordinate of the line |
row | row coordinate of the line |
col | col coordinate of the line |
range | Range of the line to iterate. |
reverse_slice_iterator slip::Array4d< T >::slice_rbegin | ( | const size_type | slab, |
const size_type | row, | ||
const size_type | col | ||
) |
Returns a read/write iterator that points to the last element of the line (slab,row,col) through the slices in the Array4d. Iteration is done in reverse element order (decreasing slice number).
slab | slab coordinate of the line |
row | row coordinate of the line |
col | col coordinate of the line |
const_reverse_slice_iterator slip::Array4d< T >::slice_rbegin | ( | const size_type | slab, |
const size_type | row, | ||
const size_type | col | ||
) | const |
Returns a read-only (constant) iterator that points to the last element of the line (slab,row,col) through the slices in the Array4d. Iteration is done in reverse element order (decreasing slice number).
slab | slab coordinate of the line |
row | row coordinate of the line |
col | col coordinate of the line |
reverse_slice_range_iterator slip::Array4d< T >::slice_rbegin | ( | const size_type | slab, |
const size_type | row, | ||
const size_type | col, | ||
const slip::Range< int > & | range | ||
) |
Returns a read/write iterator that points to the last element of the Range range of the of the line (slab,row,col) through the slices in the Array4d. Iteration is done in the reverse element order according to the Range.
slab | slab coordinate of the line |
row | row coordinate of the line |
col | col coordinate of the line |
range | Range of the line to iterate. |
const_reverse_slice_range_iterator slip::Array4d< T >::slice_rbegin | ( | const size_type | slab, |
const size_type | row, | ||
const size_type | col, | ||
const slip::Range< int > & | range | ||
) | const |
Returns a read only (constant) iterator that points to the last element of the Range range of the of the line (slab,row,col) through the slices in the Array4d. Iteration is done in reverse element order according to the Range.
slab | slab coordinate of the line |
row | row coordinate of the line |
col | col coordinate of the line |
range | Range of the line to iterate. |
reverse_slice_iterator slip::Array4d< T >::slice_rend | ( | const size_type | slab, |
const size_type | row, | ||
const size_type | col | ||
) |
Returns a read/write iterator that points to the one before the first element of the line (slab,row,col) through the slices in the Array4d. Iteration is done in reverse element order (decreasing slice number).
slab | slab coordinate of the line |
row | row coordinate of the line |
col | col coordinate of the line |
const_reverse_slice_iterator slip::Array4d< T >::slice_rend | ( | const size_type | slab, |
const size_type | row, | ||
const size_type | col | ||
) | const |
Returns a read (constant) iterator that points to the one before the first element of the line (slab,row,col) through the slices in the Array4d. Iteration is done in reverse element order (decreasing slice number).
slab | slab coordinate of the line |
row | row coordinate of the line |
col | col coordinate of the line |
reverse_slice_range_iterator slip::Array4d< T >::slice_rend | ( | const size_type | slab, |
const size_type | row, | ||
const size_type | col, | ||
const slip::Range< int > & | range | ||
) |
Returns a read/write iterator that points to the first element of the Range range of the of the line (slab,row,col) through the slices in the Array4d. Iteration is done in reverse element order according to the Range.
slab | slab coordinate of the line |
row | row coordinate of the line |
col | col coordinate of the line |
range | Range of the line to iterate. |
const_reverse_slice_range_iterator slip::Array4d< T >::slice_rend | ( | const size_type | slab, |
const size_type | row, | ||
const size_type | col, | ||
const slip::Range< int > & | range | ||
) | const |
Returns a read_only iterator that points one past the lastto the first element of the Range range of the of the line (slab,row,col) through the slices in the Array4d. Iteration is done in reverse element order according to the Range.
slab | slab coordinate of the line |
row | row coordinate of the line |
col | col coordinate of the line |
range | Range of the line to iterate. |
|
inline |
Returns the number of slices (second dimension size) in the Array4d.
Definition at line 4695 of file Array4d.hpp.
|
inline |
|
friend |
Definition at line 3193 of file Array4d.hpp.
Array4d inequality comparison
x | A Array4d |
y | A Array4d of the same type of x |
Definition at line 4768 of file Array4d.hpp.
Less than comparison operator (Array4d ordering relation)
x | A Array4d |
y | A Array4d of the same type of x |
Definition at line 4778 of file Array4d.hpp.
|
friend |
Write the Array4d to the ouput stream.
out | output std::ostream |
a | Array4d to write to the output stream |
Definition at line 4592 of file Array4d.hpp.
Less than equal comparison operator.
x | A Array4d |
y | A Array4d of the same type of x |
Definition at line 4796 of file Array4d.hpp.
Array4d equality comparison
x | A Array4d |
y | A Array4d of the same type of x |
Definition at line 4759 of file Array4d.hpp.
More than comparison operator.
x | A Array4d |
y | A Array4d of the same type of x |
Definition at line 4788 of file Array4d.hpp.
More than equal comparison operator.
x | A Array4d |
y | A Array4d of the same type of x |
Definition at line 4804 of file Array4d.hpp.
|
static |
Definition at line 237 of file Array4d.hpp.