fesa::FieldSynchroManager Class Reference

Class that manages the synchronization of persistent fields. More...

#include <FieldSynchroManager.h>

List of all members.

Public Member Functions

void registerModifiedField (MultiplexingContext *pContext, DataStore *pDataStore, bool isShared, FieldValueBase *pFieldValue)
void commitModifiedFieldSynchronization (MultiplexingContext *context)
void abortModifiedFieldSynchronization (MultiplexingContext *context)
void commitModifiedFieldSynchronization ()
 Sets toBeSync flag of fields for the slot and multiplexing context that is registered in the map recentlyModifiedFields_. After the setting of the flag the field, slot and multiplexing context combination is deleted from the map.

Static Public Member Functions

static FieldSynchroManagergetInstance ()
 Return single instance of field synchronization manager. Creates instance if it does not exist.

Protected Member Functions

 FieldSynchroManager ()
 Constructor.

Static Protected Attributes

static FieldSynchroManagertheInstance_ = NULL

Private Types

typedef std::pair
< FieldValueBase *, bool > 
PairFieldValueShared
typedef std::set
< PairFieldValueShared
SetPairFieldValueShared
typedef std::map< DataStore
*, SetPairFieldValueShared
MapDataStoreSetOfPairs
typedef std::map< const
MultiplexingContext
*, MapDataStoreSetOfPairs
MapModifiedFields

Private Attributes

MapModifiedFields recentlyModifiedFields_
Mutex mutex_
 mutex used to lock recentlyModifiedFields_ during registering and committing of synchronized fields

Detailed Description

Class that manages the synchronization of persistent fields.

Definition at line 22 of file FieldSynchroManager.h.


Member Typedef Documentation

Definition at line 92 of file FieldSynchroManager.h.

Definition at line 97 of file FieldSynchroManager.h.

Definition at line 83 of file FieldSynchroManager.h.

Definition at line 88 of file FieldSynchroManager.h.


Constructor & Destructor Documentation

fesa::FieldSynchroManager::FieldSynchroManager (  )  [protected]

Constructor.

Definition at line 15 of file FieldSynchroManager.cpp.

Referenced by getInstance().


Member Function Documentation

void fesa::FieldSynchroManager::abortModifiedFieldSynchronization ( MultiplexingContext context  ) 
fesa::FieldSynchroManager::commitModifiedFieldSynchronization (  ) 

Sets toBeSync flag of fields for the slot and multiplexing context that is registered in the map recentlyModifiedFields_. After the setting of the flag the field, slot and multiplexing context combination is deleted from the map.

Sets toBeSync flag of fields, for all the multiplexing contexts, that are registered in the map recentlyModifiedFields_. After the setting of the flag, the field, slot and multiplexing context combination is deleted from the map.

Parameters:
pContext multiplexing context of set method

Definition at line 117 of file FieldSynchroManager.cpp.

References mutex_, and recentlyModifiedFields_.

void fesa::FieldSynchroManager::commitModifiedFieldSynchronization ( MultiplexingContext context  ) 
fesa::FieldSynchroManager::getInstance (  )  [static]
void fesa::FieldSynchroManager::registerModifiedField ( MultiplexingContext pContext,
DataStore pDataStore,
bool  isShared,
FieldValueBase pFieldValue 
)

Definition at line 29 of file FieldSynchroManager.cpp.

References mutex_, and recentlyModifiedFields_.

Referenced by fesa::AbstractField::registerModifiedField().


Member Data Documentation

mutex used to lock recentlyModifiedFields_ during registering and committing of synchronized fields

Definition at line 108 of file FieldSynchroManager.h.

Referenced by abortModifiedFieldSynchronization(), commitModifiedFieldSynchronization(), and registerModifiedField().

Definition at line 77 of file FieldSynchroManager.h.

Referenced by getInstance().


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

Generated on 18 Jan 2013 for Fesa by  doxygen 1.6.1