$treeview $search $mathjax
Palabos  Version 1.1
$projectbrief
$projectbrief
$searchbox

plb::AtomicContainerDataTransfer3D Class Reference

#include <atomicContainerBlock3D.h>

Inheritance diagram for plb::AtomicContainerDataTransfer3D:
Collaboration diagram for plb::AtomicContainerDataTransfer3D:

List of all members.

Public Member Functions

 AtomicContainerDataTransfer3D ()
virtual plint staticCellSize () const
virtual void send (Box3D domain, std::vector< char > &buffer, modif::ModifT kind) const
 Send data from the block into a byte-stream.
virtual void receive (Box3D domain, std::vector< char > const &buffer, modif::ModifT kind)
 Receive data from a byte-stream into the block.
virtual void receive (Box3D domain, std::vector< char > const &buffer, modif::ModifT kind, std::map< int, std::string > const &foreignIds)
 Receive data from a byte-stream into the block, and re-map IDs for dynamics if exist.
virtual void attribute (Box3D toDomain, plint deltaX, plint deltaY, plint deltaZ, AtomicBlock3D const &from, modif::ModifT kind)
 Attribute data between two blocks.

Constructor & Destructor Documentation

plb::AtomicContainerDataTransfer3D::AtomicContainerDataTransfer3D (  )  [inline]

Member Function Documentation

virtual void plb::AtomicContainerDataTransfer3D::attribute ( Box3D  toDomain,
plint  deltaX,
plint  deltaY,
plint  deltaZ,
AtomicBlock3D const &  from,
modif::ModifT  kind 
) [inline, virtual]

Attribute data between two blocks.

Implements plb::BlockDataTransfer3D.

virtual void plb::AtomicContainerDataTransfer3D::receive ( Box3D  domain,
std::vector< char > const &  buffer,
modif::ModifT  kind,
std::map< int, std::string > const &  foreignIds 
) [inline, virtual]

Receive data from a byte-stream into the block, and re-map IDs for dynamics if exist.

Implements plb::BlockDataTransfer3D.

virtual void plb::AtomicContainerDataTransfer3D::receive ( Box3D  domain,
std::vector< char > const &  buffer,
modif::ModifT  kind 
) [inline, virtual]

Receive data from a byte-stream into the block.

Implements plb::BlockDataTransfer3D.

virtual void plb::AtomicContainerDataTransfer3D::send ( Box3D  domain,
std::vector< char > &  buffer,
modif::ModifT  kind 
) const [inline, virtual]

Send data from the block into a byte-stream.

This method automatically resizes the buffer so it holds the proper amount of data. This is particularly important if the transmitted data is dynamic, in which case the size of the buffer cannot be predicted exactly. You can always preallocate data for the buffer though (through resize or reserve), to avoid reallocation and improve performance.

Implements plb::BlockDataTransfer3D.

virtual plint plb::AtomicContainerDataTransfer3D::staticCellSize (  )  const [inline, virtual]

The documentation for this class was generated from the following file: