SLIP
1.4
|
Numerical volume class This is a two-dimensional dynamic and generic container. This container statisfies the BidirectionnalContainer concepts of the STL. It is also an 3d extension of the RandomAccessContainer concept. That is to say the bracket element access is replaced by the triple bracket element access. Data are stored using a Matrix3d class. It extends the interface of Matrix3d adding image read/write operations. These operations are done using the ImageMagick library. More...
#include <Volume.hpp>
Public Member Functions | |
void | resize (std::size_t d1, std::size_t d2, std::size_t d3, const T &val=T()) |
Resizes a Volume. More... | |
std::string | name () const |
Returns the name of the class. More... | |
size_type | dim1 () const |
Returns the number of slices (first dimension size) in the Volume. More... | |
size_type | slices () const |
Returns the number of slices (first dimension size) in the Volume. More... | |
size_type | dim2 () const |
Returns the number of rows (second dimension size) in the Volume. More... | |
size_type | rows () const |
Returns the number of rows (second dimension size) in the Volume. More... | |
size_type | dim3 () const |
Returns the number of columns (third dimension size) in the Volume. More... | |
size_type | cols () const |
Returns the number of columns (third dimension size) in the Volume. More... | |
size_type | columns () const |
Returns the number of columns (third dimension size) in the Volume. More... | |
size_type | size () const |
Returns the number of elements in the Volume. More... | |
size_type | max_size () const |
Returns the maximal size (number of elements) in the Volume. More... | |
size_type | slice_size () const |
Returns the number of elements in a slice of the Volume. More... | |
bool | empty () const |
Returns true if the Volume is empty. (Thus size() == 0) More... | |
void | swap (Volume &M) |
Swaps data with another Volume. More... | |
template<typename T> | |
Volume (const typename Volume< T >::size_type d1, const typename Volume< T >::size_type d2, const typename Volume< T >::size_type d3) | |
template<typename T> | |
Volume (const typename Volume< T >::size_type d1, const typename Volume< T >::size_type d2, const typename Volume< T >::size_type d3, const T &val) | |
template<typename T> | |
Volume (const typename Volume< T >::size_type d1, const typename Volume< T >::size_type d2, const typename Volume< T >::size_type d3, const T *val) | |
Constructors & Destructors | |
Volume () | |
Constructs a Volume. More... | |
Volume (const std::size_t d1, const std::size_t d2, const std::size_t d3) | |
Constructs a Volume. More... | |
Volume (const std::size_t d1, const std::size_t d2, const std::size_t d3, const T &val) | |
Constructs a Volume initialized by the scalar value val. More... | |
Volume (const std::size_t d1, const std::size_t d2, const std::size_t d3, const T *val) | |
Constructs a Volume initialized by an array val. More... | |
template<typename InputIterator > | |
Volume (const size_type d1, const size_type d2, const size_type d3, InputIterator first, InputIterator last) | |
Contructs a Volume from a range. More... | |
Volume (const Volume< T > &rhs) | |
Constructs a copy of the Volume rhs. More... | |
~Volume () | |
Destructor of the Volume. More... | |
One dimensional global iterators | |
const_iterator | begin () const |
Returns a read-only (constant) iterator that points to the first element in the Volume. Iteration is done in ordinary element order. More... | |
iterator | begin () |
Returns a read/write iterator that points to the first element in the Volume. Iteration is done in ordinary element order. More... | |
iterator | end () |
Returns a read/write iterator that points one past the last element in the Volume. 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 Volume. 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 Volume. 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 Volume. 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 Volume. 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 Volume. Iteration is done in reverse element order. More... | |
One dimensional slice iterators | |
slice_iterator | slice_begin (const size_type row, const size_type col) |
Returns a read/write iterator that points to the first element of the line (row,col) threw the slices in the Volume. Iteration is done in ordinary element order (increasing slice number). More... | |
const_slice_iterator | slice_begin (const size_type row, const size_type col) const |
Returns a read-only (constant) iterator that points to the first element of the line (row,col) threw the slices in the Volume. Iteration is done in ordinary element order (increasing slice number). More... | |
slice_iterator | slice_end (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 (row,col) threw the slices in the Volume. Iteration is done in ordinary element order (increasing slice number). More... | |
const_slice_iterator | slice_end (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 (row,col) threw the slices in the Volume. Iteration is done in ordinary element order (increasing slice number). More... | |
reverse_slice_iterator | slice_rbegin (const size_type row, const size_type col) |
Returns a read/write iterator that points to the last element of the line (row,col) threw the slices in the Volume. Iteration is done in reverse element order (decreasing slice number). More... | |
const_reverse_slice_iterator | slice_rbegin (const size_type row, const size_type col) const |
Returns a read-only (constant) iterator that points to the last element of the line (row,col) threw the slices in the Volume. Iteration is done in reverse element order (decreasing slice number). More... | |
reverse_slice_iterator | slice_rend (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 (row,col) threw the slices in the Volume. Iteration is done in reverse element order (decreasing slice number). More... | |
const_reverse_slice_iterator | slice_rend (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 (row,col) threw the slices in the Volume. Iteration is done in reverse element order (decreasing slice number). More... | |
One dimensional row iterators | |
row_iterator | row_begin (const size_type slice, const size_type row) |
Returns a read/write iterator that points to the first element of the row row of the slice slice in the Volume. Iteration is done in ordinary element order. More... | |
const_row_iterator | row_begin (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 the slice slice in the Volume. Iteration is done in ordinary element order. More... | |
row_iterator | row_end (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 the slice slice in the Volume. Iteration is done in ordinary element order. More... | |
const_row_iterator | row_end (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 the slice slice in the Volume. Iteration is done in ordinary element order. More... | |
reverse_row_iterator | row_rbegin (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 the slice slice in the Volume. Iteration is done in reverse element order. More... | |
const_reverse_row_iterator | row_rbegin (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 the slice slice in the Volume. Iteration is done in reverse element order. More... | |
reverse_row_iterator | row_rend (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 the slice slice in the Volume. Iteration is done in reverse element order. More... | |
const_reverse_row_iterator | row_rend (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 the slice slice in the Volume. Iteration is done in reverse element order. More... | |
One dimensional col iterators | |
col_iterator | col_begin (const size_type slice, const size_type col) |
Returns a read/write iterator that points to the first element of the column column of the slice slice in the Volume. Iteration is done modulo the number of columns. More... | |
const_col_iterator | col_begin (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 the slice slice in the Volume. Iteration is done modulo the number of columns. More... | |
col_iterator | col_end (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 the slice slice in the Volume. Iteration is done modulo the number of columns. More... | |
const_col_iterator | col_end (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 the slice slice in the Volume. Iteration is done modulo the number of columns. More... | |
reverse_col_iterator | col_rbegin (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 the slice slice in the Volume. Iteration is done modulo the number of columns. More... | |
const_reverse_col_iterator | col_rbegin (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 the slice slice in the Volume. Iteration is done modulo the number of columns. More... | |
reverse_col_iterator | col_rend (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 the slice slice in the Volume. Iteration is done modulo the number of columns. More... | |
const_reverse_col_iterator | col_rend (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 the slice slice in the Volume. Iteration is done modulo the number of columns. More... | |
One dimensional slice range iterators | |
slice_range_iterator | slice_begin (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 (row,col) threw the slices in the Volume. Iteration is done in ordinary element order according to the Range. More... | |
slice_range_iterator | slice_end (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 (row,col) threw the slices in the Volume. Iteration is done in ordinary element order according to the Range. More... | |
const_slice_range_iterator | slice_begin (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 (row,col) threw the slices in the Volume. Iteration is done in ordinary element order according to the Range. More... | |
const_slice_range_iterator | slice_end (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 (row,col) threw the slices in the Volume. Iteration is done in ordinary element order according to the Range. More... | |
reverse_slice_range_iterator | slice_rbegin (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 (row,col) threw the slices in the Volume. Iteration is done in the reverse element order according to the Range. More... | |
reverse_slice_range_iterator | slice_rend (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 (row,col) threw the slices in the Volume. Iteration is done in reverse element order according to the Range. More... | |
const_reverse_slice_range_iterator | slice_rbegin (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 (row,col) threw the slices in the Volume. Iteration is done in reverse element order according to the Range. More... | |
const_reverse_slice_range_iterator | slice_rend (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 (row,col) threw the slices in the Volume. 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 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 Volume. Iteration is done in ordinary element order according to the Range. More... | |
row_range_iterator | row_end (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 Volume. Iteration is done in ordinary element order according to the Range. More... | |
const_row_range_iterator | row_begin (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 Volume. Iteration is done in ordinary element order according to the Range. More... | |
const_row_range_iterator | row_end (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 Volume. Iteration is done in ordinary element order according to the Range. More... | |
reverse_row_range_iterator | row_rbegin (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 of a slice row and slice in the Volume. Iteration is done in the reverse element order according to the Range. More... | |
reverse_row_range_iterator | row_rend (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 of a slice row in the Volume. Iteration is done in the reverse element order according to the Range. More... | |
const_reverse_row_range_iterator | row_rbegin (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 of a slice row in the Volume. Iteration is done in the reverse element order according to the Range. More... | |
const_reverse_row_range_iterator | row_rend (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 of a slice row in the Volume. 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 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 Volume. Iteration is done in ordinary element order according to the Range. More... | |
col_range_iterator | col_end (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 Volume. Iteration is done in ordinary element order according to the Range. More... | |
const_col_range_iterator | col_begin (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 Volume. Iteration is done in ordinary element order according to the Range. More... | |
const_col_range_iterator | col_end (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 Volume. Iteration is done in ordinary element order according to the Range. More... | |
reverse_col_range_iterator | col_rbegin (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 Volume. Iteration is done in the reverse element order according to the Range. More... | |
reverse_col_range_iterator | col_rend (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 Volume. Iteration is done in the reverse element order according to the Range. More... | |
const_reverse_col_range_iterator | col_rbegin (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 Volume. Iteration is done in the reverse element order according to the Range. More... | |
const_reverse_col_range_iterator | col_rend (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 Volume. Iteration is done in the reverse element order according to the Range. More... | |
One dimensional global plane iterators | |
iterator | plane_begin (const size_type slice) |
Returns a read/write iterator that points to the first element in the in the slice plane of the Volume. Iteration is done in ordinary element order. More... | |
const_iterator | plane_begin (const size_type slice) const |
Returns a read-only (constant) iterator that points to the first element in the slice plane of the Volume. Iteration is done in ordinary element order. More... | |
iterator | plane_end (const size_type slice) |
Returns a read/write iterator that points one past the last element in the slice plane of the Volume. Iteration is done in ordinary element order. More... | |
const_iterator | plane_end (const size_type slice) const |
Returns a read-only (constant) iterator that points one past the last element in the slice plane of the Volume. Iteration is done in ordinary element order. More... | |
reverse_iterator | plane_rbegin (const size_type slice) |
Returns a read/write reverse iterator that points to the last element in the slice plane of the Volume. Iteration is done in reverse element order. More... | |
const_reverse_iterator | plane_rbegin (const size_type slice) const |
Returns a read-only (constant) reverse iterator that points to the last element in the slice plane k of the Volume. Iteration is done in reverse element order. More... | |
reverse_iterator | plane_rend (const size_type slice) |
Returns a read/write reverse iterator that points to one before the first element in the slice plane of the Volume. Iteration is done in reverse element order. More... | |
const_reverse_iterator | plane_rend (const size_type slice) const |
Returns a read-only (constant) reverse iterator that points to one before the first element in the slice plane of the Volume. Iteration is done in reverse element order. More... | |
two dimensionnal plane iterators : Global iterators | |
iterator2d | plane_upper_left (PLANE_ORIENTATION P, const size_type plane_coordinate) |
Returns a read/write iterator that points to the first element of the plane in the Volume. It points to the upper left element of the plane Iteration is done in ordinary element order. More... | |
iterator2d | plane_bottom_right (PLANE_ORIENTATION P, const size_type plane_coordinate) |
Returns a read/write iterator that points to the last element of the plane in the Volume. It points to past the end element of the bottom right element of the plane Iteration is done in ordinary element order. More... | |
const_iterator2d | plane_upper_left (PLANE_ORIENTATION P, const size_type plane_coordinate) const |
Returns a read/write const iterator that points to the first element of the plane in the Volume. It points to the upper left element of the plane Iteration is done in ordinary element order. More... | |
const_iterator2d | plane_bottom_right (PLANE_ORIENTATION P, const size_type plane_coordinate) const |
Returns a read/write const iterator that points to the last element of the plane in the Volume. It points to past the end element of the bottom right element of the plane Iteration is done in ordinary element order. More... | |
reverse_iterator2d | plane_rupper_left (PLANE_ORIENTATION P, const size_type plane_coordinate) |
Returns a read/write reverse_iterator that points to the bottom right element of the plane in the Volume. Iteration is done in backward element order. More... | |
reverse_iterator2d | plane_rbottom_right (PLANE_ORIENTATION P, const size_type plane_coordinate) |
Returns a read/write reverse_iterator that points to the upper left element of the plane in the Volume. Iteration is done in backward element order. More... | |
const_reverse_iterator2d | plane_rupper_left (PLANE_ORIENTATION P, const size_type plane_coordinate) const |
Returns a read/write const reverse iterator that points to the bottom right element of the plane in the Volume. Iteration is done in backward element order. More... | |
const_reverse_iterator2d | plane_rbottom_right (PLANE_ORIENTATION P, const size_type plane_coordinate) const |
Returns a read/write const reverse iterator that points to the upper left element of the plane in the Volume. Iteration is done in backward element order. More... | |
two dimensionnal plane iterators : box iterators | |
iterator2d | plane_upper_left (PLANE_ORIENTATION P, const size_type plane_coordinate, const Box2d< int > &b) |
Returns a read/write iterator that points to the first element of a box within a plane in the Volume. It points to the upper left element of the box Iteration is done in ordinary element order. More... | |
iterator2d | plane_bottom_right (PLANE_ORIENTATION P, const size_type plane_coordinate, const Box2d< int > &b) |
Returns a read/write iterator that points to the last element of a box within a plane in the Volume. It points to past the end element of the bottom right element of the plane Iteration is done in ordinary element order. More... | |
const_iterator2d | plane_upper_left (PLANE_ORIENTATION P, const size_type plane_coordinate, const Box2d< int > &b) const |
Returns a read/write const iterator that points to the first element of a box within a plane in the Volume. It points to the upper left element of the plane Iteration is done in ordinary element order. More... | |
const_iterator2d | plane_bottom_right (PLANE_ORIENTATION P, const size_type plane_coordinate, const Box2d< int > &b) const |
Returns a read/write const iterator that points to the last element of a box within a plane in the Volume. It points to past the end element of the bottom right element of the plane Iteration is done in ordinary element order. More... | |
reverse_iterator2d | plane_rupper_left (PLANE_ORIENTATION P, const size_type plane_coordinate, const Box2d< int > &b) |
Returns a read/write reverse iterator that points to the last element of a box within a plane in the Volume. It points to the bottom right element of the box Iteration is done in backward element order. More... | |
reverse_iterator2d | plane_rbottom_right (PLANE_ORIENTATION P, const size_type plane_coordinate, const Box2d< int > &b) |
Returns a read/write reverse iterator that points to the first element of a box within a plane in the Volume. It points to the upper left element of the plane Iteration is done in backward element order. More... | |
const_reverse_iterator2d | plane_rupper_left (PLANE_ORIENTATION P, const size_type plane_coordinate, const Box2d< int > &b) const |
Returns a read/write const reverse iterator that points to the last element of a box within a plane in the Volume. It points to the bottom right element of the plane Iteration is done in backward element order. More... | |
const_reverse_iterator2d | plane_rbottom_right (PLANE_ORIENTATION P, const size_type plane_coordinate, const Box2d< int > &b) const |
Returns a read/write const reverse iterator that points to the first element of a box within a plane in the Volume. It points to the bottom right element of the plane Iteration is done in backward element order. More... | |
three dimensionnal iterators : Global iterators | |
iterator3d | front_upper_left () |
Returns a read/write iterator3d that points to the first element of the Volume. It points to the front upper left element of the Volume. More... | |
iterator3d | back_bottom_right () |
Returns a read/write iterator3d that points to the past the end element of the Volume. It points to past the end element of the back bottom right element of the Volume. More... | |
const_iterator3d | front_upper_left () const |
Returns a read-only iterator3d that points to the first element of the Volume. It points to the front upper left element of the Volume. More... | |
const_iterator3d | back_bottom_right () const |
Returns a read-only iterator3d that points to the past the end element of the Volume. It points to past the end element of the back bottom right element of the Volume. More... | |
reverse_iterator3d | rfront_upper_left () |
Returns a read/write reverse iterator3d. It points to the back bottom right element of the Volume. Iteration is done within the Volume in the reverse order. More... | |
reverse_iterator3d | rback_bottom_right () |
Returns a read/write reverse iterator3d. It points to past the front upper left element of the Volume. Iteration is done in the reverse order. More... | |
const_reverse_iterator3d | rfront_upper_left () const |
Returns a read only reverse iterator3d that points. It points to the back bottom right element of the Volume. Iteration is done within the Volume in the reverse order. More... | |
const_reverse_iterator3d | rback_bottom_right () const |
Returns a read only reverse iterator3d. It points to past the front upper left element of the Volume. Iteration is done in the reverse order. More... | |
three dimensionnal iterators : Box iterators | |
iterator3d | front_upper_left (const Box3d< int > &box) |
Returns a read/write iterator3d that points to the first element of the Volume. It points to the front upper left element of the Box3d associated to the Volume. More... | |
iterator3d | back_bottom_right (const Box3d< int > &box) |
Returns a read/write iterator3d that points to the past the end element of the Volume. It points to past the end element of the back bottom right element of the Box3d associated to the Volume. More... | |
const_iterator3d | front_upper_left (const Box3d< int > &box) const |
Returns a read only iterator3d that points to the first element of the Volume. It points to the front upper left element of the Box3d associated to the Volume. More... | |
const_iterator3d | back_bottom_right (const Box3d< int > &box) const |
Returns a read only iterator3d that points to the past the end element of the Volume. It points to past the end element of the back bottom right element of the Box3d associated to the Volume. More... | |
reverse_iterator3d | rfront_upper_left (const Box3d< int > &box) |
Returns a read/write reverse iterator3d. It points to the back bottom right element of the Box3d associated to the Volume. Iteration is done in the reverse order. More... | |
reverse_iterator3d | rback_bottom_right (const Box3d< int > &box) |
Returns a read/write reverse iterator3d. It points to one before the front upper left element of the Box3d box associated to the Volume. More... | |
const_reverse_iterator3d | rfront_upper_left (const Box3d< int > &box) const |
Returns a read only reverse iterator3d. It points to the back bottom right element of the Box3d box associated to the Volume. Iteration is done in the reverse order. More... | |
const_reverse_iterator3d | rback_bottom_right (const Box3d< int > &box) const |
Returns a read-only reverse iterator3d. It points to one before the front element of the bottom right element of the Box3d box associated to the Volume. More... | |
three dimensionnal iterators : Range iterators | |
iterator3d_range | front_upper_left (const Range< int > &slice_range, const Range< int > &row_range, const Range< int > &col_range) |
Returns a read/write iterator3d_range that points to the front upper left element of the ranges slice_range, row_range and col_range associated to the Volume. More... | |
iterator3d_range | back_bottom_right (const Range< int > &slice_range, const Range< int > &row_range, const Range< int > &col_range) |
Returns a read/write iterator3d_range that points to the past the end back bottom right element of the ranges slice_range, row_range and col_range associated to the Volume. More... | |
const_iterator3d_range | front_upper_left (const Range< int > &slice_range, const Range< int > &row_range, const Range< int > &col_range) const |
Returns a read-only iterator3d_range that points to the to the front upper left element of the ranges slice_range, row_range and col_range associated to the Volume. More... | |
const_iterator3d_range | back_bottom_right (const Range< int > &slice_range, const Range< int > &row_range, const Range< int > &col_range) const |
Returns a read-only iterator3d_range that points to the past the end back bottom right element of the ranges slice_range, row_range and col_range associated to the Volume. More... | |
reverse_iterator3d_range | rfront_upper_left (const Range< int > &slice_range, const Range< int > &row_range, const Range< int > &col_range) |
Returns a read/write reverse_iterator3d_range that points to the past the back bottom right element of the ranges row_range and col_range associated to the Volume. Iteration is done in the reverse order. More... | |
reverse_iterator3d_range | rback_bottom_right (const Range< int > &slice_range, const Range< int > &row_range, const Range< int > &col_range) |
Returns a read/write reverse_iterator3d_range that points to one before the front upper left element of the ranges row_range and col_range associated to the Volume. Iteration is done in the reverse order. More... | |
const_reverse_iterator3d_range | rfront_upper_left (const Range< int > &slice_range, const Range< int > &row_range, const Range< int > &col_range) const |
Returns a read-only reverse_iterator3d_range that points to the past the back bottom right element of the ranges row_range and col_range associated to the Volume. Iteration is done in the reverse order. More... | |
const_reverse_iterator3d_range | rback_bottom_right (const Range< int > &slice_range, const Range< int > &row_range, const Range< int > &col_range) const |
Returns a read-only reverse_iterator3d_range that points to one before the front upper left element of the ranges row_range and col_range associated to the Volume.Iteration is done in the reverse order. More... | |
Assignment operators and methods | |
self & | operator= (const Volume< T > &rhs) |
Assign a Volume. More... | |
self & | operator= (const T &value) |
Assign all the elments of the Volume 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 k) |
const T *const * | operator[] (const size_type k) const |
reference | operator() (const size_type k, const size_type i, const size_type j) |
Subscript access to the data contained in the Volume. More... | |
const_reference | operator() (const size_type k, const size_type i, const size_type j) const |
Subscript access to the data contained in the Volume. More... | |
Arithmetic operators | |
self & | operator+= (const T &val) |
Add val to each element of the Volume. More... | |
self & | operator-= (const T &val) |
self & | operator*= (const T &val) |
self & | operator/= (const T &val) |
self | operator- () const |
self & | operator+= (const self &rhs) |
self & | operator-= (const self &rhs) |
self & | operator*= (const self &rhs) |
self & | operator/= (const self &rhs) |
Mathematic operators | |
T & | min () const |
Returns the min element of the Volume according to the operator <. More... | |
T & | max () const |
Returns the max element of the Volume according to the operator <. More... | |
T | sum () const |
Returns the sum of the elements of the Volume. More... | |
Volume< T > & | apply (T(*fun)(T)) |
Applys the one-parameter C-function fun to each element of the Volume. More... | |
Volume< T > & | apply (T(*fun)(const T &)) |
Applys the one-parameter C-function fun to each element of the Volume. More... | |
Static Public Attributes | |
static const std::size_t | DIM = 3 |
Friends | |
class | boost::serialization::access |
Comparison operators | |
bool | operator== (const Volume< T > &x, const Volume< T > &y) |
Volume equality comparison More... | |
bool | operator!= (const Volume< T > &x, const Volume< T > &y) |
Volume inequality comparison More... | |
bool | operator< (const Volume< T > &x, const Volume< T > &y) |
Less than comparison operator (Volume ordering relation) More... | |
bool | operator> (const Volume< T > &x, const Volume< T > &y) |
More than comparison operator. More... | |
bool | operator<= (const Volume< T > &x, const Volume< T > &y) |
Less than equal comparison operator. More... | |
bool | operator>= (const Volume< T > &x, const Volume< T > &y) |
More than equal comparison operator. More... | |
Related Functions | |
(Note that these are not member functions.) | |
template<typename T > | |
T & | min (const Volume< T > &M1) |
Returns the min element of a Volume. More... | |
template<typename T > | |
T & | max (const Volume< T > &M1) |
Returns the max element of a Volume. More... | |
template<typename T > | |
Volume< T > | abs (const Volume< T > &V) |
Returns the abs value of each element of the Volume. More... | |
template<typename T > | |
Volume< T > | sqrt (const Volume< T > &V) |
Returns the sqrt value of each element of the Volume. More... | |
template<typename T > | |
Volume< T > | cos (const Volume< T > &V) |
Returns the cos value of each element of the Volume. More... | |
template<typename T > | |
Volume< T > | acos (const Volume< T > &V) |
Returns the acos value of each element of the Volume. More... | |
template<typename T > | |
Volume< T > | sin (const Volume< T > &V) |
Returns the sin value of each element of the Volume. More... | |
template<typename T > | |
Volume< T > | asin (const Volume< T > &V) |
Returns the sin value of each element of the Volume. More... | |
template<typename T > | |
Volume< T > | tan (const Volume< T > &V) |
Returns the tan value of each element of the Volume. More... | |
template<typename T > | |
Volume< T > | atan (const Volume< T > &V) |
Returns the atan value of each element of the Volume. More... | |
template<typename T > | |
Volume< T > | exp (const Volume< T > &V) |
Returns the exp value of each element of the Volume. More... | |
template<typename T > | |
Volume< T > | log (const Volume< T > &V) |
Returns the log value of each element of the Volume. More... | |
template<typename T > | |
Volume< T > | cosh (const Volume< T > &V) |
Returns the cosh value of each element of the Volume. More... | |
template<typename T > | |
Volume< T > | sinh (const Volume< T > &V) |
Returns the sinh value of each element of the Volume. More... | |
template<typename T > | |
Volume< T > | tanh (const Volume< T > &V) |
Returns the tanh value of each element of the Volume. More... | |
template<typename T > | |
Volume< T > | log10 (const Volume< T > &V) |
Returns the log10 value of each element of the Volume. More... | |
i/o operators | |
std::ostream & | operator<< (std::ostream &out, const self &a) |
Write the Volume to the ouput stream. More... | |
void | read_raw (const std::string &file_path_name, const std::size_t slices, const std::size_t rows, const std::size_t cols) |
Reads a Volume from a file path name. More... | |
void | write_raw (const std::string &file_path_name) const |
Write a Volume to a file path name. More... | |
void | write_tecplot (const std::string &file_path_name, const std::string &title) const |
Write a Volume to a tecplot file. More... | |
void | write_to_images_tecplot (const std::string &file_path_name, const std::string &title, const std::size_t from, const std::size_t to) const |
Write slices of a Container3D to a tecplot file. More... | |
Numerical volume class This is a two-dimensional dynamic and generic container. This container statisfies the BidirectionnalContainer concepts of the STL. It is also an 3d extension of the RandomAccessContainer concept. That is to say the bracket element access is replaced by the triple bracket element access. Data are stored using a Matrix3d class. It extends the interface of Matrix3d adding image read/write operations. These operations are done using the ImageMagick library.
T | Type of object in the Volume |
Definition at line 107 of file Volume.hpp.
typedef slip::stride_iterator<pointer> slip::Volume< T >::col_iterator |
Definition at line 189 of file Volume.hpp.
typedef slip::stride_iterator<col_iterator> slip::Volume< T >::col_range_iterator |
Definition at line 195 of file Volume.hpp.
typedef slip::stride_iterator<const_pointer> slip::Volume< T >::const_col_iterator |
Definition at line 190 of file Volume.hpp.
typedef slip::stride_iterator<const_col_iterator> slip::Volume< T >::const_col_range_iterator |
Definition at line 196 of file Volume.hpp.
typedef const_iterator3d slip::Volume< T >::const_default_iterator |
Definition at line 239 of file Volume.hpp.
typedef const_pointer slip::Volume< T >::const_iterator |
Definition at line 178 of file Volume.hpp.
typedef slip::Array3d<T>::const_iterator2d slip::Volume< T >::const_iterator2d |
Definition at line 222 of file Volume.hpp.
typedef slip::Array3d<T>::const_iterator3d slip::Volume< T >::const_iterator3d |
Definition at line 228 of file Volume.hpp.
typedef slip::Array3d<T>::const_iterator3d_range slip::Volume< T >::const_iterator3d_range |
Definition at line 230 of file Volume.hpp.
typedef const value_type* slip::Volume< T >::const_pointer |
Definition at line 170 of file Volume.hpp.
typedef const value_type& slip::Volume< T >::const_reference |
Definition at line 172 of file Volume.hpp.
typedef std::reverse_iterator<const_col_iterator> slip::Volume< T >::const_reverse_col_iterator |
Definition at line 204 of file Volume.hpp.
typedef std::reverse_iterator<const_col_range_iterator> slip::Volume< T >::const_reverse_col_range_iterator |
Definition at line 209 of file Volume.hpp.
typedef std::reverse_iterator<const_iterator> slip::Volume< T >::const_reverse_iterator |
Definition at line 181 of file Volume.hpp.
typedef std::reverse_iterator<const_iterator2d> slip::Volume< T >::const_reverse_iterator2d |
Definition at line 224 of file Volume.hpp.
typedef std::reverse_iterator<const_iterator3d> slip::Volume< T >::const_reverse_iterator3d |
Definition at line 233 of file Volume.hpp.
typedef std::reverse_iterator<const_iterator3d_range> slip::Volume< T >::const_reverse_iterator3d_range |
Definition at line 235 of file Volume.hpp.
typedef std::reverse_iterator<const_iterator> slip::Volume< T >::const_reverse_row_iterator |
Definition at line 202 of file Volume.hpp.
typedef std::reverse_iterator<const_row_range_iterator> slip::Volume< T >::const_reverse_row_range_iterator |
Definition at line 207 of file Volume.hpp.
typedef std::reverse_iterator<const_slice_iterator> slip::Volume< T >::const_reverse_slice_iterator |
Definition at line 200 of file Volume.hpp.
typedef std::reverse_iterator<const_slice_range_iterator> slip::Volume< T >::const_reverse_slice_range_iterator |
Definition at line 198 of file Volume.hpp.
typedef const_pointer slip::Volume< T >::const_row_iterator |
Definition at line 188 of file Volume.hpp.
typedef slip::stride_iterator<const_pointer> slip::Volume< T >::const_row_range_iterator |
Definition at line 194 of file Volume.hpp.
typedef slip::stride_iterator<const_pointer> slip::Volume< T >::const_slice_iterator |
Definition at line 186 of file Volume.hpp.
typedef slip::stride_iterator<const_slice_iterator> slip::Volume< T >::const_slice_range_iterator |
Definition at line 192 of file Volume.hpp.
typedef iterator3d slip::Volume< T >::default_iterator |
Definition at line 238 of file Volume.hpp.
typedef ptrdiff_t slip::Volume< T >::difference_type |
Definition at line 174 of file Volume.hpp.
typedef pointer slip::Volume< T >::iterator |
Definition at line 177 of file Volume.hpp.
typedef slip::Array3d<T>::iterator2d slip::Volume< T >::iterator2d |
Definition at line 221 of file Volume.hpp.
typedef slip::Array3d<T>::iterator3d slip::Volume< T >::iterator3d |
Definition at line 227 of file Volume.hpp.
typedef slip::Array3d<T>::iterator3d_range slip::Volume< T >::iterator3d_range |
Definition at line 229 of file Volume.hpp.
typedef value_type* slip::Volume< T >::pointer |
Definition at line 169 of file Volume.hpp.
typedef value_type& slip::Volume< T >::reference |
Definition at line 171 of file Volume.hpp.
typedef std::reverse_iterator<col_iterator> slip::Volume< T >::reverse_col_iterator |
Definition at line 203 of file Volume.hpp.
typedef std::reverse_iterator<col_range_iterator> slip::Volume< T >::reverse_col_range_iterator |
Definition at line 208 of file Volume.hpp.
typedef std::reverse_iterator<iterator> slip::Volume< T >::reverse_iterator |
Definition at line 180 of file Volume.hpp.
typedef std::reverse_iterator<iterator2d> slip::Volume< T >::reverse_iterator2d |
Definition at line 223 of file Volume.hpp.
typedef std::reverse_iterator<iterator3d> slip::Volume< T >::reverse_iterator3d |
Definition at line 232 of file Volume.hpp.
typedef std::reverse_iterator<iterator3d_range> slip::Volume< T >::reverse_iterator3d_range |
Definition at line 234 of file Volume.hpp.
typedef std::reverse_iterator<iterator> slip::Volume< T >::reverse_row_iterator |
Definition at line 201 of file Volume.hpp.
typedef std::reverse_iterator<row_range_iterator> slip::Volume< T >::reverse_row_range_iterator |
Definition at line 206 of file Volume.hpp.
typedef std::reverse_iterator<slice_iterator> slip::Volume< T >::reverse_slice_iterator |
Definition at line 199 of file Volume.hpp.
typedef std::reverse_iterator<slice_range_iterator> slip::Volume< T >::reverse_slice_range_iterator |
Definition at line 197 of file Volume.hpp.
typedef pointer slip::Volume< T >::row_iterator |
Definition at line 187 of file Volume.hpp.
typedef slip::stride_iterator<pointer> slip::Volume< T >::row_range_iterator |
Definition at line 193 of file Volume.hpp.
typedef Volume<T> slip::Volume< T >::self |
Definition at line 167 of file Volume.hpp.
typedef std::size_t slip::Volume< T >::size_type |
Definition at line 175 of file Volume.hpp.
typedef slip::stride_iterator<pointer> slip::Volume< T >::slice_iterator |
Definition at line 185 of file Volume.hpp.
typedef slip::stride_iterator<slice_iterator> slip::Volume< T >::slice_range_iterator |
Definition at line 191 of file Volume.hpp.
typedef T slip::Volume< T >::value_type |
Definition at line 166 of file Volume.hpp.
|
inline |
Constructs a Volume.
Definition at line 3928 of file Volume.hpp.
slip::Volume< T >::Volume | ( | const std::size_t | d1, |
const std::size_t | d2, | ||
const std::size_t | d3 | ||
) |
Constructs a Volume.
d1 | first dimension of the Volume |
d2 | second dimension of the Volume |
d3 | third dimension of the Volume |
slip::Volume< T >::Volume | ( | const std::size_t | d1, |
const std::size_t | d2, | ||
const std::size_t | d3, | ||
const T & | val | ||
) |
Constructs a Volume initialized by the scalar value val.
d1 | first dimension of the Volume |
d2 | second dimension of the Volume |
d3 | third dimension of the Volume |
val | initialization value of the elements |
slip::Volume< T >::Volume | ( | const std::size_t | d1, |
const std::size_t | d2, | ||
const std::size_t | d3, | ||
const T * | val | ||
) |
Constructs a Volume initialized by an array val.
d1 | first dimension of the Volume |
d2 | second dimension of the Volume |
d3 | third dimension of the Volume |
val | initialization array value of the elements |
|
inline |
Contructs a Volume from a range.
d1 | first dimension of the Volume |
d2 | second dimension of the Volume |
d3 | third dimension of the Volume |
first | An input iterator. |
last | An input iterator. |
Create a Volume consisting of copies of the elements from [first,last).
Definition at line 301 of file Volume.hpp.
|
inline |
Constructs a copy of the Volume rhs.
Definition at line 3961 of file Volume.hpp.
|
inline |
Destructor of the Volume.
Definition at line 3967 of file Volume.hpp.
|
inline |
Definition at line 3934 of file Volume.hpp.
|
inline |
Definition at line 3942 of file Volume.hpp.
|
inline |
Definition at line 3951 of file Volume.hpp.
|
inline |
Applys the one-parameter C-function fun to each element of the Volume.
fun | The one-parameter C function |
Definition at line 5876 of file Volume.hpp.
|
inline |
Applys the one-parameter C-function fun to each element of the Volume.
fun | The one-const-parameter C function |
Definition at line 5884 of file Volume.hpp.
|
inline |
Returns a read/write iterator3d that points to the past the end element of the Volume. It points to past the end element of the back bottom right element of the Volume.
Definition at line 5130 of file Volume.hpp.
|
inline |
Returns a read-only iterator3d that points to the past the end element of the Volume. It points to past the end element of the back bottom right element of the Volume.
Definition at line 5137 of file Volume.hpp.
|
inline |
Returns a read/write iterator3d that points to the past the end element of the Volume. It points to past the end element of the back bottom right element of the Box3d associated to the Volume.
box | a Box3d defining the range of indices to iterate within the Volume. |
Definition at line 5198 of file Volume.hpp.
|
inline |
Returns a read only iterator3d that points to the past the end element of the Volume. It points to past the end element of the back bottom right element of the Box3d associated to the Volume.
box | a Box3d defining the range of indices to iterate within the Volume. |
Definition at line 5206 of file Volume.hpp.
|
inline |
Returns a read/write iterator3d_range that points to the past the end back bottom right element of the ranges slice_range, row_range and col_range associated to the Volume.
slice_range | The range of the slices. |
row_range | The range of the rows. |
col_range | The range of the columns. |
Definition at line 5261 of file Volume.hpp.
|
inline |
Returns a read-only iterator3d_range that points to the past the end back bottom right element of the ranges slice_range, row_range and col_range associated to the Volume.
slice_range | The range of the slices. |
row_range | The range of the rows. |
col_range | The range of the columns. |
Definition at line 5284 of file Volume.hpp.
|
inline |
Returns a read-only (constant) iterator that points to the first element in the Volume. Iteration is done in ordinary element order.
Definition at line 4037 of file Volume.hpp.
|
inline |
Returns a read/write iterator that points to the first element in the Volume. Iteration is done in ordinary element order.
Definition at line 4023 of file Volume.hpp.
col_iterator slip::Volume< T >::col_begin | ( | const size_type | slice, |
const size_type | col | ||
) |
Returns a read/write iterator that points to the first element of the column column of the slice slice in the Volume. Iteration is done modulo the number of columns.
slice | The index of the slice. |
col | The index of the column |
const_col_iterator slip::Volume< T >::col_begin | ( | 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 the slice slice in the Volume. Iteration is done modulo the number of columns.
slice | The index of the slice. |
col | The index of the column |
col_range_iterator slip::Volume< T >::col_begin | ( | 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 Volume. 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 |
const_col_range_iterator slip::Volume< T >::col_begin | ( | 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 Volume. 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. |
col_iterator slip::Volume< T >::col_end | ( | 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 the slice slice in the Volume. Iteration is done modulo the number of columns.
slice | The index of the slice. |
col | The index of the column |
const_col_iterator slip::Volume< T >::col_end | ( | 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 the slice slice in the Volume. Iteration is done modulo the number of columns.
slice | The index of the slice. |
col | The index of the column |
col_range_iterator slip::Volume< T >::col_end | ( | 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 Volume. 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. |
const_col_range_iterator slip::Volume< T >::col_end | ( | 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 Volume. 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::Volume< T >::col_rbegin | ( | 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 the slice slice in the Volume. Iteration is done modulo the number of columns.
slice | The index of the slice. |
col | The index of the column |
const_reverse_col_iterator slip::Volume< T >::col_rbegin | ( | 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 the slice slice in the Volume. Iteration is done modulo the number of columns.
slice | The index of the slice. |
col | The index of the column |
reverse_col_range_iterator slip::Volume< T >::col_rbegin | ( | 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 Volume. Iteration is done in the reverse 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. |
const_reverse_col_range_iterator slip::Volume< T >::col_rbegin | ( | 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 Volume. Iteration is done in the reverse 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::Volume< T >::col_rend | ( | 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 the slice slice in the Volume. Iteration is done modulo the number of columns.
slice | The index of the slice. |
col | The index of the column |
const_reverse_col_iterator slip::Volume< T >::col_rend | ( | 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 the slice slice in the Volume. Iteration is done modulo the number of columns.
slice | The index of the slice. |
col | The index of the column |
reverse_col_range_iterator slip::Volume< T >::col_rend | ( | 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 Volume. Iteration is done in the reverse 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. |
const_reverse_col_range_iterator slip::Volume< T >::col_rend | ( | 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 Volume. Iteration is done in the reverse 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. |
|
inline |
Returns the number of columns (third dimension size) in the Volume.
Definition at line 5664 of file Volume.hpp.
|
inline |
Returns the number of columns (third dimension size) in the Volume.
Definition at line 5669 of file Volume.hpp.
|
inline |
Returns the number of slices (first dimension size) in the Volume.
Definition at line 5639 of file Volume.hpp.
|
inline |
Returns the number of rows (second dimension size) in the Volume.
Definition at line 5649 of file Volume.hpp.
|
inline |
Returns the number of columns (third dimension size) in the Volume.
Definition at line 5659 of file Volume.hpp.
|
inline |
Returns true if the Volume is empty. (Thus size() == 0)
Definition at line 5690 of file Volume.hpp.
|
inline |
Returns a read/write iterator that points one past the last element in the Volume. Iteration is done in ordinary element order.
Definition at line 4030 of file Volume.hpp.
|
inline |
Returns a read-only (constant) iterator that points one past the last element in the Volume. Iteration is done in ordinary element order.
Definition at line 4045 of file Volume.hpp.
|
inline |
Fills the container range [begin(),begin()+size()) with copies of value.
value | A reference-to-const of arbitrary type. |
Definition at line 3305 of file Volume.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 3316 of file Volume.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 3330 of file Volume.hpp.
|
inline |
Returns a read/write iterator3d that points to the first element of the Volume. It points to the front upper left element of the Volume.
Definition at line 5115 of file Volume.hpp.
|
inline |
Returns a read-only iterator3d that points to the first element of the Volume. It points to the front upper left element of the Volume.
Definition at line 5122 of file Volume.hpp.
|
inline |
Returns a read/write iterator3d that points to the first element of the Volume. It points to the front upper left element of the Box3d associated to the Volume.
box | A Box3d defining the range of indices to iterate within the Volume. |
Definition at line 5181 of file Volume.hpp.
|
inline |
Returns a read only iterator3d that points to the first element of the Volume. It points to the front upper left element of the Box3d associated to the Volume.
box | a Box3d defining the range of indices to iterate within the Volume. |
Definition at line 5188 of file Volume.hpp.
|
inline |
Returns a read/write iterator3d_range that points to the front upper left element of the ranges slice_range, row_range and col_range associated to the Volume.
slice_range | The range of the slices. |
row_range | The range of the rows. |
col_range | The range of the columns. |
Definition at line 5251 of file Volume.hpp.
|
inline |
Returns a read-only iterator3d_range that points to the to the front upper left element of the ranges slice_range, row_range and col_range associated to the Volume.
slice_range | The range of the slices. |
row_range | The range of the rows. |
col_range | The range of the columns. |
Definition at line 5272 of file Volume.hpp.
|
inline |
Returns the max element of the Volume according to the operator <.
Definition at line 5859 of file Volume.hpp.
|
inline |
Returns the maximal size (number of elements) in the Volume.
Definition at line 5680 of file Volume.hpp.
|
inline |
Returns the min element of the Volume according to the operator <.
Definition at line 5851 of file Volume.hpp.
|
inline |
Returns the name of the class.
Definition at line 5633 of file Volume.hpp.
reference slip::Volume< T >::operator() | ( | const size_type | k, |
const size_type | i, | ||
const size_type | j | ||
) |
Subscript access to the data contained in the Volume.
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::Volume< T >::operator() | ( | const size_type | k, |
const size_type | i, | ||
const size_type | j | ||
) | const |
Subscript access to the data contained in the Volume.
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 |
Definition at line 5781 of file Volume.hpp.
|
inline |
Definition at line 5829 of file Volume.hpp.
|
inline |
Add val to each element of the Volume.
val | value |
Definition at line 5765 of file Volume.hpp.
|
inline |
Definition at line 5806 of file Volume.hpp.
|
inline |
Definition at line 5797 of file Volume.hpp.
|
inline |
Definition at line 5773 of file Volume.hpp.
|
inline |
Definition at line 5818 of file Volume.hpp.
|
inline |
Definition at line 5789 of file Volume.hpp.
|
inline |
Definition at line 5840 of file Volume.hpp.
|
inline |
Assign a Volume.
Assign elements of Volume in rhs
rhs | Volume to get the values from. |
Definition at line 3980 of file Volume.hpp.
|
inline |
Assign all the elments of the Volume by value.
value | A reference-to-const of arbitrary type. |
Definition at line 3991 of file Volume.hpp.
T** slip::Volume< T >::operator[] | ( | const size_type | k | ) |
const T* const* slip::Volume< T >::operator[] | ( | const size_type | k | ) | const |
iterator slip::Volume< T >::plane_begin | ( | const size_type | slice | ) |
Returns a read/write iterator that points to the first element in the in the slice plane of the Volume. Iteration is done in ordinary element order.
slice | the slice coordinate of the plane |
const_iterator slip::Volume< T >::plane_begin | ( | const size_type | slice | ) | const |
Returns a read-only (constant) iterator that points to the first element in the slice plane of the Volume. Iteration is done in ordinary element order.
slice | the slice coordinate of the plane |
iterator2d slip::Volume< T >::plane_bottom_right | ( | PLANE_ORIENTATION | P, |
const size_type | plane_coordinate | ||
) |
Returns a read/write iterator that points to the last element of the plane in the Volume. It points to past the end element of the bottom right element of the plane Iteration is done in ordinary element order.
P | number of the plane axe (PLANE_ORIENTATION). |
plane_coordinate | The constant coordinate |
const_iterator2d slip::Volume< T >::plane_bottom_right | ( | PLANE_ORIENTATION | P, |
const size_type | plane_coordinate | ||
) | const |
Returns a read/write const iterator that points to the last element of the plane in the Volume. It points to past the end element of the bottom right element of the plane Iteration is done in ordinary element order.
P | number of the plane axe (PLANE_ORIENTATION). |
plane_coordinate | The constant coordinate |
iterator2d slip::Volume< T >::plane_bottom_right | ( | PLANE_ORIENTATION | P, |
const size_type | plane_coordinate, | ||
const Box2d< int > & | b | ||
) |
Returns a read/write iterator that points to the last element of a box within a plane in the Volume. It points to past the end element of the bottom right element of the plane Iteration is done in ordinary element order.
P | number of the plane axe (PLANE_ORIENTATION). |
plane_coordinate | The constant coordinate |
b | The box within the plane |
const_iterator2d slip::Volume< T >::plane_bottom_right | ( | PLANE_ORIENTATION | P, |
const size_type | plane_coordinate, | ||
const Box2d< int > & | b | ||
) | const |
Returns a read/write const iterator that points to the last element of a box within a plane in the Volume. It points to past the end element of the bottom right element of the plane Iteration is done in ordinary element order.
P | number of the plane axe (PLANE_ORIENTATION). |
plane_coordinate | The constant coordinate |
b | The box within the plane |
iterator slip::Volume< T >::plane_end | ( | const size_type | slice | ) |
Returns a read/write iterator that points one past the last element in the slice plane of the Volume. Iteration is done in ordinary element order.
slice | the slice coordinate of the plane |
const_iterator slip::Volume< T >::plane_end | ( | const size_type | slice | ) | const |
Returns a read-only (constant) iterator that points one past the last element in the slice plane of the Volume. Iteration is done in ordinary element order.
slice | the slice coordinate of the plane |
reverse_iterator slip::Volume< T >::plane_rbegin | ( | const size_type | slice | ) |
Returns a read/write reverse iterator that points to the last element in the slice plane of the Volume. Iteration is done in reverse element order.
slice | the slice coordinate of the plane |
const_reverse_iterator slip::Volume< T >::plane_rbegin | ( | const size_type | slice | ) | const |
Returns a read-only (constant) reverse iterator that points to the last element in the slice plane k of the Volume. Iteration is done in reverse element order.
slice | the slice coordinate of the plane |
reverse_iterator2d slip::Volume< T >::plane_rbottom_right | ( | PLANE_ORIENTATION | P, |
const size_type | plane_coordinate | ||
) |
Returns a read/write reverse_iterator that points to the upper left element of the plane in the Volume. Iteration is done in backward element order.
P | number of the plane axe (PLANE_ORIENTATION). |
plane_coordinate | The constant coordinate |
const_reverse_iterator2d slip::Volume< T >::plane_rbottom_right | ( | PLANE_ORIENTATION | P, |
const size_type | plane_coordinate | ||
) | const |
Returns a read/write const reverse iterator that points to the upper left element of the plane in the Volume. Iteration is done in backward element order.
P | number of the plane axe (PLANE_ORIENTATION). |
plane_coordinate | The constant coordinate |
reverse_iterator2d slip::Volume< T >::plane_rbottom_right | ( | PLANE_ORIENTATION | P, |
const size_type | plane_coordinate, | ||
const Box2d< int > & | b | ||
) |
Returns a read/write reverse iterator that points to the first element of a box within a plane in the Volume. It points to the upper left element of the plane Iteration is done in backward element order.
P | number of the plane axe (PLANE_ORIENTATION). |
plane_coordinate | The constant coordinate |
b | The box within the plane |
const_reverse_iterator2d slip::Volume< T >::plane_rbottom_right | ( | PLANE_ORIENTATION | P, |
const size_type | plane_coordinate, | ||
const Box2d< int > & | b | ||
) | const |
Returns a read/write const reverse iterator that points to the first element of a box within a plane in the Volume. It points to the bottom right element of the plane Iteration is done in backward element order.
P | number of the plane axe (PLANE_ORIENTATION). |
plane_coordinate | The constant coordinate |
b | The box within the plane |
reverse_iterator slip::Volume< T >::plane_rend | ( | const size_type | slice | ) |
Returns a read/write reverse iterator that points to one before the first element in the slice plane of the Volume. Iteration is done in reverse element order.
slice | the slice coordinate of the plane |
const_reverse_iterator slip::Volume< T >::plane_rend | ( | const size_type | slice | ) | const |
Returns a read-only (constant) reverse iterator that points to one before the first element in the slice plane of the Volume. Iteration is done in reverse element order.
slice | the slice coordinate of the plane |
reverse_iterator2d slip::Volume< T >::plane_rupper_left | ( | PLANE_ORIENTATION | P, |
const size_type | plane_coordinate | ||
) |
Returns a read/write reverse_iterator that points to the bottom right element of the plane in the Volume. Iteration is done in backward element order.
P | number of the plane axe (PLANE_ORIENTATION). |
plane_coordinate | The constant coordinate |
const_reverse_iterator2d slip::Volume< T >::plane_rupper_left | ( | PLANE_ORIENTATION | P, |
const size_type | plane_coordinate | ||
) | const |
Returns a read/write const reverse iterator that points to the bottom right element of the plane in the Volume. Iteration is done in backward element order.
P | number of the plane axe (PLANE_ORIENTATION). |
plane_coordinate | The constant coordinate |
reverse_iterator2d slip::Volume< T >::plane_rupper_left | ( | PLANE_ORIENTATION | P, |
const size_type | plane_coordinate, | ||
const Box2d< int > & | b | ||
) |
Returns a read/write reverse iterator that points to the last element of a box within a plane in the Volume. It points to the bottom right element of the box Iteration is done in backward element order.
P | number of the plane axe (PLANE_ORIENTATION). |
plane_coordinate | The constant coordinate |
b | The box within the plane |
const_reverse_iterator2d slip::Volume< T >::plane_rupper_left | ( | PLANE_ORIENTATION | P, |
const size_type | plane_coordinate, | ||
const Box2d< int > & | b | ||
) | const |
Returns a read/write const reverse iterator that points to the last element of a box within a plane in the Volume. It points to the bottom right element of the plane Iteration is done in backward element order.
P | number of the plane axe (PLANE_ORIENTATION). |
plane_coordinate | The constant coordinate |
b | The box within the plane |
iterator2d slip::Volume< T >::plane_upper_left | ( | PLANE_ORIENTATION | P, |
const size_type | plane_coordinate | ||
) |
Returns a read/write iterator that points to the first element of the plane in the Volume. It points to the upper left element of the plane Iteration is done in ordinary element order.
P | number of the plane axe (PLANE_ORIENTATION). |
plane_coordinate | The constant coordinate |
const_iterator2d slip::Volume< T >::plane_upper_left | ( | PLANE_ORIENTATION | P, |
const size_type | plane_coordinate | ||
) | const |
Returns a read/write const iterator that points to the first element of the plane in the Volume. It points to the upper left element of the plane Iteration is done in ordinary element order.
P | number of the plane axe (PLANE_ORIENTATION). |
plane_coordinate | The constant coordinate |
iterator2d slip::Volume< T >::plane_upper_left | ( | PLANE_ORIENTATION | P, |
const size_type | plane_coordinate, | ||
const Box2d< int > & | b | ||
) |
Returns a read/write iterator that points to the first element of a box within a plane in the Volume. It points to the upper left element of the box Iteration is done in ordinary element order.
P | number of the plane axe (PLANE_ORIENTATION). |
plane_coordinate | The constant coordinate |
b | The box within the plane |
const_iterator2d slip::Volume< T >::plane_upper_left | ( | PLANE_ORIENTATION | P, |
const size_type | plane_coordinate, | ||
const Box2d< int > & | b | ||
) | const |
Returns a read/write const iterator that points to the first element of a box within a plane in the Volume. It points to the upper left element of the plane Iteration is done in ordinary element order.
P | number of the plane axe (PLANE_ORIENTATION). |
plane_coordinate | The constant coordinate |
b | The box within the plane |
|
inline |
Returns a read/write reverse iterator3d. It points to past the front upper left element of the Volume. Iteration is done in the reverse order.
Definition at line 5146 of file Volume.hpp.
|
inline |
Returns a read only reverse iterator3d. It points to past the front upper left element of the Volume. Iteration is done in the reverse order.
Definition at line 5154 of file Volume.hpp.
|
inline |
Returns a read/write reverse iterator3d. It points to one before the front upper left element of the Box3d box associated to the Volume.
box | A Box3d defining the range of indices to iterate within the Volume. |
Definition at line 5215 of file Volume.hpp.
|
inline |
Returns a read-only reverse iterator3d. It points to one before the front element of the bottom right element of the Box3d box associated to the Volume.
box | A Box3d defining the range of indices to iterate within the Volume. |
Definition at line 5223 of file Volume.hpp.
|
inline |
Returns a read/write reverse_iterator3d_range that points to one before the front upper left element of the ranges row_range and col_range associated to the Volume. Iteration is done in the reverse order.
slice_range | The range of the slices. |
row_range | The range of the rows. |
col_range | The range of the columns. |
Definition at line 5316 of file Volume.hpp.
|
inline |
Returns a read-only reverse_iterator3d_range that points to one before the front upper left element of the ranges row_range and col_range associated to the Volume.Iteration is done in the reverse order.
slice_range | The range of the slices. |
row_range | The range of the rows. |
col_range | The range of the columns. |
Definition at line 5326 of file Volume.hpp.
|
inline |
Returns a read/write reverse iterator that points to the last element in the Volume. Iteration is done in reverse element order.
Definition at line 4054 of file Volume.hpp.
|
inline |
Returns a read-only (constant) reverse iterator that points to the last element in the Volume. Iteration is done in reverse element order.
Definition at line 4068 of file Volume.hpp.
|
inline |
Reads a Volume from a file path name.
file_path_name | |
slices | Number of slices |
rows | Number of rows |
cols | Number of cols |
Definition at line 5552 of file Volume.hpp.
|
inline |
Returns a read/write reverse iterator that points to one before the first element in the Volume. Iteration is done in reverse element order.
Definition at line 4061 of file Volume.hpp.
|
inline |
Returns a read-only (constant) reverse iterator that points to one before the first element in the Volume. Iteration is done in reverse element order.
Definition at line 4075 of file Volume.hpp.
|
inline |
Resizes a Volume.
d1 | new first dimension |
d2 | new second dimension |
d3 | new third dimension |
val | new value for all the elements |
Definition at line 3999 of file Volume.hpp.
|
inline |
Returns a read/write reverse iterator3d. It points to the back bottom right element of the Volume. Iteration is done within the Volume in the reverse order.
Definition at line 5163 of file Volume.hpp.
|
inline |
Returns a read only reverse iterator3d that points. It points to the back bottom right element of the Volume. Iteration is done within the Volume in the reverse order.
Definition at line 5171 of file Volume.hpp.
|
inline |
Returns a read/write reverse iterator3d. It points to the back bottom right element of the Box3d associated to the Volume. Iteration is done in the reverse order.
box | a Box3d defining the range of indices to iterate within the Volume. |
Definition at line 5232 of file Volume.hpp.
|
inline |
Returns a read only reverse iterator3d. It points to the back bottom right element of the Box3d box associated to the Volume. Iteration is done in the reverse order.
box | A Box3d defining the range of indices to iterate within the Volume. |
Definition at line 5240 of file Volume.hpp.
|
inline |
Returns a read/write reverse_iterator3d_range that points to the past the back bottom right element of the ranges row_range and col_range associated to the Volume. Iteration is done in the reverse order.
slice_range | The range of the slices. |
row_range | The range of the rows. |
col_range | The range of the columns. |
Definition at line 5295 of file Volume.hpp.
|
inline |
Returns a read-only reverse_iterator3d_range that points to the past the back bottom right element of the ranges row_range and col_range associated to the Volume. Iteration is done in the reverse order.
slice_range | The range of the slices. |
row_range | The range of the rows. |
col_range | The range of the columns. |
Definition at line 5305 of file Volume.hpp.
row_iterator slip::Volume< T >::row_begin | ( | const size_type | slice, |
const size_type | row | ||
) |
Returns a read/write iterator that points to the first element of the row row of the slice slice in the Volume. Iteration is done in ordinary element order.
slice | The index of the slice. |
row | The index of the row. |
const_row_iterator slip::Volume< T >::row_begin | ( | 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 the slice slice in the Volume. Iteration is done in ordinary element order.
slice | The index of the slice. |
row | The index of the row. |
row_range_iterator slip::Volume< T >::row_begin | ( | 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 Volume. Iteration is done in ordinary element order according to the Range.
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::Volume< T >::row_begin | ( | 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 Volume. Iteration is done in ordinary element order according to the Range.
slice | The index of the slice. |
row | The index of the row to iterate. |
range | Range of the row to iterate. |
row_iterator slip::Volume< T >::row_end | ( | 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 the slice slice in the Volume. Iteration is done in ordinary element order.
slice | The index of the slice. |
row | The index of the row. |
const_row_iterator slip::Volume< T >::row_end | ( | 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 the slice slice in the Volume. Iteration is done in ordinary element order.
slice | The index of the slice. |
row | The index of the row. |
row_range_iterator slip::Volume< T >::row_end | ( | 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 Volume. Iteration is done in ordinary element order according to the Range.
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::Volume< T >::row_end | ( | 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 Volume. Iteration is done in ordinary element order according to the Range.
slice | The index of the slice. |
row | Row to iterate. |
range | Range of the row to iterate |
reverse_row_iterator slip::Volume< T >::row_rbegin | ( | 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 the slice slice in the Volume. Iteration is done in reverse element order.
slice | The index of the slice. |
row | The index of the row. |
const_reverse_row_iterator slip::Volume< T >::row_rbegin | ( | 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 the slice slice in the Volume. Iteration is done in reverse element order.
slice | The index of the slice. |
row | The index of the row. |
reverse_row_range_iterator slip::Volume< T >::row_rbegin | ( | 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 of a slice row and slice in the Volume. Iteration is done in the reverse element order according to the Range.
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::Volume< T >::row_rbegin | ( | 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 of a slice row in the Volume. Iteration is done in the reverse element order according to the Range.
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::Volume< T >::row_rend | ( | 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 the slice slice in the Volume. Iteration is done in reverse element order.
slice | The index of the slice. |
row | The index of the row. |
const_reverse_row_iterator slip::Volume< T >::row_rend | ( | 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 the slice slice in the Volume. Iteration is done in reverse element order.
slice | The index of the slice. |
row | The index of the row. |
reverse_row_range_iterator slip::Volume< T >::row_rend | ( | 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 of a slice row in the Volume. Iteration is done in the reverse element order according to the Range.
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::Volume< T >::row_rend | ( | 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 of a slice row in the Volume. Iteration is done in the reverse element order according to the Range.
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 (second dimension size) in the Volume.
Definition at line 5654 of file Volume.hpp.
|
inline |
Returns the number of elements in the Volume.
Definition at line 5675 of file Volume.hpp.
slice_iterator slip::Volume< T >::slice_begin | ( | const size_type | row, |
const size_type | col | ||
) |
Returns a read/write iterator that points to the first element of the line (row,col) threw the slices in the Volume. Iteration is done in ordinary element order (increasing slice number).
row | row coordinate of the line |
col | col coordinate of the line |
const_slice_iterator slip::Volume< T >::slice_begin | ( | const size_type | row, |
const size_type | col | ||
) | const |
Returns a read-only (constant) iterator that points to the first element of the line (row,col) threw the slices in the Volume. Iteration is done in ordinary element order (increasing slice number).
row | row coordinate of the line |
col | col coordinate of the line |
slice_range_iterator slip::Volume< T >::slice_begin | ( | 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 (row,col) threw the slices in the Volume. Iteration is done in ordinary element order according to the Range.
row | row coordinate of the line |
col | col coordinate of the line |
range | Range of the line to iterate. |
const_slice_range_iterator slip::Volume< T >::slice_begin | ( | 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 (row,col) threw the slices in the Volume. Iteration is done in ordinary element order according to the Range.
row | row coordinate of the line |
col | col coordinate of the line |
range | Range of the line to iterate. |
slice_iterator slip::Volume< T >::slice_end | ( | 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 (row,col) threw the slices in the Volume. Iteration is done in ordinary element order (increasing slice number).
row | row coordinate of the line |
col | col coordinate of the line |
const_slice_iterator slip::Volume< T >::slice_end | ( | 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 (row,col) threw the slices in the Volume. Iteration is done in ordinary element order (increasing slice number).
row | row coordinate of the line |
col | col coordinate of the line |
slice_range_iterator slip::Volume< T >::slice_end | ( | 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 (row,col) threw the slices in the Volume. Iteration is done in ordinary element order according to the Range.
row | row coordinate of the line |
col | col coordinate of the line |
range | Range of the line to iterate. |
const_slice_range_iterator slip::Volume< T >::slice_end | ( | 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 (row,col) threw the slices in the Volume. Iteration is done in ordinary element order according to the Range.
row | row coordinate of the line |
col | col coordinate of the line |
range | Range of the line to iterate. |
reverse_slice_iterator slip::Volume< T >::slice_rbegin | ( | const size_type | row, |
const size_type | col | ||
) |
Returns a read/write iterator that points to the last element of the line (row,col) threw the slices in the Volume. Iteration is done in reverse element order (decreasing slice number).
row | row coordinate of the line |
col | col coordinate of the line |
const_reverse_slice_iterator slip::Volume< T >::slice_rbegin | ( | const size_type | row, |
const size_type | col | ||
) | const |
Returns a read-only (constant) iterator that points to the last element of the line (row,col) threw the slices in the Volume. Iteration is done in reverse element order (decreasing slice number).
row | row coordinate of the line |
col | col coordinate of the line |
reverse_slice_range_iterator slip::Volume< T >::slice_rbegin | ( | 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 (row,col) threw the slices in the Volume. Iteration is done in the reverse element order according to the Range.
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::Volume< T >::slice_rbegin | ( | 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 (row,col) threw the slices in the Volume. Iteration is done in reverse element order according to the Range.
row | row coordinate of the line |
col | col coordinate of the line |
range | Range of the line to iterate. |
reverse_slice_iterator slip::Volume< T >::slice_rend | ( | 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 (row,col) threw the slices in the Volume. Iteration is done in reverse element order (decreasing slice number).
row | row coordinate of the line |
col | col coordinate of the line |
const_reverse_slice_iterator slip::Volume< T >::slice_rend | ( | 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 (row,col) threw the slices in the Volume. Iteration is done in reverse element order (decreasing slice number).
row | row coordinate of the line |
col | col coordinate of the line |
reverse_slice_range_iterator slip::Volume< T >::slice_rend | ( | 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 (row,col) threw the slices in the Volume. Iteration is done in reverse element order according to the Range.
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::Volume< T >::slice_rend | ( | 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 (row,col) threw the slices in the Volume. Iteration is done in reverse element order according to the Range.
row | row coordinate of the line |
col | col coordinate of the line |
range | Range of the line to iterate. |
|
inline |
Returns the number of elements in a slice of the Volume.
Definition at line 5685 of file Volume.hpp.
|
inline |
Returns the number of slices (first dimension size) in the Volume.
Definition at line 5644 of file Volume.hpp.
|
inline |
Returns the sum of the elements of the Volume.
Definition at line 5867 of file Volume.hpp.
|
inline |
Swaps data with another Volume.
M | A Volume of the same element type |
Definition at line 5694 of file Volume.hpp.
|
inline |
Write a Volume to a file path name.
file_path_name |
Definition at line 5564 of file Volume.hpp.
|
inline |
Write a Volume to a tecplot file.
file_path_name | |
title | Title of the file. The data format is the following: TITLE= title
VARIABLES= X Y Z I
ZONE T= data, I= rows() J= cols() K= slices() F=POINT
x y z I(x,y,z)
|
Definition at line 5571 of file Volume.hpp.
|
inline |
Write slices of a Container3D to a tecplot file.
file_path_name | String of the file path name |
title | Title of the file. |
from | Index of the first slice. |
to | Index of the last slice. The data format is the following: TITLE= title
VARIABLES= X Y I
ZONE T= image to I= rows() J= cols() F=POINT
<data of the first slice>
ZONE T= image (to+1) I= rows() J= cols() F=POINT
<data of the second slice>
...
|
Definition at line 5579 of file Volume.hpp.
Returns the abs value of each element of the Volume.
V | The Volume |
Definition at line 6031 of file Volume.hpp.
Returns the acos value of each element of the Volume.
V | The Volume |
Definition at line 6059 of file Volume.hpp.
Returns the sin value of each element of the Volume.
V | The Volume |
Definition at line 6077 of file Volume.hpp.
Returns the atan value of each element of the Volume.
V | The Volume |
Definition at line 6095 of file Volume.hpp.
|
friend |
Definition at line 3612 of file Volume.hpp.
Returns the cos value of each element of the Volume.
V | The Volume |
Definition at line 6050 of file Volume.hpp.
Returns the cosh value of each element of the Volume.
V | The Volume |
Definition at line 6122 of file Volume.hpp.
Returns the exp value of each element of the Volume.
V | The Volume |
Definition at line 6104 of file Volume.hpp.
Returns the log value of each element of the Volume.
V | The Volume |
Definition at line 6113 of file Volume.hpp.
Returns the log10 value of each element of the Volume.
V | The Volume |
Definition at line 6149 of file Volume.hpp.
|
related |
Returns the max element of a Volume.
M1 | the Volume |
Definition at line 6024 of file Volume.hpp.
|
related |
Returns the min element of a Volume.
M1 | the Volume |
Definition at line 6017 of file Volume.hpp.
Volume inequality comparison
x | A Volume |
y | A Volume of the same type of x |
Definition at line 5713 of file Volume.hpp.
Less than comparison operator (Volume ordering relation)
x | A Volume |
y | A Volume of the same type of x |
Definition at line 5725 of file Volume.hpp.
|
friend |
Write the Volume to the ouput stream.
out | output std::ostream |
a | Volume to write to the output stream |
Definition at line 5342 of file Volume.hpp.
Less than equal comparison operator.
x | A Volume |
y | A Volume of the same type of x |
Definition at line 5743 of file Volume.hpp.
Volume equality comparison
x | A Volume |
y | A Volume of the same type of x |
Definition at line 5704 of file Volume.hpp.
More than comparison operator.
x | A Volume |
y | A Volume of the same type of x |
Definition at line 5735 of file Volume.hpp.
More than equal comparison operator.
x | A Volume |
y | A Volume of the same type of x |
Definition at line 5751 of file Volume.hpp.
Returns the sin value of each element of the Volume.
V | The Volume |
Definition at line 6068 of file Volume.hpp.
Returns the sinh value of each element of the Volume.
V | The Volume |
Definition at line 6131 of file Volume.hpp.
Returns the sqrt value of each element of the Volume.
V | The Volume |
Definition at line 6041 of file Volume.hpp.
Returns the tan value of each element of the Volume.
V | The Volume |
Definition at line 6086 of file Volume.hpp.
Returns the tanh value of each element of the Volume.
V | The Volume |
Definition at line 6140 of file Volume.hpp.
|
static |
Definition at line 241 of file Volume.hpp.