dune-common
2.4.1
|
A communicator that only needs to know the number of elements per index at the sender side. More...
#include <mpi.h>
#include <vector>
#include <map>
#include <functional>
#include <dune/common/unused.hh>
#include "interface.hh"
#include "mpitraits.hh"
Go to the source code of this file.
Classes | |
class | Dune::VariableSizeCommunicator< Allocator > |
A buffered communicator where the amount of data sent does not have to be known a priori. More... | |
Namespaces | |
Dune | |
Dune namespace. | |
A communicator that only needs to know the number of elements per index at the sender side.
T* buffer_ |
Pointer to the current insertion point of the buffer.
DataHandle& data_ |
std::size_t fixedSize |
The number of data items per index if it is fixed, 0 otherwise.
int index_ |
The other rank that this interface communcates with.
Referenced by Dune::CollectiveIterator< T, A >::advance(), Dune::CollectiveIterator< T, A >::begin(), Dune::CollectiveIterator< T, A >::end(), and Dune::CollectiveIterator< T, A >::operator++().
InterfaceInformation interface_ |
The list of local indices of this interface.
std::size_t position_ |
The current position in the buffer.
Referenced by Dune::ArrayListIterator< T, N, A >::advance(), Dune::ConstArrayListIterator< T, N, A >::advance(), Dune::ArrayListIterator< T, N, A >::decrement(), Dune::ConstArrayListIterator< T, N, A >::decrement(), Dune::ArrayListIterator< T, N, A >::dereference(), Dune::ConstArrayListIterator< T, N, A >::dereference(), Dune::ArrayListIterator< T, N, A >::distanceTo(), Dune::ConstArrayListIterator< T, N, A >::distanceTo(), Dune::ArrayListIterator< T, N, A >::elementAt(), Dune::ConstArrayListIterator< T, N, A >::elementAt(), Dune::ArrayListIterator< T, N, A >::equals(), Dune::ConstArrayListIterator< T, N, A >::equals(), Dune::ArrayListIterator< T, N, A >::eraseToHere(), Dune::ArrayListIterator< T, N, A >::increment(), Dune::ConstArrayListIterator< T, N, A >::increment(), Dune::ArrayListIterator< T, N, A >::operator=(), Dune::ConstArrayListIterator< T, N, A >::operator=(), and Dune::ArrayListIterator< T, N, A >::position().
int rank_ |
The process rank that this communication interface is with.
Referenced by Dune::IndicesSyncer< T >::IndicesSyncer(), and Dune::IndicesSyncer< T >::sync().
std::size_t size_ |
The size of the buffer.
Referenced by Dune::SLList< T, A >::clear(), Dune::ArrayList< T, N, A >::clear(), Dune::ArrayList< T, N, A >::end(), Dune::Selection< TS, TG, TL, N >::end(), Dune::Selection< TS, TG, TL, N >::free(), Dune::ArrayList< T, N, A >::purge(), Dune::SLList< T, A >::push_back(), Dune::ArrayList< T, N, A >::push_back(), Dune::SLList< T, A >::push_front(), Dune::Selection< TS, TG, TL, N >::setIndexSet(), Dune::ArrayList< T, N, A >::size(), and Dune::SLList< T, A >::size().
std::vector<std::size_t> sizes_ |
bool sizesAllocated_ |
std::vector<InterfaceTracker>& trackers_ |