dune-common 2.10
|
Modifier for adding and/or deleting remote indices from the remote index list. More...
#include <dune/common/parallel/remoteindices.hh>
Classes | |
class | InvalidPosition |
Public Types | |
typedef T | ParallelIndexSet |
Type of the index set we use. | |
typedef ParallelIndexSet::GlobalIndex | GlobalIndex |
The type of the global index. | |
typedef ParallelIndexSet::LocalIndex | LocalIndex |
The type of the local index. | |
typedef LocalIndex::Attribute | Attribute |
The type of the attribute. | |
typedef Dune::RemoteIndex< GlobalIndex, Attribute > | RemoteIndex |
Type of the remote indices we manage. | |
typedef A | Allocator |
The type of the allocator for the remote index list. | |
typedef Dune::SLList< RemoteIndex, Allocator > | RemoteIndexList |
The type of the remote index list. | |
typedef SLListModifyIterator< RemoteIndex, Allocator > | ModifyIterator |
The type of the modifying iterator of the remote index list. | |
typedef RemoteIndexList::const_iterator | ConstIterator |
The type of the remote index list iterator. | |
Public Member Functions | |
void | insert (const RemoteIndex &index) |
Insert an index to the list. | |
void | insert (const RemoteIndex &index, const GlobalIndex &global) |
Insert an index to the list. | |
bool | remove (const GlobalIndex &global) |
Remove a remote index. | |
void | repairLocalIndexPointers () |
Repair the pointers to the local index pairs. | |
RemoteIndexListModifier (const RemoteIndexListModifier &) | |
RemoteIndexListModifier () | |
Default constructor. | |
Static Public Attributes | |
static constexpr bool | MODIFYINDEXSET = mode |
If true the index set corresponding to the remote indices might get modified. | |
Modifier for adding and/or deleting remote indices from the remote index list.
In some cases all the information about the indices also present on remote process might already be known. In this case this information can be provided to the RemoteIndices via this modifier. This prevents the global communication needed by a call to RemoteIndices::rebuild.
In some cases it might advisable to run IndicesSyncer::sync afterwards.
A Dune::RemoteIndexListModifier< T, A, mode >::Allocator |
The type of the allocator for the remote index list.
LocalIndex::Attribute Dune::RemoteIndexListModifier< T, A, mode >::Attribute |
The type of the attribute.
RemoteIndexList::const_iterator Dune::RemoteIndexListModifier< T, A, mode >::ConstIterator |
The type of the remote index list iterator.
ParallelIndexSet::GlobalIndex Dune::RemoteIndexListModifier< T, A, mode >::GlobalIndex |
The type of the global index.
ParallelIndexSet::LocalIndex Dune::RemoteIndexListModifier< T, A, mode >::LocalIndex |
The type of the local index.
SLListModifyIterator<RemoteIndex,Allocator> Dune::RemoteIndexListModifier< T, A, mode >::ModifyIterator |
The type of the modifying iterator of the remote index list.
T Dune::RemoteIndexListModifier< T, A, mode >::ParallelIndexSet |
Type of the index set we use.
Dune::RemoteIndex<GlobalIndex,Attribute> Dune::RemoteIndexListModifier< T, A, mode >::RemoteIndex |
Type of the remote indices we manage.
Dune::SLList<RemoteIndex,Allocator> Dune::RemoteIndexListModifier< T, A, mode >::RemoteIndexList |
The type of the remote index list.
|
inline |
Default constructor.
|
staticconstexpr |
If true the index set corresponding to the remote indices might get modified.
If for example new indices are added to an index set all pointers of the remote indices to the local indices become invalid after ParallelIndexSet::endResize() was called.