|
waLBerla 7.2
|
Data packing/unpacking for reduce operations This class can be used, when multiple data sets from different senders should be reduced at the receiver.
#include <ReducePackInfo.h>
Inheritance diagram for walberla::communication::ReducePackInfo:Public Member Functions | |
| ReducePackInfo () | |
| virtual | ~ReducePackInfo ()=default |
| size_t | getSize () const |
| void | reset () |
| void | communicateLocal (const IBlock *sender, IBlock *receiver, stencil::Direction dir) |
| virtual void | packData (const IBlock *sender, stencil::Direction dir, mpi::SendBuffer &outBuffer)=0 |
| void | unpackData (IBlock *receiver, stencil::Direction dir, mpi::RecvBuffer &buffer) |
Protected Member Functions | |
| virtual size_t | initData (IBlock *receiver, stencil::Direction dir)=0 |
| virtual void | safeCommunicateLocal (const IBlock *sender, IBlock *receiver, stencil::Direction dir)=0 |
| virtual void | safeUnpackData (IBlock *receiver, stencil::Direction dir, mpi::RecvBuffer &buffer)=0 |
Private Attributes | |
| size_t | size_ |
| std::set< IBlock * > | initBlocks_ |
|
inline |
|
virtualdefault |
|
inline |
|
inline |
|
protectedpure virtual |
|
pure virtual |
|
inline |
|
protectedpure virtual |
|
protectedpure virtual |
|
inline |
|
private |
|
private |