fpmas 1.6
Public Member Functions | List of all members
fpmas::synchro::hard::ServerPack< MutexServer, LinkServer > Class Template Reference

#include <server_pack.h>

Inheritance diagram for fpmas::synchro::hard::ServerPack< MutexServer, LinkServer >:
Inheritance graph
[legend]
Collaboration diagram for fpmas::synchro::hard::ServerPack< MutexServer, LinkServer >:
Collaboration graph
[legend]

Public Member Functions

 ServerPack (fpmas::api::communication::MpiCommunicator &comm, api::TerminationAlgorithm &termination, MutexServer &mutex_server, LinkServer &link_server)
 
MutexServermutexServer () override
 
LinkServer & linkServer () override
 
- Public Member Functions inherited from fpmas::synchro::hard::ServerPackBase
 ServerPackBase (fpmas::api::communication::MpiCommunicator &comm, api::TerminationAlgorithm &termination, api::Server &mutex_server, api::Server &link_server)
 
virtual api::ServermutexServer ()
 
virtual api::ServerlinkServer ()
 
void handleIncomingRequests () override
 
void setEpoch (Epoch epoch) override
 
Epoch getEpoch () const override
 
void terminate ()
 
std::vector< fpmas::api::communication::Request > & pendingRequests ()
 
void waitSendRequest (fpmas::api::communication::Request &req)
 
template<typename T >
void waitResponse (fpmas::api::communication::TypedMpi< T > &mpi, int source, api::Tag tag, fpmas::api::communication::Status &status)
 
void waitVoidResponse (fpmas::api::communication::MpiCommunicator &comm, int source, api::Tag tag, fpmas::api::communication::Status &status)
 
virtual void setEpoch (Epoch epoch)=0
 
virtual Epoch getEpoch () const =0
 
virtual void handleIncomingRequests ()=0
 

Detailed Description

template<typename MutexServer, typename LinkServer>
class fpmas::synchro::hard::ServerPack< MutexServer, LinkServer >

A ServerPackBase extension that enforces MutexServer and LinkServer types.

Constructor & Destructor Documentation

◆ ServerPack()

template<typename MutexServer , typename LinkServer >
fpmas::synchro::hard::ServerPack< MutexServer, LinkServer >::ServerPack ( fpmas::api::communication::MpiCommunicator comm,
api::TerminationAlgorithm termination,
MutexServer mutex_server,
LinkServer &  link_server 
)
inline

ServerPack constructor.

Parameters
commMPI communicator
terminationtermination algorithm used to terminated this server, terminating both mutex_server and link_server at once.
mutex_serverMutex server
link_serverLink server

Member Function Documentation

◆ mutexServer()

template<typename MutexServer , typename LinkServer >
MutexServer & fpmas::synchro::hard::ServerPack< MutexServer, LinkServer >::mutexServer ( )
inlineoverridevirtual

Reference to the internal api::MutexServer instance.

Reimplemented from fpmas::synchro::hard::ServerPackBase.

◆ linkServer()

template<typename MutexServer , typename LinkServer >
LinkServer & fpmas::synchro::hard::ServerPack< MutexServer, LinkServer >::linkServer ( )
inlineoverridevirtual

Reference to the internal api::LinkServer instance.

Reimplemented from fpmas::synchro::hard::ServerPackBase.


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