|
AbstractLinAlgPack: C++ Interfaces For Vectors, Matrices And Related Linear Algebra Objects Version of the Day
|
Concrete subclass for a sub-view of a VectorMutable object. More...
#include <AbstractLinAlgPack_VectorMutableSubView.hpp>

Public Member Functions | |
| VectorMutableSubView () | |
| Constructs to uninitialized. | |
| VectorMutableSubView (const vec_mut_ptr_t &full_vec, const Range1D &rng) | |
Calls this->initialize(). | |
| void | initialize (const vec_mut_ptr_t &vec, const Range1D &rng) |
| Initialize. | |
| void | set_uninitialized () |
| Set uninitialized() | |
| const vec_mut_ptr_t & | full_vec () const |
| | |
Overridden from Vector | |
| vec_ptr_t | sub_view (const Range1D &rng) const |
| Overridden to pick VectorSubView::sub_view(). | |
Overridden from VectorMutable | |
| void | set_ele (index_type i, value_type val) |
| | |
| vec_mut_ptr_t | sub_view (const Range1D &rng) |
| | |
| void | get_sub_vector (const Range1D &rng, RTOpPack::MutableSubVector *sub_vec) |
| | |
| void | commit_sub_vector (RTOpPack::MutableSubVector *sub_vec) |
| | |
| void | set_sub_vector (const RTOpPack::SparseSubVector &sub_vec) |
| | |
Concrete subclass for a sub-view of a VectorMutable object.
Not all of the methods from VectorMutable are overridden, only those that need to be or may result in better performance.
The default constructor and copy constructors are allowd but the default assignment operator is not allowed since it does not have the correct sematics.
There is really not much to this vector subclass. The subclass is only possible because of the first_ele, sub_dim, and global_offset options with apply_op(). The vector space object returned by this->space() is of type VectorSpaceSubSpace which in turn relys on VectorSpace::sub_space().
Definition at line 50 of file AbstractLinAlgPack_VectorMutableSubView.hpp.
| AbstractLinAlgPack::VectorMutableSubView::VectorMutableSubView | ( | ) | [inline] |
Constructs to uninitialized.
Postconditions: see set_uninitialized().
Definition at line 125 of file AbstractLinAlgPack_VectorMutableSubView.hpp.
| AbstractLinAlgPack::VectorMutableSubView::VectorMutableSubView | ( | const vec_mut_ptr_t & | full_vec, |
| const Range1D & | rng | ||
| ) |
Calls this->initialize().
Definition at line 36 of file AbstractLinAlgPack_VectorMutableSubView.cpp.
| void AbstractLinAlgPack::VectorMutableSubView::initialize | ( | const vec_mut_ptr_t & | vec, |
| const Range1D & | rng | ||
| ) |
Initialize.
Constructs a view of the vector this = vec(rng).
| full_vec | [in] The original full vector. It is allowed for full_vec.get() == NULL in which case this is uninitialized (i.e. this->dim() == 0). |
| rng | [in] The range of elements in full_vec that this vector will represent. |
Definition at line 41 of file AbstractLinAlgPack_VectorMutableSubView.cpp.
| void AbstractLinAlgPack::VectorMutableSubView::set_uninitialized | ( | ) |
Set uninitialized()
Postconditions:
this->dim() == 0 this->full_vec() = NULL Reimplemented from AbstractLinAlgPack::VectorSubView.
Definition at line 49 of file AbstractLinAlgPack_VectorMutableSubView.cpp.
| const VectorMutableSubView::vec_mut_ptr_t & AbstractLinAlgPack::VectorMutableSubView::full_vec | ( | ) | const [inline] |
Reimplemented from AbstractLinAlgPack::VectorSubView.
Definition at line 130 of file AbstractLinAlgPack_VectorMutableSubView.hpp.
| Vector::vec_ptr_t AbstractLinAlgPack::VectorMutableSubView::sub_view | ( | const Range1D & | rng | ) | const [virtual] |
Overridden to pick VectorSubView::sub_view().
Reimplemented from AbstractLinAlgPack::VectorMutable.
Definition at line 58 of file AbstractLinAlgPack_VectorMutableSubView.cpp.
| void AbstractLinAlgPack::VectorMutableSubView::set_ele | ( | index_type | i, |
| value_type | val | ||
| ) | [virtual] |
Reimplemented from AbstractLinAlgPack::VectorMutable.
Definition at line 65 of file AbstractLinAlgPack_VectorMutableSubView.cpp.
| VectorMutable::vec_mut_ptr_t AbstractLinAlgPack::VectorMutableSubView::sub_view | ( | const Range1D & | rng | ) | [virtual] |
Reimplemented from AbstractLinAlgPack::VectorMutable.
Definition at line 73 of file AbstractLinAlgPack_VectorMutableSubView.cpp.
| void AbstractLinAlgPack::VectorMutableSubView::get_sub_vector | ( | const Range1D & | rng, |
| RTOpPack::MutableSubVector * | sub_vec | ||
| ) | [virtual] |
Reimplemented from AbstractLinAlgPack::VectorMutable.
Definition at line 94 of file AbstractLinAlgPack_VectorMutableSubView.cpp.
| void AbstractLinAlgPack::VectorMutableSubView::commit_sub_vector | ( | RTOpPack::MutableSubVector * | sub_vec | ) | [virtual] |
Reimplemented from AbstractLinAlgPack::VectorMutable.
Definition at line 107 of file AbstractLinAlgPack_VectorMutableSubView.cpp.
| void AbstractLinAlgPack::VectorMutableSubView::set_sub_vector | ( | const RTOpPack::SparseSubVector & | sub_vec | ) | [virtual] |
Reimplemented from AbstractLinAlgPack::VectorMutable.
Definition at line 118 of file AbstractLinAlgPack_VectorMutableSubView.cpp.
1.7.4