Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  

ACE_RMCast_Copy_On_Write_Write_Guard Class Template Reference

Implement the write guard for a reference counted collecion. More...

#include <RMCast_Copy_On_Write.h>

Collaboration diagram for ACE_RMCast_Copy_On_Write_Write_Guard:

Collaboration graph
[legend]
List of all members.

Public Types

typedef ACE_RMCast_Copy_On_Write_Collection<
COLLECTION,ITERATOR> 
Collection
typedef ACE_RMCast_Copy_On_Write_Container<
COLLECTION,ITERATOR> 
Container

Public Methods

 ACE_RMCast_Copy_On_Write_Write_Guard (Container &container)
 Constructor.

 ~ACE_RMCast_Copy_On_Write_Write_Guard (void)
 Destructor.


Public Attributes

Collectioncopy
 The collection.


Private Attributes

ACE_SYNCH_MUTEXmutex
 Keep a reference to the mutex.

ACE_SYNCH_CONDITIONcond
 Keep a reference to the condition variable.

int& pending_writes
 Use a reference to update the pending writes count.

int& writing_flag
 Use a reference to update the writing flag.

Collection*& collection
 Use this reference to update the collection once the modifications are finished.


Detailed Description

template<class COLLECTION, class ITERATOR> template class ACE_RMCast_Copy_On_Write_Write_Guard

Implement the write guard for a reference counted collecion.

This helper class atomically increments the reference count of a ACE_RMCast_Copy_On_Write_Collection and reads the current collection in the Copy_On_Write class.


Member Typedef Documentation

template<classCOLLECTION, classITERATOR>
typedef ACE_RMCast_Copy_On_Write_Collection<COLLECTION,ITERATOR> ACE_RMCast_Copy_On_Write_Write_Guard<COLLECTION, ITERATOR>::Collection
 

template<classCOLLECTION, classITERATOR>
typedef ACE_RMCast_Copy_On_Write_Container<COLLECTION,ITERATOR> ACE_RMCast_Copy_On_Write_Write_Guard<COLLECTION, ITERATOR>::Container
 


Constructor & Destructor Documentation

template<classCOLLECTION, classITERATOR>
ACE_RMCast_Copy_On_Write_Write_Guard<COLLECTION, ITERATOR>::ACE_RMCast_Copy_On_Write_Write_Guard<COLLECTION, ITERATOR> ( Container & container )
 

Constructor.

template<classCOLLECTION, classITERATOR>
ACE_RMCast_Copy_On_Write_Write_Guard<COLLECTION, ITERATOR>::~ACE_RMCast_Copy_On_Write_Write_Guard<COLLECTION, ITERATOR> ( void )
 

Destructor.


Member Data Documentation

template<classCOLLECTION, classITERATOR>
Collection *& ACE_RMCast_Copy_On_Write_Write_Guard<COLLECTION, ITERATOR>::collection [private]
 

Use this reference to update the collection once the modifications are finished.

template<classCOLLECTION, classITERATOR>
ACE_SYNCH_CONDITION & ACE_RMCast_Copy_On_Write_Write_Guard<COLLECTION, ITERATOR>::cond [private]
 

Keep a reference to the condition variable.

template<classCOLLECTION, classITERATOR>
Collection * ACE_RMCast_Copy_On_Write_Write_Guard<COLLECTION, ITERATOR>::copy
 

The collection.

template<classCOLLECTION, classITERATOR>
ACE_SYNCH_MUTEX & ACE_RMCast_Copy_On_Write_Write_Guard<COLLECTION, ITERATOR>::mutex [private]
 

Keep a reference to the mutex.

template<classCOLLECTION, classITERATOR>
int & ACE_RMCast_Copy_On_Write_Write_Guard<COLLECTION, ITERATOR>::pending_writes [private]
 

Use a reference to update the pending writes count.

template<classCOLLECTION, classITERATOR>
int & ACE_RMCast_Copy_On_Write_Write_Guard<COLLECTION, ITERATOR>::writing_flag [private]
 

Use a reference to update the writing flag.


The documentation for this class was generated from the following files:
Generated at Fri Oct 5 07:15:57 2001 for ACE_RMCast by doxygen1.2.3 written by Dimitri van Heesch, © 1997-2000