votca 2024.2-dev
|
N-Dim Vector. More...
#include <NDimVector.h>
Public Member Functions | |
constexpr Index | rank () |
NDimVector ()=default | |
template<typename... IndexTypes> | |
NDimVector (Index firstDimension, IndexTypes... otherDimensions) | |
template<typename... IndexTypes> | |
T & | operator() (Index firstDimension, IndexTypes... otherDimensions) |
template<typename... IndexTypes> | |
const T & | operator() (Index firstDimension, IndexTypes... otherDimensions) const |
Index | dimension (Index i) const |
Index | size () const |
std::vector< T >::iterator | begin () |
std::vector< T >::iterator | end () |
std::vector< T >::const_iterator | begin () const |
std::vector< T >::const_iterator | end () const |
Private Member Functions | |
template<typename... IndexTypes> | |
Index | linearIndex (Index firstDimension, IndexTypes... otherDimensions) const |
Private Attributes | |
std::vector< T > | storage_ |
std::array< Index, dim > | dimensions_ |
std::array< Index, dim > | offsets_ |
Static Private Attributes | |
static constexpr int | dim_ = dim |
N-Dim Vector.
This is basically a normal std::vector with an additional operator(i,j,k,l...), which allows you to treat it as a higher dim object It is column major (the first index is the fast one)
Definition at line 44 of file NDimVector.h.
|
default |
|
inline |
Definition at line 71 of file NDimVector.h.
|
inline |
Definition at line 109 of file NDimVector.h.
|
inline |
Definition at line 111 of file NDimVector.h.
|
inline |
Definition at line 106 of file NDimVector.h.
|
inline |
Definition at line 110 of file NDimVector.h.
|
inline |
Definition at line 114 of file NDimVector.h.
|
inlineprivate |
Definition at line 49 of file NDimVector.h.
|
inline |
Definition at line 90 of file NDimVector.h.
|
inline |
Definition at line 101 of file NDimVector.h.
|
inlineconstexpr |
Definition at line 66 of file NDimVector.h.
|
inline |
Definition at line 107 of file NDimVector.h.
|
staticconstexprprivate |
Definition at line 46 of file NDimVector.h.
|
private |
Definition at line 118 of file NDimVector.h.
|
private |
Definition at line 119 of file NDimVector.h.
|
private |
Definition at line 117 of file NDimVector.h.