int finishExchange()
Finishes the exchange. After this call all communication buffers can be reused.
bool isEmpty() const
Checks if receiver is empty (i.e., zero sized).
The ProcessCommunicator and corresponding buffers (represented by this class) are separated in order ...
ProcessCommunicatorBuff * pcBuffer
Communicator buffers representation.
void init()
Initializes receiver buffers.
CommunicatorMode
The communicator mode determines the communication.
int initExchange(int tag)
Initializes data exchange with associated problem.
int rank
Associated partition (problem) number (rank)
CommunicatorMode mode
Mode.
int initReceive(int rank, int tag)
Initialize the receive data exchange with associate problem.
void clearBuffers()
Clears all buffer contents.
CommunicationBuffer * send_buff
Send buffer.
CommunicationBuffer * recv_buff
Receive buffer.
ProcessCommunicatorBuff * giveProcessCommunicatorBuff()
Returns communication buffer.
ProcessCommunicatorBuff(CommBuffType t)
Constructor, creates empty send and receive com buffs in MPI_COMM_WORLD.
virtual ~ProcessCommunicatorBuff()
IntArray toReceive
Nodes to receive.
IntArray toSend
Nodes to send.
(Dynamic) In this case the communication pattern and the amount of data sent between nodes is not kno...
ProcessCommunicator(ProcessCommunicatorBuff *b, int irank, CommunicatorMode m=CommMode_Static)
Constructor.
int initSend(int tag)
Initialize the send data exchange with associate problem.
void initSendBuff()
Initializes send buffer to empty state. All packed data are lost.
void initRecvBuff()
Initializes send buffer to empty state. All packed data are lost.
the oofem namespace is to define a context or scope in which all oofem names are defined.
int initSend(int rank, int tag)
Initialize the send data exchange with associate problem.
int initReceive(int tag)
Initialize the receive data exchange with associate problem.