Composite vector for heterogenous vector. More...
#include <core/alien/data/CompositeVector.h>
Public Types | |
| using | Element = CompositeKernel::VectorElement |
| Type of submatrix element. | |
Public Member Functions | |
| CompositeVector () | |
| Constructor. | |
| CompositeVector (Arccore::Integer nc) | |
| Constructor. | |
| virtual | ~CompositeVector () |
| Free resources. | |
| void | visit (ICopyOnWriteVector &) const |
| Visit method. | |
| const ISpace & | space () const |
| Get the space of the global vector. | |
| void | resize (Arccore::Integer nc) |
| Resize the number of submatrices. | |
| Arccore::Integer | size () const |
| Get the number of subvectors. | |
| Element | composite (Arccore::Integer i) |
| Get the i-th element. | |
| IVector & | operator[] (Arccore::Integer i) |
| Get the i-th subvector. | |
| const IVector & | operator[] (Arccore::Integer i) const |
| Get the i-th subvector. | |
| void | setUserFeature (Arccore::String feature) |
| Add a feature to the composite vector. | |
| bool | hasUserFeature (Arccore::String feature) const |
| Check if the composite vector has a feature. | |
| MultiVectorImpl * | impl () |
| Get the multivector implementation. | |
| const MultiVectorImpl * | impl () const |
| Get the multivector implementation. | |
| void | free () |
| Free resources. | |
| void | clear () |
| Clear resources. | |
Private Attributes | |
| std::shared_ptr< MultiVectorImpl > | m_impl |
| The multivector implementation. | |
| CompositeKernel::Vector & | m_composite_vector |
| The composite vector. | |
Additional Inherited Members | |
| Protected Member Functions inherited from Alien::IVector | |
| IVector () | |
| Constructor. | |
| Private Member Functions inherited from Alien::ObjectWithTrace | |
| template<typename T> | |
| void | alien_info (T &&t) const |
| template<typename T> | |
| void | alien_debug (T &&t) const |
| template<typename T> | |
| void | alien_warning (T &&t) const |
| template<typename T> | |
| void | alien_fatal (T &&t) const |
| ITraceMng * | traceMng () const |
| TraceMessage | cout () const |
Composite vector for heterogenous vector.
This class allow to handle vectors made of several vectors
Definition at line 62 of file data/CompositeVector.h.
Type of submatrix element.
Definition at line 67 of file data/CompositeVector.h.
| Alien::CompositeVector::CompositeVector | ( | ) |
Constructor.
Definition at line 53 of file data/CompositeVector.cc.
References CompositeVector().
Referenced by CompositeVector().
| Alien::CompositeVector::CompositeVector | ( | Arccore::Integer | nc | ) |
Constructor.
| [in] | nc | The number of subvectors |
|
inlinevirtual |
Free resources.
Definition at line 80 of file data/CompositeVector.h.
| void Alien::CompositeVector::clear | ( | ) |
Clear resources.
Definition at line 189 of file data/CompositeVector.cc.
References impl(), m_composite_vector, and size().
Referenced by operator[]().
| CompositeVector::Element Alien::CompositeVector::composite | ( | Arccore::Integer | i | ) |
Get the i-th element.
| [in] | i | The index of the element |
Definition at line 111 of file data/CompositeVector.cc.
References m_composite_vector.
| void Alien::CompositeVector::free | ( | ) |
Free resources.
Definition at line 179 of file data/CompositeVector.cc.
References impl(), m_composite_vector, and size().
Referenced by operator[]().
| bool Alien::CompositeVector::hasUserFeature | ( | Arccore::String | feature | ) | const |
Check if the composite vector has a feature.
Definition at line 145 of file data/CompositeVector.cc.
References m_impl.
Referenced by operator[]().
|
virtual |
Get the multivector implementation.
Implements Alien::IVector.
Definition at line 154 of file data/CompositeVector.cc.
References m_impl.
Referenced by clear(), free(), Alien::NormalizeOpt::normalize(), and operator[]().
|
virtual |
Get the multivector implementation.
Implements Alien::IVector.
Definition at line 171 of file data/CompositeVector.cc.
References m_impl.
| IVector & Alien::CompositeVector::operator[] | ( | Arccore::Integer | i | ) |
Get the i-th subvector.
| [in] | i | The index of the subvector |
References Alien::IVector::IVector().
| const IVector & Alien::CompositeVector::operator[] | ( | Arccore::Integer | i | ) | const |
Get the i-th subvector.
| [in] | i | The index of the subvector |
References clear(), free(), hasUserFeature(), impl(), Alien::IVector::IVector(), and setUserFeature().
| void Alien::CompositeVector::resize | ( | Arccore::Integer | nc | ) |
Resize the number of submatrices.
| [in] | nc | The number of submatrices |
Definition at line 81 of file data/CompositeVector.cc.
References m_composite_vector, and size().
| void Alien::CompositeVector::setUserFeature | ( | Arccore::String | feature | ) |
Add a feature to the composite vector.
| [in] | feature | The feature to add |
Definition at line 137 of file data/CompositeVector.cc.
References m_impl.
Referenced by operator[]().
| Integer Alien::CompositeVector::size | ( | ) | const |
Get the number of subvectors.
Definition at line 93 of file data/CompositeVector.cc.
References m_composite_vector.
Referenced by clear(), free(), and resize().
|
virtual |
Get the space of the global vector.
Implements Alien::IVector.
Definition at line 102 of file data/CompositeVector.cc.
References m_impl.
|
virtual |
Visit method.
| [in] | visit | Visit vector method |
Implements Alien::IVector.
Definition at line 73 of file data/CompositeVector.cc.
References m_impl.
|
private |
The composite vector.
Definition at line 162 of file data/CompositeVector.h.
Referenced by clear(), composite(), free(), resize(), and size().
|
private |
The multivector implementation.
Definition at line 160 of file data/CompositeVector.h.
Referenced by hasUserFeature(), impl(), impl(), setUserFeature(), space(), and visit().