SLIP
1.4
|
This a four-dimensional static and generic container. This container statisfies the BidirectionnalContainer concepts of the STL. It is also an 4d extension of the RandomAccessContainer concept. That is to say the bracket element access is replaced by the quadruple bracket element access. More...
#include <Block4d.hpp>
Public Types | |
typedef T | value_type |
typedef value_type * | pointer |
typedef const value_type * | const_pointer |
typedef value_type & | reference |
typedef const value_type & | const_reference |
typedef block4d< T, NS, NP, NR, NC > | self |
typedef ptrdiff_t | difference_type |
typedef std::size_t | size_type |
typedef pointer | iterator |
typedef const_pointer | const_iterator |
typedef std::reverse_iterator < iterator > | reverse_iterator |
typedef std::reverse_iterator < const_iterator > | const_reverse_iterator |
typedef std::random_access_iterator4d_tag | iterator_category |
Public Member Functions | |
iterator | begin () |
iterator | end () |
const_iterator | begin () const |
const_iterator | end () const |
reverse_iterator | rbegin () |
reverse_iterator | rend () |
const_reverse_iterator | rbegin () const |
const_reverse_iterator | rend () const |
void | fill (const T &val) |
Init the block4d filled it with val value. More... | |
void | fill (const T *val) |
Init the block4d filled it with values contained by val array. More... | |
std::string | name () const |
Returns the name of the class. More... | |
void | swap (self &M) |
Swaps the contents of two block4d. More... | |
Static Public Member Functions | |
static std::size_t | dim () |
Returns the dimension of the block4d. More... | |
static std::size_t | dim1 () |
Returns the first dimension of the block4d (number of slabs) More... | |
static std::size_t | dim2 () |
Returns the second dimension of the block4d (number of plans) More... | |
static std::size_t | dim3 () |
Returns the third dimension of the block4d (number of rows) More... | |
static std::size_t | dim4 () |
Returns the fourth dimension of the block4d (number of columns) More... | |
static std::size_t | size () |
Returns the size (number of elements) of the block4d. More... | |
static std::size_t | size_max () |
Returns the maximal size (number of elements) of the block4d. More... | |
static bool | empty () |
Returns true if the block4d size is 0. More... | |
Public Attributes | |
slip::block3d< T, NP, NR, NC > | data [NS] |
Static Public Attributes | |
static const std::size_t | SIZE = NS * NP * NR * NC |
static const std::size_t | DIM = 4 |
Friends | |
class | boost::serialization::access |
Operators | |
std::ostream & | operator<< (std::ostream &out, const self &b) |
Write the block2d to ab ouput stream. More... | |
bool | operator== (const self &x, const self &y) |
Equality Compare operator. More... | |
bool | operator!= (const self &x, const self &y) |
Equality Compare operator. More... | |
bool | operator< (const self &x, const self &y) |
LessThan Compare operator. More... | |
bool | operator> (const self &x, const self &y) |
MoreThan Compare operator. More... | |
bool | operator<= (const self &x, const self &y) |
LessThan Compare operator. More... | |
bool | operator>= (const self &x, const self &y) |
MoreThan Compare operator. More... | |
slip::block3d< T, NP, NR, NC > & | operator[] (const std::size_t i) |
Returns a reference to the i'th slab of the block4d. More... | |
const slip::block3d< T, NP, NR, NC > & | operator[] (const std::size_t i) const |
Returns a const reference to the i'th slab of the block4d. More... | |
T * | operator() (const std::size_t l, const std::size_t i, const std::size_t j) |
Returns a pointer at the first element of the l'th slab, the i'th plan and the j'th row. More... | |
const T * | operator() (const std::size_t l, const std::size_t i, const std::size_t j) const |
Returns a const pointer at the first element of the l'th slab, the i'th plan and the j'th row. More... | |
T & | operator() (const std::size_t l, const std::size_t i, const std::size_t j, const std::size_t k) |
Returns a reference to the element at the l'th slab, the i'th plan, the j'th row and the k'th column. More... | |
const T & | operator() (const std::size_t l, const std::size_t i, const std::size_t j, const std::size_t k) const |
Returns a const reference to the element at the l'th slab, the i'th plan, the j'th row and the k'th column. More... | |
This a four-dimensional static and generic container. This container statisfies the BidirectionnalContainer concepts of the STL. It is also an 4d extension of the RandomAccessContainer concept. That is to say the bracket element access is replaced by the quadruple bracket element access.
T | Type of object in the block4d |
NS | number of slabs of the block4d |
NP | number of plans of the block4d |
NR | number of rows of the block4d |
NC | number of columns of the block4d |
Definition at line 94 of file Block4d.hpp.
typedef const_pointer slip::block4d< T, NS, NP, NR, NC >::const_iterator |
Definition at line 153 of file Block4d.hpp.
typedef const value_type* slip::block4d< T, NS, NP, NR, NC >::const_pointer |
Definition at line 143 of file Block4d.hpp.
typedef const value_type& slip::block4d< T, NS, NP, NR, NC >::const_reference |
Definition at line 145 of file Block4d.hpp.
typedef std::reverse_iterator<const_iterator> slip::block4d< T, NS, NP, NR, NC >::const_reverse_iterator |
Definition at line 156 of file Block4d.hpp.
typedef ptrdiff_t slip::block4d< T, NS, NP, NR, NC >::difference_type |
Definition at line 149 of file Block4d.hpp.
typedef pointer slip::block4d< T, NS, NP, NR, NC >::iterator |
Definition at line 152 of file Block4d.hpp.
typedef std::random_access_iterator4d_tag slip::block4d< T, NS, NP, NR, NC >::iterator_category |
Definition at line 159 of file Block4d.hpp.
typedef value_type* slip::block4d< T, NS, NP, NR, NC >::pointer |
Definition at line 142 of file Block4d.hpp.
typedef value_type& slip::block4d< T, NS, NP, NR, NC >::reference |
Definition at line 144 of file Block4d.hpp.
typedef std::reverse_iterator<iterator> slip::block4d< T, NS, NP, NR, NC >::reverse_iterator |
Definition at line 155 of file Block4d.hpp.
typedef block4d<T,NS,NP,NR,NC> slip::block4d< T, NS, NP, NR, NC >::self |
Definition at line 147 of file Block4d.hpp.
typedef std::size_t slip::block4d< T, NS, NP, NR, NC >::size_type |
Definition at line 150 of file Block4d.hpp.
typedef T slip::block4d< T, NS, NP, NR, NC >::value_type |
Definition at line 141 of file Block4d.hpp.
|
inline |
Definition at line 394 of file Block4d.hpp.
|
inline |
Definition at line 408 of file Block4d.hpp.
|
inlinestatic |
Returns the dimension of the block4d.
Definition at line 348 of file Block4d.hpp.
|
inlinestatic |
Returns the first dimension of the block4d (number of slabs)
Definition at line 350 of file Block4d.hpp.
|
inlinestatic |
Returns the second dimension of the block4d (number of plans)
Definition at line 352 of file Block4d.hpp.
|
inlinestatic |
Returns the third dimension of the block4d (number of rows)
Definition at line 354 of file Block4d.hpp.
|
inlinestatic |
Returns the fourth dimension of the block4d (number of columns)
Definition at line 356 of file Block4d.hpp.
|
inlinestatic |
Returns true if the block4d size is 0.
Definition at line 362 of file Block4d.hpp.
|
inline |
Definition at line 401 of file Block4d.hpp.
|
inline |
Definition at line 415 of file Block4d.hpp.
|
inline |
Init the block4d filled it with val value.
val | init value |
Definition at line 617 of file Block4d.hpp.
|
inline |
Init the block4d filled it with values contained by val array.
val | init array value |
Definition at line 627 of file Block4d.hpp.
|
inline |
Returns the name of the class.
Definition at line 345 of file Block4d.hpp.
|
inline |
Returns a pointer at the first element of the l'th slab, the i'th plan and the j'th row.
l | index of the slab |
i | index of the plan |
j | index of the row |
Definition at line 567 of file Block4d.hpp.
|
inline |
Returns a const pointer at the first element of the l'th slab, the i'th plan and the j'th row.
l | index of the slab |
i | index of the plan |
j | index of the row |
Definition at line 578 of file Block4d.hpp.
|
inline |
Returns a reference to the element at the l'th slab, the i'th plan, the j'th row and the k'th column.
l | index of the slab |
i | index of the plan |
j | index of the row |
k | index of the column |
Definition at line 590 of file Block4d.hpp.
|
inline |
Returns a const reference to the element at the l'th slab, the i'th plan, the j'th row and the k'th column.
l | index of the slab |
i | index of the plan |
j | index of the row |
k | index of the column |
Definition at line 603 of file Block4d.hpp.
|
inline |
Returns a reference to the i'th slab of the block4d.
i | index of the slab to return |
Definition at line 451 of file Block4d.hpp.
|
inline |
Returns a const reference to the i'th slab of the block4d.
i | index of the slab to return |
Definition at line 459 of file Block4d.hpp.
|
inline |
Definition at line 423 of file Block4d.hpp.
|
inline |
Definition at line 437 of file Block4d.hpp.
|
inline |
Definition at line 430 of file Block4d.hpp.
|
inline |
Definition at line 444 of file Block4d.hpp.
|
inlinestatic |
Returns the size (number of elements) of the block4d.
Definition at line 358 of file Block4d.hpp.
|
inlinestatic |
Returns the maximal size (number of elements) of the block4d.
Definition at line 360 of file Block4d.hpp.
|
inline |
Swaps the contents of two block4d.
M | block4d to swap with |
Definition at line 637 of file Block4d.hpp.
|
friend |
Definition at line 373 of file Block4d.hpp.
|
friend |
Equality Compare operator.
Definition at line 497 of file Block4d.hpp.
|
friend |
LessThan Compare operator.
Definition at line 512 of file Block4d.hpp.
|
friend |
Write the block2d to ab ouput stream.
out | output stream |
b | block4d to write to an output stream |
Definition at line 468 of file Block4d.hpp.
|
friend |
LessThan Compare operator.
Definition at line 540 of file Block4d.hpp.
|
friend |
Equality Compare operator.
Definition at line 483 of file Block4d.hpp.
|
friend |
MoreThan Compare operator.
Definition at line 526 of file Block4d.hpp.
|
friend |
MoreThan Compare operator.
Definition at line 554 of file Block4d.hpp.
slip::block3d<T,NP,NR,NC> slip::block4d< T, NS, NP, NR, NC >::data[NS] |
Definition at line 370 of file Block4d.hpp.
|
static |
Definition at line 163 of file Block4d.hpp.
|
static |
Definition at line 162 of file Block4d.hpp.