GlobalObjects
|
Monitoring class for objects. More...
Public Member Functions | |
ObjectWatch (const ObjID &rObjID) | |
~ObjectWatch () | |
void | deleteAllWatches (Communicator *pCommunicator) |
ObjID & | getObjID () |
bool | hasWatches () const |
void | setWatch (const CommunicatorCallBackIndex &rCommunicatorCallBackIndex, std::stack< ObjID > *pDependObjIdStack, TdWatchNotifyMode tdWatchNotifyMode, EnDeepMode eDeepMode) |
int | unsetWatch (const CommunicatorCallBackIndex &rCommunicatorCallBackIndex, std::stack< ObjID > *&prWNM_ReadDependObjIdStack, std::stack< ObjID > *&prWNM_WriteDependObjIdStack, std::stack< ObjID > *&prWNM_DeleteDependObjIdStack, std::stack< ObjID > *&prWNM_LockDependObjIdStack, std::stack< ObjID > *&prWNM_UnlockDependObjIdStack, TdWatchNotifyMode tdWatchNotifyMode, EnDeepMode eDeepMode, bool bSimulate=false) |
Protected Member Functions | |
ObjectWatch () | |
Private Member Functions | |
void | clearCommunicatorObjNotifyModesMap () |
Private Attributes | |
std::map< CommunicatorCallBackIndex, CommunicatorObjNotifyModes *, std::less< CommunicatorCallBackIndex > > | m_CommunicatorObjNotifyModesMap |
ObjID | m_ObjID |
Monitoring class for objects.
|
protected |
The standard constructor is not available.
glo::WatchNotifyManager::ObjectWatch::ObjectWatch | ( | const ObjID & | rObjID | ) |
Constructor with parameter passing.
[in] | rObjID | The object ID of the object to be monitored. |
glo::WatchNotifyManager::ObjectWatch::~ObjectWatch | ( | ) |
Destructor.
|
private |
Removes all monitoring of the object.
void glo::WatchNotifyManager::ObjectWatch::deleteAllWatches | ( | Communicator * | pCommunicator | ) |
Removes all monitoring of the transferred client communicator.
[in] | pCommunicator | The client communicator. |
ObjID & glo::WatchNotifyManager::ObjectWatch::getObjID | ( | ) |
Returns the object ID of the object to be monitored.
bool glo::WatchNotifyManager::ObjectWatch::hasWatches | ( | ) | const |
Checks if object monitors are set.
void glo::WatchNotifyManager::ObjectWatch::setWatch | ( | const CommunicatorCallBackIndex & | rCommunicatorCallBackIndex, |
std::stack< ObjID > * | pDependObjIdStack, | ||
TdWatchNotifyMode | tdWatchNotifyMode, | ||
EnDeepMode | eDeepMode ) |
Registers a monitoring for its object with possibly dependent objects.
[in] | rCommunicatorCallBackIndex | The client communicator that wants to monitor. |
[in] | pDependObjIdStack | The dependent objects that are 'also monitored' by the calling instance. |
[in] | tdWatchNotifyMode | The activated monitoring mode. |
[in] | eDeepMode | The monitoring depth mode for keeping the individual DependentObjsWithDeepMode objects apart. |
int glo::WatchNotifyManager::ObjectWatch::unsetWatch | ( | const CommunicatorCallBackIndex & | rCommunicatorCallBackIndex, |
std::stack< ObjID > *& | prWNM_ReadDependObjIdStack, | ||
std::stack< ObjID > *& | prWNM_WriteDependObjIdStack, | ||
std::stack< ObjID > *& | prWNM_DeleteDependObjIdStack, | ||
std::stack< ObjID > *& | prWNM_LockDependObjIdStack, | ||
std::stack< ObjID > *& | prWNM_UnlockDependObjIdStack, | ||
TdWatchNotifyMode | tdWatchNotifyMode, | ||
EnDeepMode | eDeepMode, | ||
bool | bSimulate = false ) |
Deregisters a monitoring for its object with any dependent objects.
[in] | rCommunicatorCallBackIndex | The client communicator that has monitored. |
[in,out] | prWNM_ReadDependObjIdStack | The dependent objects that were 'co-monitored' with WNM_READ and must also be 'unregistered' if parameter bSimulate == false. |
[in,out] | prWNM_WriteDependObjIdStack | The dependent objects that were 'also monitored' with WNM_WRITE and must also be 'deregistered' if parameter bSimulate == false. |
[in,out] | prWNM_DeleteDependObjIdStack | The dependent objects that were 'monitored' with WNM_DELETE and must also be 'deregistered' if parameter bSimulate == false. |
[in,out] | prWNM_LockDependObjIdStack | The dependent objects that were 'monitored' with WNM_LOCK and must also be 'unregistered' if parameter bSimulate == false. |
[in,out] | prWNM_UnlockDependObjIdStack | The dependent objects that were 'co-monitored' with WNM_UNLOCK and must also be 'deregistered' if parameter bSimulate == false. |
[in] | tdWatchNotifyMode | The suspended monitoring mode. |
[in] | eDeepMode | The monitoring depth mode for keeping the individual DependentObjsWithDeepMode objects apart. |
[in] | bSimulate | If true, only simulation is performed, no value is set, but a result or error is returned. |
|
private |
The individual CommunicatorObjNotifyModes of the monitored object with the CommunicatorCallBackIndex as index in a map.
|
private |
The object ID of the object to be monitored.