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

ACE_RMCast_Copy_On_Write Class Template Reference

Implement a copy on write wrapper for a map-like collection. More...

#include <RMCast_Copy_On_Write.h>

Inheritance diagram for ACE_RMCast_Copy_On_Write

Inheritance graph
[legend]
Collaboration diagram for ACE_RMCast_Copy_On_Write:

Collaboration graph
[legend]
List of all members.

Public Types

typedef ACE_RMCast_Copy_On_Write_Read_Guard<
COLLECTION,ITERATOR> 
Read_Guard
 The Read_Guard trait.

typedef ACE_RMCast_Copy_On_Write_Write_Guard<
COLLECTION,ITERATOR> 
Write_Guard
 The Write_Guard trait.

typedef ACE_RMCast_Copy_On_Write_Collection<
COLLECTION,ITERATOR> 
Collection
 The underlying collection type.


Public Methods

 ACE_RMCast_Copy_On_Write (void)
 Constructor.

 ~ACE_RMCast_Copy_On_Write (void)
 Destructor.

int for_each (ACE_RMCast_Worker<KEY,ITEM> *worker)
 Iterate over all the elements invoking
Parameters:
worker   on each one.


KEY first_key (void)
 Get the first key.

int empty (void)
 Return non-zero if the collection is empty.

int bind (KEY const & key, ITEM const & item)
 Add a new element.

int unbind (KEY const & key)
 Remove an element.

int bind_i (Write_Guard &guard, KEY const & key, ITEM const & item)
 Bind assuming the Write_Guard is held.

int unbind_i (Write_Guard &guard, KEY const & key)
 Unbind assuming the Write_Guard is held.


Detailed Description

template<class KEY, class ITEM, class COLLECTION, class ITERATOR> template class ACE_RMCast_Copy_On_Write

Implement a copy on write wrapper for a map-like collection.


Member Typedef Documentation

template<classKEY, classITEM, classCOLLECTION, classITERATOR>
typedef ACE_RMCast_Copy_On_Write_Collection<COLLECTION,ITERATOR> ACE_RMCast_Copy_On_Write<KEY, ITEM, COLLECTION, ITERATOR>::Collection
 

The underlying collection type.

Reimplemented from ACE_RMCast_Copy_On_Write_Container.

template<classKEY, classITEM, classCOLLECTION, classITERATOR>
typedef ACE_RMCast_Copy_On_Write_Read_Guard<COLLECTION,ITERATOR> ACE_RMCast_Copy_On_Write<KEY, ITEM, COLLECTION, ITERATOR>::Read_Guard
 

The Read_Guard trait.

template<classKEY, classITEM, classCOLLECTION, classITERATOR>
typedef ACE_RMCast_Copy_On_Write_Write_Guard<COLLECTION,ITERATOR> ACE_RMCast_Copy_On_Write<KEY, ITEM, COLLECTION, ITERATOR>::Write_Guard
 

The Write_Guard trait.


Constructor & Destructor Documentation

template<classKEY, classITEM, classCOLLECTION, classITERATOR>
ACE_RMCast_Copy_On_Write<KEY, ITEM, COLLECTION, ITERATOR>::ACE_RMCast_Copy_On_Write<KEY, ITEM, COLLECTION, ITERATOR> ( void )
 

Constructor.

template<classKEY, classITEM, classCOLLECTION, classITERATOR>
ACE_RMCast_Copy_On_Write<KEY, ITEM, COLLECTION, ITERATOR>::~ACE_RMCast_Copy_On_Write<KEY, ITEM, COLLECTION, ITERATOR> ( void )
 

Destructor.


Member Function Documentation

template<classKEY, classITEM, classC, classI>
int ACE_RMCast_Copy_On_Write<KEY, ITEM, C, I>::bind ( KEY const & key,
ITEM const & item )
 

Add a new element.

template<classKEY, classITEM, classC, classI>
int ACE_RMCast_Copy_On_Write<KEY, ITEM, C, I>::bind_i ( Write_Guard & guard,
KEY const & key,
ITEM const & item )
 

Bind assuming the Write_Guard is held.

template<classKEY, classITEM, classC, classITERATOR>
int ACE_RMCast_Copy_On_Write<KEY, ITEM, C, ITERATOR>::empty ( void )
 

Return non-zero if the collection is empty.

template<classKEY, classITEM, classC, classITERATOR>
KEY ACE_RMCast_Copy_On_Write<KEY, ITEM, C, ITERATOR>::first_key ( void )
 

Get the first key.

template<classKEY, classITEM, classCOLLECTION, classITERATOR>
int ACE_RMCast_Copy_On_Write<KEY, ITEM, COLLECTION, ITERATOR>::for_each ( ACE_RMCast_Worker< KEY,ITEM >* worker )
 

Iterate over all the elements invoking

Parameters:
worker   on each one.

template<classKEY, classITEM, classC, classI>
int ACE_RMCast_Copy_On_Write<KEY, ITEM, C, I>::unbind ( KEY const & key )
 

Remove an element.

template<classKEY, classITEM, classC, classI>
int ACE_RMCast_Copy_On_Write<KEY, ITEM, C, I>::unbind_i ( Write_Guard & guard,
KEY const & key )
 

Unbind assuming the Write_Guard is held.


The documentation for this class was generated from the following files:
Generated at Sat Dec 1 11:17:53 2001 for ACE_RMCast by doxygen1.2.3 written by Dimitri van Heesch, © 1997-2000