Main Page | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Class Members | File Members

ACE_RMCast_Copy_On_Write< KEY, ITEM, COLLECTION, ITERATOR > 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< KEY, ITEM, COLLECTION, ITERATOR >:

Inheritance graph
[legend]
Collaboration diagram for ACE_RMCast_Copy_On_Write< KEY, ITEM, COLLECTION, ITERATOR >:

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 Member Functions

 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 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>
class ACE_RMCast_Copy_On_Write< KEY, ITEM, COLLECTION, ITERATOR >

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


Member Typedef Documentation

template<class KEY, class ITEM, class COLLECTION, class ITERATOR>
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< COLLECTION, ITERATOR >.

template<class KEY, class ITEM, class COLLECTION, class ITERATOR>
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<class KEY, class ITEM, class COLLECTION, class ITERATOR>
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<class KEY, class ITEM, class COLLECTION, class ITERATOR>
ACE_RMCast_Copy_On_Write< KEY, ITEM, COLLECTION, ITERATOR >::ACE_RMCast_Copy_On_Write void   ) 
 

Constructor.

template<class KEY, class ITEM, class COLLECTION, class ITERATOR>
ACE_RMCast_Copy_On_Write< KEY, ITEM, COLLECTION, ITERATOR >::~ACE_RMCast_Copy_On_Write void   ) 
 

Destructor.


Member Function Documentation

template<class KEY, class ITEM, class C, class I>
int ACE_RMCast_Copy_On_Write< KEY, ITEM, C, I >::bind KEY const &  key,
ITEM const &  item
 

Add a new element.

template<class KEY, class ITEM, class C, class I>
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<class KEY, class ITEM, class C, class ITERATOR>
int ACE_RMCast_Copy_On_Write< KEY, ITEM, C, ITERATOR >::empty void   ) 
 

Return non-zero if the collection is empty.

template<class KEY, class ITEM, class C, class ITERATOR>
KEY ACE_RMCast_Copy_On_Write< KEY, ITEM, C, ITERATOR >::first_key void   ) 
 

Get the first key.

template<class KEY, class ITEM, class COLLECTION, class ITERATOR>
int ACE_RMCast_Copy_On_Write< KEY, ITEM, COLLECTION, ITERATOR >::for_each ACE_RMCast_Worker< KEY, ITEM > *  worker  ) 
 

Iterate over all the elements invoking worker on each one.

template<class KEY, class ITEM, class C, class I>
int ACE_RMCast_Copy_On_Write< KEY, ITEM, C, I >::unbind KEY const &  key  ) 
 

Remove an element.

template<class KEY, class ITEM, class C, class I>
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 on Fri Dec 31 15:03:10 2004 for ACE_RMCast by  doxygen 1.3.9.1