fpmas 1.6
hard_sync_mode.h
Go to the documentation of this file.
1#ifndef FPMAS_HARD_SYNC_MUTEX_API_H
2#define FPMAS_HARD_SYNC_MUTEX_API_H
3
8#include <queue>
11#include "client_server.h"
12
13namespace fpmas { namespace synchro { namespace hard { namespace api {
23 template<typename T>
24 class HardSyncMutex : public virtual fpmas::api::synchro::Mutex<T> {
25 friend MutexServer<T>;
26 public:
32 virtual void pushRequest(MutexRequest request) = 0;
50 virtual std::queue<MutexRequest> requestsToProcess() = 0;
51
52 virtual ~HardSyncMutex() {}
53 };
54
58 template<typename T>
60 public:
78 };
79}}}}
80#endif
Definition: distributed_node.h:28
Definition: mutex.h:26
Definition: sync_mode.h:79
Definition: hard_sync_mode.h:59
virtual void registerNodeToRemove(fpmas::api::graph::DistributedNode< T > *node)=0
Definition: hard_sync_mode.h:24
virtual void pushRequest(MutexRequest request)=0
virtual std::queue< MutexRequest > requestsToProcess()=0
Definition: client_server.h:208
Definition: fpmas.cpp:3
Definition: client_server.h:15