TAO_Notify_Event_Map_T< PROXY, ACE_LOCK > Class Template Reference

Template class for storing the collection of Proxys. More...

#include <Event_Map_T.h>

Collaboration diagram for TAO_Notify_Event_Map_T< PROXY, ACE_LOCK >:

Collaboration graph
[legend]
List of all members.

Public Types

typedef TAO_Notify_Event_Map_Entry_T<
PROXY > 
ENTRY

Public Member Functions

 TAO_Notify_Event_Map_T (void)
 Constuctor.
 ~TAO_Notify_Event_Map_T ()
 Destructor.
void init (void)
 Init.
void connect (PROXY *proxy)
 Connect a PROXY.
void disconnect (PROXY *proxy)
 Disconnect a PROXY.
int insert (PROXY *proxy, const TAO_Notify_EventType &event_type)
int remove (PROXY *proxy, const TAO_Notify_EventType &event_type)
ENTRYfind (const TAO_Notify_EventType &event_type)
ENTRY::COLLECTIONbroadcast_collection (void)
 Find the default broadcast list.
ENTRY::COLLECTIONupdates_collection (void)
 Find the update list. This is all the PROXYS connected to this Map.
void release (ENTRY *entry)
 Release the usage count on this entry.
const TAO_Notify_EventTypeSeqevent_types (void)
 Access all the event types available.
int proxy_count (void)
 Access number of proxys connected in all.

Protected Attributes

ACE_Hash_Map_Manager< TAO_Notify_EventType,
ENTRY *, ACE_SYNCH_NULL_MUTEX
map_
 The Map that stores eventtype to entry mapping.
ACE_LOCK lock_
 The lock to use.
int proxy_count_
 Count of proxys connected.
ENTRY broadcast_entry_
 The default broadcast list for EventType::special.
ENTRY updates_entry_
 Update Entry - Keeps a list of all PROXY's connected to this Map. Updates are send to this list.
TAO_Notify_EventTypeSeq event_types_
 The event types that are available in this map.

Detailed Description

template<class PROXY, class ACE_LOCK>
class TAO_Notify_Event_Map_T< PROXY, ACE_LOCK >

Template class for storing the collection of Proxys.


Member Typedef Documentation

template<class PROXY, class ACE_LOCK>
typedef TAO_Notify_Event_Map_Entry_T<PROXY> TAO_Notify_Event_Map_T< PROXY, ACE_LOCK >::ENTRY


Constructor & Destructor Documentation

template<class PROXY, class ACE_LOCK>
TAO_BEGIN_VERSIONED_NAMESPACE_DECL TAO_Notify_Event_Map_T< PROXY, ACE_LOCK >::TAO_Notify_Event_Map_T ( void   ) 

Constuctor.

template<class PROXY, class ACE_LOCK>
TAO_Notify_Event_Map_T< PROXY, ACE_LOCK >::~TAO_Notify_Event_Map_T (  ) 

Destructor.


Member Function Documentation

template<class PROXY, class ACE_LOCK>
ACE_INLINE TAO_Notify_Event_Map_Entry_T< PROXY >::COLLECTION * TAO_Notify_Event_Map_T< PROXY, ACE_LOCK >::broadcast_collection ( void   ) 

Find the default broadcast list.

template<class PROXY, class ACE_LOCK>
void TAO_Notify_Event_Map_T< PROXY, ACE_LOCK >::connect ( PROXY *  proxy  ) 

Connect a PROXY.

template<class PROXY, class ACE_LOCK>
void TAO_Notify_Event_Map_T< PROXY, ACE_LOCK >::disconnect ( PROXY *  proxy  ) 

Disconnect a PROXY.

template<class PROXY, class ACE_LOCK>
ACE_INLINE const TAO_Notify_EventTypeSeq & TAO_Notify_Event_Map_T< PROXY, ACE_LOCK >::event_types ( void   ) 

Access all the event types available.

template<class PROXY, class ACE_LOCK>
TAO_BEGIN_VERSIONED_NAMESPACE_DECL ACE_INLINE TAO_Notify_Event_Map_Entry_T< PROXY > * TAO_Notify_Event_Map_T< PROXY, ACE_LOCK >::find ( const TAO_Notify_EventType event_type  ) 

Find the collection mapped to the <event_type> The usage_count on the entry returned is incremented.

template<class PROXY, class ACE_LOCK>
void TAO_Notify_Event_Map_T< PROXY, ACE_LOCK >::init ( void   ) 

Init.

template<class PROXY, class ACE_LOCK>
int TAO_Notify_Event_Map_T< PROXY, ACE_LOCK >::insert ( PROXY *  proxy,
const TAO_Notify_EventType event_type 
)

Associate PROXY and event_type. Returns 1 if <event_type> is being seem for the 1st time otherwise returns 0. Returns -1 on error.

template<class PROXY, class ACE_LOCK>
ACE_INLINE int TAO_Notify_Event_Map_T< PROXY, ACE_LOCK >::proxy_count ( void   ) 

Access number of proxys connected in all.

template<class PROXY, class ACE_LOCK>
ACE_INLINE void TAO_Notify_Event_Map_T< PROXY, ACE_LOCK >::release ( ENTRY entry  ) 

Release the usage count on this entry.

template<class PROXY, class ACE_LOCK>
int TAO_Notify_Event_Map_T< PROXY, ACE_LOCK >::remove ( PROXY *  proxy,
const TAO_Notify_EventType event_type 
)

Remove association of PROXY and event_type. Returns 1 if <event_type> is being seem for the last time otherwise returns 0. Returns -1 on error.

Exec a strategy for removing entries. Strategy 1: remove_immediately Strategy 2: remove a bunch_after crossing a threshold Strategy 3: use cached allocator and 1

template<class PROXY, class ACE_LOCK>
ACE_INLINE TAO_Notify_Event_Map_Entry_T< PROXY >::COLLECTION * TAO_Notify_Event_Map_T< PROXY, ACE_LOCK >::updates_collection ( void   ) 

Find the update list. This is all the PROXYS connected to this Map.


Member Data Documentation

template<class PROXY, class ACE_LOCK>
ENTRY TAO_Notify_Event_Map_T< PROXY, ACE_LOCK >::broadcast_entry_ [protected]

The default broadcast list for EventType::special.

template<class PROXY, class ACE_LOCK>
TAO_Notify_EventTypeSeq TAO_Notify_Event_Map_T< PROXY, ACE_LOCK >::event_types_ [protected]

The event types that are available in this map.

template<class PROXY, class ACE_LOCK>
ACE_LOCK TAO_Notify_Event_Map_T< PROXY, ACE_LOCK >::lock_ [protected]

The lock to use.

template<class PROXY, class ACE_LOCK>
ACE_Hash_Map_Manager<TAO_Notify_EventType, ENTRY*, ACE_SYNCH_NULL_MUTEX> TAO_Notify_Event_Map_T< PROXY, ACE_LOCK >::map_ [protected]

The Map that stores eventtype to entry mapping.

template<class PROXY, class ACE_LOCK>
int TAO_Notify_Event_Map_T< PROXY, ACE_LOCK >::proxy_count_ [protected]

Count of proxys connected.

template<class PROXY, class ACE_LOCK>
ENTRY TAO_Notify_Event_Map_T< PROXY, ACE_LOCK >::updates_entry_ [protected]

Update Entry - Keeps a list of all PROXY's connected to this Map. Updates are send to this list.


The documentation for this class was generated from the following files:
Generated on Thu Mar 22 07:53:00 2007 for TAO_CosNotification by  doxygen 1.4.7-1