Interface for packing & unpacking of data to be gathered.
Implement this interface, and register your object at MPIGatherScheme
#include <GatherPackInfo.h>
Public Member Functions | |
virtual | ~GatherPackInfo ()=default |
virtual void | packData (const IBlock *sender, mpi::SendBuffer &outBuffer)=0 |
Packs all data to be gathered into the given buffer. More... | |
virtual void | unpackData (mpi::RecvBuffer &buffer)=0 |
Unpacks the data, packed by the packData() function. More... | |
virtual void | gatherFinished () |
Called after a timestep has finished, and unpackData was called for each sending block. More... | |
|
virtualdefault |
|
inlinevirtual |
Called after a timestep has finished, and unpackData was called for each sending block.
Reimplemented in walberla::gather::CurveGatherPackInfo< GhostLayerField_T, Interpolator >, and walberla::gather::CellGatherPackInfo< Field_T, CellContainer >.
|
pure virtual |
Packs all data to be gathered into the given buffer.
Restrictions:
Implemented in walberla::gather::CurveGatherPackInfo< GhostLayerField_T, Interpolator >, and walberla::gather::CellGatherPackInfo< Field_T, CellContainer >.
|
pure virtual |
Unpacks the data, packed by the packData() function.
Implemented in walberla::gather::CurveGatherPackInfo< GhostLayerField_T, Interpolator >, and walberla::gather::CellGatherPackInfo< Field_T, CellContainer >.