fpmas 1.6
Public Member Functions | List of all members
fpmas::communication::MpiCommunicator Class Reference

#include <communication.h>

Inheritance diagram for fpmas::communication::MpiCommunicator:
Inheritance graph
[legend]
Collaboration diagram for fpmas::communication::MpiCommunicator:
Collaboration graph
[legend]

Public Member Functions

 MpiCommunicator ()
 
 MpiCommunicator (const MpiCommunicator &)=delete
 
MpiCommunicatoroperator= (const MpiCommunicator &)=delete
 
 ~MpiCommunicator ()
 
- Public Member Functions inherited from fpmas::communication::MpiCommunicatorBase
MPI_Comm getMpiComm () const
 
MPI_Group getMpiGroup () const
 
int getRank () const override
 
int getSize () const override
 
void send (const void *data, int count, MPI_Datatype datatype, int destination, int tag) override
 
void send (const DataPack &data, MPI_Datatype datatype, int destination, int tag) override
 
void send (int destination, int tag) override
 
void Isend (const void *data, int count, MPI_Datatype datatype, int destination, int tag, Request &req) override
 
void Isend (const DataPack &data, MPI_Datatype datatype, int destination, int tag, Request &req) override
 
void Isend (int destination, int tag, Request &req) override
 
void Issend (const void *data, int count, MPI_Datatype datatype, int destination, int tag, Request &req) override
 
void Issend (const DataPack &data, MPI_Datatype datatype, int destination, int tag, Request &req) override
 
void Issend (int destination, int tag, Request &req) override
 
void recv (int source, int tag, Status &status=Status::IGNORE) override
 
void recv (void *buffer, int count, MPI_Datatype datatype, int source, int tag, Status &status=Status::IGNORE) override
 
void recv (DataPack &data, MPI_Datatype datatype, int source, int tag, Status &status=Status::IGNORE) override
 
void probe (MPI_Datatype type, int source, int tag, Status &) override
 
bool Iprobe (MPI_Datatype type, int source, int tag, Status &) override
 
bool test (Request &req) override
 
void wait (Request &req) override
 
void waitAll (std::vector< Request > &req) override
 
std::unordered_map< int, DataPackallToAll (std::unordered_map< int, DataPack > export_map, MPI_Datatype datatype) override
 
std::vector< DataPackgather (DataPack data, MPI_Datatype datatype, int root) override
 
std::vector< DataPackallGather (DataPack data, MPI_Datatype datatype) override
 
DataPack bcast (DataPack data, MPI_Datatype datatype, int root) override
 
void barrier () override
 
virtual int getRank () const =0
 
virtual int getSize () const =0
 
virtual void send (const void *data, int count, MPI_Datatype datatype, int destination, int tag)=0
 
virtual void send (const DataPack &data, MPI_Datatype datatype, int destination, int tag)=0
 
virtual void send (int destination, int tag)=0
 
virtual void Isend (const void *data, int count, MPI_Datatype datatype, int destination, int tag, Request &request)=0
 
virtual void Isend (const DataPack &data, MPI_Datatype datatype, int destination, int tag, Request &request)=0
 
virtual void Isend (int destination, int tag, Request &request)=0
 
virtual void Issend (const void *data, int count, MPI_Datatype datatype, int destination, int tag, Request &request)=0
 
virtual void Issend (const DataPack &data, MPI_Datatype datatype, int destination, int tag, Request &request)=0
 
virtual void Issend (int destination, int tag, Request &request)=0
 
virtual void probe (MPI_Datatype type, int source, int tag, Status &status)=0
 
virtual bool Iprobe (MPI_Datatype type, int source, int tag, Status &status)=0
 
virtual void recv (int source, int tag, Status &status=Status::IGNORE)=0
 
virtual void recv (void *buffer, int count, MPI_Datatype datatype, int source, int tag, Status &status)=0
 
virtual void recv (DataPack &data, MPI_Datatype datatype, int source, int tag, Status &status)=0
 
virtual bool test (Request &request)=0
 
virtual void wait (Request &request)=0
 
virtual void waitAll (std::vector< Request > &requests)=0
 
virtual std::unordered_map< int, DataPackallToAll (std::unordered_map< int, DataPack > export_map, MPI_Datatype datatype)=0
 
virtual std::vector< DataPackgather (DataPack data, MPI_Datatype datatype, int root)=0
 
virtual std::vector< DataPackallGather (DataPack data, MPI_Datatype datatype)=0
 
virtual DataPack bcast (DataPack data, MPI_Datatype datatype, int root)=0
 
virtual void barrier ()=0
 

Additional Inherited Members

- Static Public Attributes inherited from fpmas::api::communication::MpiCommunicator
static MPI_Datatype IGNORE_TYPE = MPI_INT
 
- Protected Attributes inherited from fpmas::communication::MpiCommunicatorBase
int size
 
int rank
 
MPI_Group group
 
MPI_Comm comm
 

Detailed Description

api::communication::MpiCommunicator implementation.

Constructor & Destructor Documentation

◆ MpiCommunicator()

fpmas::communication::MpiCommunicator::MpiCommunicator ( )

Default MpiCommunicator constructor.

Builds an MPI_Group and the associated MPI_Comm as a copy of the MPI_COMM_WORLD communicator.

◆ ~MpiCommunicator()

fpmas::communication::MpiCommunicator::~MpiCommunicator ( )
virtual

MpiCommunicator destructor.

Frees allocated MPI resources.

Reimplemented from fpmas::api::communication::MpiCommunicator.


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