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:

[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
Collection* | copy
| The collection.
## Private Attributes
ACE_SYNCH_MUTEX& | mutex
| Keep a reference to the mutex.
ACE_SYNCH_CONDITION& | cond
| 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:

- RMCast_Copy_On_Write.h
- RMCast_Copy_On_Write.cpp