OGS
VectorProvider.h
Go to the documentation of this file.
1
11#pragma once
12
13#include <cstddef>
14
16
17namespace NumLib
18{
44{
45public:
47 virtual GlobalVector& getVector(std::size_t& id) = 0;
48
50 virtual GlobalVector& getVector(GlobalVector const& x) = 0;
51
53 virtual GlobalVector& getVector(GlobalVector const& x, std::size_t& id) = 0;
54
57 MathLib::MatrixSpecifications const& ms) = 0;
58
62 std::size_t& id) = 0;
63
68 virtual void releaseVector(GlobalVector const& x) = 0;
69
70 virtual ~VectorProvider() = default;
71};
72} // namespace NumLib
Global vector based on Eigen vector.
Definition EigenVector.h:25
virtual GlobalVector & getVector(std::size_t &id)=0
Get an uninitialized vector with the given id.
virtual GlobalVector & getVector(MathLib::MatrixSpecifications const &ms, std::size_t &id)=0
virtual ~VectorProvider()=default
virtual GlobalVector & getVector(GlobalVector const &x)=0
Get a copy of x.
virtual GlobalVector & getVector(MathLib::MatrixSpecifications const &ms)=0
Get a vector according to the given specifications.
virtual void releaseVector(GlobalVector const &x)=0
virtual GlobalVector & getVector(GlobalVector const &x, std::size_t &id)=0
Get a copy of x in the storage of the vector with the given id.