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

# TAO_ESF_Copy_On_Read< PROXY, COLLECTION, ITERATOR, ACE_LOCK > Class Template Reference

Implement the Copy_On_Read protocol. More...

`#include <ESF_Copy_On_Read.h>`

Inheritance diagram for TAO_ESF_Copy_On_Read< PROXY, COLLECTION, ITERATOR, ACE_LOCK >:

[legend]
Collaboration diagram for TAO_ESF_Copy_On_Read< PROXY, COLLECTION, ITERATOR, ACE_LOCK >:

[legend]
List of all members.

## Public Methods
| TAO_ESF_Copy_On_Read (void)
| Constructors.
| TAO_ESF_Copy_On_Read (const COLLECTION &collection)
virtual void | for_each (TAO_ESF_Worker< PROXY > *worker ACE_ENV_ARG_DECL)
virtual void | connected (PROXY *proxy ACE_ENV_ARG_DECL)
virtual void | reconnected (PROXY *proxy ACE_ENV_ARG_DECL)
virtual void | disconnected (PROXY *proxy ACE_ENV_ARG_DECL)
| Remove an element from the collection.
virtual void | shutdown (ACE_ENV_SINGLE_ARG_DECL)
| The EC is shutting down, must release all the elements.
## Private Attributes
COLLECTION | collection_
ACE_LOCK | lock_

## Detailed Description

### template<class PROXY, class COLLECTION, class ITERATOR, class ACE_LOCK>
class TAO_ESF_Copy_On_Read< PROXY, COLLECTION, ITERATOR, ACE_LOCK >

Implement the Copy_On_Read protocol.

The class is parametric on the kind of collection and locking mechanism used.

## Constructor & Destructor Documentation

template<class PROXY, class COLLECTION, class ITERATOR, class ACE_LOCK>
TAO_ESF_Copy_On_Read< PROXY, COLLECTION, ITERATOR, ACE_LOCK >::TAO_ESF_Copy_On_Read | ( | void |  | ) |

| Constructors.

template<class PROXY, class COLLECTION, class ITERATOR, class ACE_LOCK>
TAO_ESF_Copy_On_Read< PROXY, COLLECTION, ITERATOR, ACE_LOCK >::TAO_ESF_Copy_On_Read | ( | const COLLECTION & | collection | ) |

## Member Function Documentation

template<class PROXY, class COLLECTION, class ITERATOR, class ACE_LOCK>
void TAO_ESF_Copy_On_Read< PROXY, COLLECTION, ITERATOR, ACE_LOCK >::connected | ( | PROXY *proxy | ACE_ENV_ARG_DECL | ) | `[virtual]`

| Insert a new element into the collection. The collection assumes ownership of the element. Implements TAO_ESF_Proxy_Collection< PROXY >.

template<class PROXY, class COLLECTION, class ITERATOR, class ACE_LOCK>
void TAO_ESF_Copy_On_Read< PROXY, COLLECTION, ITERATOR, ACE_LOCK >::disconnected | ( | PROXY *proxy | ACE_ENV_ARG_DECL | ) | `[virtual]`

| Remove an element from the collection. Implements TAO_ESF_Proxy_Collection< PROXY >.

template<class PROXY, class COLLECTION, class ITERATOR, class ACE_LOCK>
void TAO_ESF_Copy_On_Read< PROXY, COLLECTION, ITERATOR, ACE_LOCK >::for_each | ( | TAO_ESF_Worker< PROXY > *worker | ACE_ENV_ARG_DECL | ) | `[virtual]`

| Iterate over the collection and invoke worker->work() for each member of the collection. This encapsulates Implements TAO_ESF_Proxy_Collection< PROXY >.

template<class PROXY, class COLLECTION, class ITERATOR, class ACE_LOCK>
void TAO_ESF_Copy_On_Read< PROXY, COLLECTION, ITERATOR, ACE_LOCK >::reconnected | ( | PROXY *proxy | ACE_ENV_ARG_DECL | ) | `[virtual]`

| Insert an element into the collection. No errors can be raised if the element is already present. The collection assumes ownership, i.e. must invoke <proxy->_decr_refcnt()> if the element is already present in the collection. Implements TAO_ESF_Proxy_Collection< PROXY >.

template<class PROXY, class COLLECTION, class ITERATOR, class ACE_LOCK>
void TAO_ESF_Copy_On_Read< PROXY, COLLECTION, ITERATOR, ACE_LOCK >::shutdown | ( | ACE_ENV_SINGLE_ARG_DECL |  | ) | `[virtual]`

| The EC is shutting down, must release all the elements. Implements TAO_ESF_Proxy_Collection< PROXY >.

## Member Data Documentation

template<class PROXY, class COLLECTION, class ITERATOR, class ACE_LOCK>
COLLECTION TAO_ESF_Copy_On_Read< PROXY, COLLECTION, ITERATOR, ACE_LOCK >::collection_`[private]`

template<class PROXY, class COLLECTION, class ITERATOR, class ACE_LOCK>
ACE_LOCK TAO_ESF_Copy_On_Read< PROXY, COLLECTION, ITERATOR, ACE_LOCK >::lock_`[private]`

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

- ESF_Copy_On_Read.h
- ESF_Copy_On_Read.cpp