20 #ifndef GEOS_LINEARALGEBRA_UTILITIES_BLOCKVECTORWRAPPER_HPP_
21 #define GEOS_LINEARALGEBRA_UTILITIES_BLOCKVECTORWRAPPER_HPP_
37 template<
typename VECTOR >
Abstract view of a block vector.
void setPointer(localIndex i, VECTOR *vec)
Set pointer to a vector.
localIndex blockSize() const
Get block size.
"Shallow" representation of a block vector.
BlockVectorWrapper(BlockVectorWrapper< VECTOR > const &rhs)=default
Deleted copy constructor.
BlockVectorWrapper(localIndex const nBlocks)
Create a vector wrapper of nBlocks blocks.
void set(localIndex const blockIndex, VECTOR &vec)
Assign a sub-block to point to a given vector.
BlockVectorWrapper(BlockVectorWrapper< VECTOR > &&rhs)=default
Deleted move constructor.
virtual ~BlockVectorWrapper() override=default
Destructor.
#define GEOS_LAI_ASSERT_GE(lhs, rhs)
#define GEOS_LAI_ASSERT_GT(lhs, rhs)
GEOS_LOCALINDEX_TYPE localIndex
Local index type (for indexing objects within an MPI partition).