Go to the documentation of this file.
40 #ifndef MAT_VECTORHIERARCHICBASE
41 #define MAT_VECTORHIERARCHICBASE
50 template<
class Treal,
class Telement = Treal>
58 inline const int&
n() const
119 inline void assert_alloc() {
120 if (this->cap < this->nel) {
122 this->cap = this->nel;
123 this->elements = allocateElements<Telement>(this->cap);
124 for (
int ind = 0; ind < this->cap; ind++)
125 this->elements[ind] = 0;
136 template<
class Treal,
class Telement>
142 elements = allocateElements<Telement>(
n());
143 for (
int i = 0; i <
n(); i++)
149 template<
class Treal,
class Telement>
159 if (is_zero() || (n() != vec.
n())) {
161 elements = allocateElements<Telement>(vec.
n());
164 for (
int i = 0; i < n(); i++)
170 template<
class Treal,
class Telement>
bool is_empty() const
Definition: SizesAndBlocks.h:71
VectorHierarchicBase< Treal, Telement > & operator=(const VectorHierarchicBase< Treal, Telement > &vec)
Definition: VectorHierarchicBase.h:152
const int & n() const
Definition: VectorHierarchicBase.h:58
const Telement & operator()(int ind) const
Definition: VectorHierarchicBase.h:68
int const & getNBlocks() const
Definition: SizesAndBlocks.h:72
VectorHierarchicBase(SizesAndBlocks const &rowsInp)
Definition: VectorHierarchicBase.h:96
VectorHierarchicBase(const VectorHierarchicBase< Treal, Telement > &vec)
Definition: VectorHierarchicBase.h:139
void resetRows(SizesAndBlocks const &newRows)
Definition: VectorHierarchicBase.h:77
const int & nScalars() const
Definition: VectorHierarchicBase.h:55
mat::SizesAndBlocks rows
Definition: test.cc:51
VectorHierarchicBase()
Definition: VectorHierarchicBase.h:93
bool is_zero() const
Definition: VectorHierarchicBase.h:75
bool is_empty() const
Check if vector is empty Empty is different from zero, a zero matrix contains information about block...
Definition: VectorHierarchicBase.h:89
Telement * elements
Definition: VectorHierarchicBase.h:108
Telement & operator()(int ind)
Definition: VectorHierarchicBase.h:61
Definition: allocate.cc:39
SizesAndBlocks rows
Definition: VectorHierarchicBase.h:105
int const & getNScalars() const
Definition: SizesAndBlocks.h:73
Describes dimensions of matrix and its blocks on all levels.
Definition: SizesAndBlocks.h:45
void freeElements(float *ptr)
Definition: allocate.cc:49
Base class for Vector and Vector specialization.
Definition: VectorHierarchicBase.h:51
virtual ~VectorHierarchicBase()
Definition: VectorHierarchicBase.h:172