#include <dune/istl/repartition.hh>
Public Types | |
typedef InterfaceInformation | Information |
typedef std::map< int, std::pair< Information, Information > > | InformationMap |
Public Member Functions | |
void | setCommunicator (MPI_Comm comm) |
template<class Flags , class IS > | |
void | buildSendInterface (const std::vector< int > &toPart, const ParmetisDuneIndexMap &pdmap, const IS &idxset) |
void | reserveSpaceForReceiveInterface (int proc, int size) |
void | addReceiveIndex (int proc, std::size_t idx) |
template<typename TG > | |
void | buildReceiveInterface (std::vector< std::pair< TG, int > > &indices) |
~RedistributeInterface () | |
template<typename R , typename T1 , typename T2 > | |
void | build (const R &remoteIndices, const T1 &sourceFlags, const T2 &destFlags) |
Builds the interface. | |
void | free () |
Frees memory allocated during the build. | |
MPI_Comm | communicator () const |
Get the MPI Communicator. | |
const InformationMap & | interfaces () const |
Get information about the interfaces. | |
void | print () const |
Print the interface to std::out for debugging. | |
bool | operator!= (const Interface &o) const |
bool | operator== (const Interface &o) const |
void | strip () |
Protected Member Functions | |
InformationMap & | interfaces () |
Get information about the interfaces. | |
template<class R , class T1 , class T2 , class Op , bool send> | |
void | buildInterface (const R &remoteIndices, const T1 &sourceFlags, const T2 &destFlags, Op &functor) const |
Builds the interface between remote processes. | |
Protected Attributes | |
MPI_Comm | communicator_ |
The MPI communicator we use. |
typedef InterfaceInformation Dune::Interface::Information [inherited] |
typedef std::map<int,std::pair<Information,Information> > Dune::Interface::InformationMap [inherited] |
Dune::RedistributeInterface::~RedistributeInterface | ( | ) | [inline] |
void Dune::RedistributeInterface::addReceiveIndex | ( | int | proc, | |
std::size_t | idx | |||
) | [inline] |
void Dune::RedistributeInterface::buildReceiveInterface | ( | std::vector< std::pair< TG, int > > & | indices | ) | [inline] |
void Dune::RedistributeInterface::buildSendInterface | ( | const std::vector< int > & | toPart, | |
const ParmetisDuneIndexMap & | pdmap, | |||
const IS & | idxset | |||
) | [inline] |
Referenced by Dune::graphRepartition().
bool Dune::Interface::operator!= | ( | const Interface & | o | ) | const [inline, inherited] |
References Dune::Interface::operator==().
bool Dune::Interface::operator== | ( | const Interface & | o | ) | const [inline, inherited] |
References Dune::Interface::communicator_.
Referenced by Dune::Interface::operator!=().
void Dune::RedistributeInterface::reserveSpaceForReceiveInterface | ( | int | proc, | |
int | size | |||
) | [inline] |
void Dune::RedistributeInterface::setCommunicator | ( | MPI_Comm | comm | ) | [inline] |
MPI_Comm Dune::Interface::communicator_ [protected, inherited] |
The MPI communicator we use.
Referenced by Dune::Interface::build(), Dune::Interface::communicator(), and Dune::Interface::operator==().