fpmas 1.6
Public Member Functions | List of all members
fpmas::api::synchro::DataSync< T > Class Template Referenceabstract

#include <sync_mode.h>

Inheritance diagram for fpmas::api::synchro::DataSync< T >:
Inheritance graph
[legend]

Public Member Functions

virtual void synchronize ()=0
 
virtual void synchronize (std::unordered_set< api::graph::DistributedNode< T > * > nodes)=0
 

Detailed Description

template<typename T>
class fpmas::api::synchro::DataSync< T >

Data synchronization API.

The behavior of this component can be very different depending on the implemented synchronization mode. See the corresponding implementations for more details.

Member Function Documentation

◆ synchronize() [1/2]

template<typename T >
virtual void fpmas::api::synchro::DataSync< T >::synchronize ( )
pure virtual

Synchronizes api::graph::DistributedGraph data across the processes, i.e. the internal data of each api::graph::DistributedNode, or the managed data of each Mutex.

Implemented in fpmas::synchro::ghost::GhostDataSync< T >, and fpmas::synchro::hard::HardDataSync< T >.

◆ synchronize() [2/2]

template<typename T >
virtual void fpmas::api::synchro::DataSync< T >::synchronize ( std::unordered_set< api::graph::DistributedNode< T > * >  nodes)
pure virtual

Performs a partial synchronization of the specified node set.

The actual behavior is highly dependent on the currently implemented SyncMode.

The specified nodes list might contain LOCAL and DISTANT nodes: it is the responsibility of the implemented SyncMode to eventually not do anything with LOCAL nodes.

Parameters
nodesnodes to synchronize

Implemented in fpmas::synchro::ghost::GhostDataSync< T >.


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