PFASST++
pfasst::mpi::MPIStatus Class Reference

#include <mpi_communicator.hpp>

+ Inheritance diagram for pfasst::mpi::MPIStatus:
+ Collaboration diagram for pfasst::mpi::MPIStatus:

Public Member Functions

virtual void set_comm (ICommunicator *comm)
 Set new communicator to use. More...
 
virtual void clear () override
 Resetting status. More...
 
virtual void set_converged (bool converged) override
 sets a new converged state. More...
 
virtual bool get_converged (int rank) override
 Retreive converged state for specific processor. More...
 
virtual void post (int tag) override
 
virtual void send (int tag) override
 
virtual void recv (int tag) override
 
- Public Member Functions inherited from pfasst::IStatus
virtual ~IStatus ()
 
virtual bool previous_is_iterating ()
 Check whether previous processor is still iterating. More...
 
virtual bool keep_iterating ()
 Check whether this processor should keep iterating. More...
 

Protected Attributes

vector< bool > converged
 
MPICommunicatormpi
 
- Protected Attributes inherited from pfasst::IStatus
ICommunicatorcomm
 

Additional Inherited Members

- Static Public Attributes inherited from pfasst::IStatus
static const int NOT_CONVERGED = 0
 
static const int CONVERGED = 1
 

Detailed Description

Definition at line 104 of file mpi_communicator.hpp.

Member Function Documentation

void pfasst::mpi::MPIStatus::clear ( )
overridevirtual

Resetting status.

Note
Logic is implementation defined.

Implements pfasst::IStatus.

Definition at line 81 of file mpi_communicator_impl.hpp.

References converged.

bool pfasst::mpi::MPIStatus::get_converged ( int  rank)
overridevirtual

Retreive converged state for specific processor.

Parameters
[in]rankID of processor to check converged state for
Returns
true if processor with ID rank has converged; false otherwise
Note
Inspection logic is implementation defined.

Implements pfasst::IStatus.

Definition at line 94 of file mpi_communicator_impl.hpp.

References converged.

Referenced by recv().

+ Here is the caller graph for this function:

void pfasst::mpi::MPIStatus::post ( int  tag)
overridevirtual

Implements pfasst::IStatus.

Definition at line 99 of file mpi_communicator_impl.hpp.

References UNUSED.

void pfasst::mpi::MPIStatus::recv ( int  tag)
overridevirtual

Implements pfasst::IStatus.

Definition at line 122 of file mpi_communicator_impl.hpp.

References pfasst::mpi::check_mpi_error(), pfasst::mpi::MPICommunicator::comm, pfasst::IStatus::CONVERGED, converged, get_converged(), ML_CLOG, mpi, MPI_Status_factory(), pfasst::IStatus::NOT_CONVERGED, pfasst::mpi::MPICommunicator::rank(), and pfasst::mpi::MPICommunicator::size().

+ Here is the call graph for this function:

void pfasst::mpi::MPIStatus::send ( int  tag)
overridevirtual

Implements pfasst::IStatus.

Definition at line 105 of file mpi_communicator_impl.hpp.

References pfasst::mpi::check_mpi_error(), pfasst::mpi::MPICommunicator::comm, pfasst::IStatus::CONVERGED, converged, ML_CLOG, mpi, pfasst::IStatus::NOT_CONVERGED, pfasst::mpi::MPICommunicator::rank(), and pfasst::mpi::MPICommunicator::size().

+ Here is the call graph for this function:

void pfasst::mpi::MPIStatus::set_comm ( ICommunicator comm)
virtual

Set new communicator to use.

Todo:
Consider asserting validity of the given pointer to the communicator.

Reimplemented from pfasst::IStatus.

Definition at line 73 of file mpi_communicator_impl.hpp.

References pfasst::IStatus::comm, converged, mpi, and pfasst::ICommunicator::size().

+ Here is the call graph for this function:

void pfasst::mpi::MPIStatus::set_converged ( bool  converged)
overridevirtual

sets a new converged state.

Implements pfasst::IStatus.

Definition at line 86 of file mpi_communicator_impl.hpp.

References pfasst::IStatus::comm, ML_CLOG, and pfasst::ICommunicator::rank().

+ Here is the call graph for this function:

Member Data Documentation

vector<bool> pfasst::mpi::MPIStatus::converged
protected

Definition at line 108 of file mpi_communicator.hpp.

Referenced by clear(), get_converged(), recv(), send(), and set_comm().

MPICommunicator* pfasst::mpi::MPIStatus::mpi
protected

Definition at line 109 of file mpi_communicator.hpp.

Referenced by recv(), send(), and set_comm().


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