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

# ACE_RMCast_Copy_On_Write_Container Class Template Reference

Base class for the Copy_On_Write collection, used to simplify the declaration of the Write_Guard. More...

`#include <RMCast_Copy_On_Write.h>`

Inheritance diagram for ACE_RMCast_Copy_On_Write_Container

[legend]
Collaboration diagram for ACE_RMCast_Copy_On_Write_Container:

[legend]
List of all members.

## Public Types
typedef ACE_RMCast_Copy_On_Write_Collection< COLLECTION,ITERATOR> | Collection
| A shorter name for the actual collection type.
## Public Methods
| ACE_RMCast_Copy_On_Write_Container (void)
| Constructor.
## Protected Attributes
int | pending_writes_
| Number of pending writes.
int | writing_
| If non-zero then a thread is changing the collection. More...
ACE_SYNCH_MUTEX | mutex_
| A mutex to serialize access to the collection pointer.
ACE_SYNCH_CONDITION | cond_
| A condition variable to wait to synchronize multiple writers.
Collection* | collection_
| The collection, with reference counting added.
## Friends
class | ACE_RMCast_Copy_On_Write_Write_Guard< COLLECTION,ITERATOR >
class | ACE_RMCast_Copy_On_Write_Read_Guard< COLLECTION,ITERATOR >

## Detailed Description

### template<class COLLECTION, class ITERATOR> template class ACE_RMCast_Copy_On_Write_Container

Base class for the Copy_On_Write collection, used to simplify the declaration of the Write_Guard.

## Member Typedef Documentation

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

| A shorter name for the actual collection type. Reimplemented in ACE_RMCast_Copy_On_Write.

## Constructor & Destructor Documentation

template<classCOLLECTION, classITERATOR>
ACE_RMCast_Copy_On_Write_Container<COLLECTION, ITERATOR>::ACE_RMCast_Copy_On_Write_Container<COLLECTION, ITERATOR> ( | void )

| Constructor.

## Friends And Related Function Documentation

template<classCOLLECTION, classITERATOR>
class ACE_RMCast_Copy_On_Write_Read_Guard`[friend]`

| Let the Read_Guard access the internal fields.

template<classCOLLECTION, classITERATOR>
class ACE_RMCast_Copy_On_Write_Write_Guard`[friend]`

| Let the Write_Guard access the internal fields.

## Member Data Documentation

template<classCOLLECTION, classITERATOR>
Collection * ACE_RMCast_Copy_On_Write_Container<COLLECTION, ITERATOR>::collection_`[protected]`

| The collection, with reference counting added.

template<classCOLLECTION, classITERATOR>
ACE_SYNCH_CONDITION ACE_RMCast_Copy_On_Write_Container<COLLECTION, ITERATOR>::cond_`[protected]`

| A condition variable to wait to synchronize multiple writers.

template<classCOLLECTION, classITERATOR>
ACE_SYNCH_MUTEX ACE_RMCast_Copy_On_Write_Container<COLLECTION, ITERATOR>::mutex_`[protected]`

| A mutex to serialize access to the collection pointer.

template<classCOLLECTION, classITERATOR>
int ACE_RMCast_Copy_On_Write_Container<COLLECTION, ITERATOR>::pending_writes_`[protected]`

| Number of pending writes.

template<classCOLLECTION, classITERATOR>
int ACE_RMCast_Copy_On_Write_Container<COLLECTION, ITERATOR>::writing_`[protected]`

| If non-zero then a thread is changing the collection. Many threads can use the collection simulatenously, but only one change it.

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

- RMCast_Copy_On_Write.h
- RMCast_Copy_On_Write.cpp