ESyS-Particle
4.0.1
|
Class for sending commands from the LatticeMaster to the SubLatticeControler. More...
#include <mpicmdbuf.h>
Public Member Functions | |
CMPILCmdBuffer (MPI_Comm, int) | |
void | broadcast (int) |
int | receive () |
Class for sending commands from the LatticeMaster to the SubLatticeControler.
The difference to a AMPIBuffer is that it is fixed size,fixed type (int) and supports Broadcasts. It thus does not share the interface with AMPIBuffer -> no inheritance
CMPILCmdBuffer::CMPILCmdBuffer | ( | MPI_Comm | comm, |
int | root | ||
) |
Constructor. Sets the MPI communicator to be used for broadcast operations and the rank of root process;
comm | the MPI communicator |
root | the rank of the root process |
void CMPILCmdBuffer::broadcast | ( | int | cmd | ) |
Broadcast a command to all members of the communicator. If the calling process is not the root process, prints an error message and does nothing.
cmd | the command |
References BasicCon::Error().
Referenced by CLatticeMaster::addBondedIG(), CLatticeMaster::addCappedBondedIG(), CLatticeMaster::addConnections(), CLatticeMaster::addExIG(), CLatticeMaster::addMesh2D(), CLatticeMaster::addParticles(), CLatticeMaster::addScalarInteractionSaveField(), CLatticeMaster::addScalarParticleSaveField(), CLatticeMaster::addScalarTriangleSaveField(), CLatticeMaster::addShortBondedIG(), CLatticeMaster::addTaggedScalarInteractionSaveField(), CLatticeMaster::addTaggedScalarParticleDistributionSaver(), CLatticeMaster::addTaggedScalarParticleSaveField(), CLatticeMaster::addTaggedVectorParticleSaveField(), CLatticeMaster::addTaggedVectorParticleSaveFieldWT(), CLatticeMaster::addVectorInteractionSaveField(), CLatticeMaster::addVectorParticleSaveField(), CLatticeMaster::addVectorParticleSaveFieldWT(), CLatticeMaster::addVectorTriangleSaveField(), CLatticeMaster::addVectorWallField(), CLatticeMaster::applyForceToWall(), CLatticeMaster::checkNeighbors(), CLatticeMaster::createTriMesh(), CLatticeMaster::do2dCalculations(), CLatticeMaster::findParticleNearestTo(), CheckPointController::issueCheckPointCmd(), CheckPointController::issueCheckPointCmdWTM(), CheckPointController::issueCheckPointLoadingCmd(), CheckPointController::issueSnapShotCmd(), CLatticeMaster::makeLattice(), CLatticeMaster::moveParticleTo(), CLatticeMaster::moveSingleNodeBy(), CLatticeMaster::moveTaggedNodesBy(), CLatticeMaster::moveTaggedParticlesBy(), CLatticeMaster::moveWallBy(), CLatticeMaster::oneStep(), CLatticeMaster::runEnd(), CLatticeMaster::runOneStep(), CLatticeMaster::searchNeighbors(), CLatticeMaster::setParticleAngVel(), CLatticeMaster::setParticleDensity(), CLatticeMaster::setParticleNonDynamic(), CLatticeMaster::setParticleNonRot(), CLatticeMaster::setParticleNonTrans(), CLatticeMaster::setParticleVel(), CLatticeMaster::setSpatialDomain(), CLatticeMaster::setTaggedParticleVel(), CLatticeMaster::setVelocityOfWall(), CLatticeMaster::setWallNormal(), and CLatticeMaster::tagParticleNearestTo().
int CMPILCmdBuffer::receive | ( | ) |
receive broadcast and return the received command
Referenced by CSubLatticeControler::run().