1#ifndef FPMAS_CLIENT_SERVER_API_H
2#define FPMAS_CLIENT_SERVER_API_H
11namespace fpmas {
namespace synchro {
namespace hard {
namespace api {
55 (this->type == other.
type) &&
56 (this->
id == other.
id) &&
57 (this->source == other.
source);
Definition: distributed_edge.h:91
Definition: distributed_id.h:89
Definition: distributed_node.h:28
virtual void _unlockShared()=0
virtual void _lockShared()=0
Definition: hard_sync_mutex.h:25
Definition: hard_sync_mode.h:24
Definition: client_server.h:294
virtual void unlink(const fpmas::api::graph::DistributedEdge< T > *edge)=0
virtual void removeNode(const fpmas::api::graph::DistributedNode< T > *node)=0
virtual void link(const fpmas::api::graph::DistributedEdge< T > *edge)=0
Definition: client_server.h:379
virtual void lockUnlink(DistributedId edge_id)=0
virtual bool isLockedUnlink(DistributedId edge_id)=0
virtual bool isLockedRemoveNode(DistributedId node_id)=0
virtual void unlockUnlink(DistributedId edge_id)=0
virtual void unlockRemoveNode(DistributedId node_id)=0
virtual void lockRemoveNode(DistributedId node_id)=0
Definition: client_server.h:73
virtual void unlockShared(DistributedId id, int location)=0
virtual T acquire(DistributedId id, int location)=0
virtual void lockShared(DistributedId id, int location)=0
virtual void unlock(DistributedId id, int location)=0
virtual void releaseAcquire(DistributedId id, const T &updated_data, int location)=0
virtual T read(DistributedId id, int location)=0
virtual void releaseRead(DistributedId id, int location)=0
virtual void lock(DistributedId id, int location)=0
Definition: client_server.h:208
virtual void manage(DistributedId id, HardSyncMutex< T > *mutex)=0
virtual void wait(const MutexRequest &request)=0
virtual void remove(DistributedId id)=0
void unlock(HardSyncMutex< T > *mutex)
Definition: client_server.h:228
void unlockShared(HardSyncMutex< T > *mutex)
Definition: client_server.h:234
void lockShared(HardSyncMutex< T > *mutex)
Definition: client_server.h:222
virtual void notify(DistributedId id)=0
void lock(HardSyncMutex< T > *mutex)
Definition: client_server.h:216
Definition: client_server.h:161
virtual void handleIncomingRequests()=0
virtual Epoch getEpoch() const =0
virtual void setEpoch(Epoch epoch)=0
Definition: client_server.h:447
virtual void terminate(Server &server)=0
Epoch
Definition: enums.h:15
MutexRequestType
Definition: enums.h:54
Definition: client_server.h:15
bool operator==(const MutexRequest &other) const
Definition: client_server.h:53
MutexRequestType type
Definition: client_server.h:32
static const int LOCAL
Definition: client_server.h:20
DistributedId id
Definition: client_server.h:24
int source
Definition: client_server.h:28
MutexRequest(DistributedId id, int source, MutexRequestType type)
Definition: client_server.h:41