TAO_CosNotification  2.4.1
Public Types | Public Member Functions | Protected Attributes | List of all members
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]

Public Types

typedef TAO_Notify_Event_Map_Entry_T< PROXY > ENTRY
 

Public Member Functions

 TAO_Notify_Event_Map_T (void)
 Constructor. More...
 
 ~TAO_Notify_Event_Map_T ()
 Destructor. More...
 
void init (void)
 Init. More...
 
void connect (PROXY *proxy)
 Connect a PROXY. More...
 
void disconnect (PROXY *proxy)
 Disconnect a PROXY. More...
 
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. More...
 
ENTRY::COLLECTIONupdates_collection (void)
 Find the update list. This is all the PROXYS connected to this Map. More...
 
void release (ENTRY *entry)
 Release the usage count on this entry. More...
 
const TAO_Notify_EventTypeSeqevent_types (void)
 Access all the event types available. More...
 
int proxy_count (void)
 Access number of proxys connected in all. More...
 

Protected Attributes

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

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_Notify_Event_Map_T< PROXY, ACE_LOCK >::TAO_Notify_Event_Map_T ( void  )

Constructor.

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 >
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 >
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_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 >
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 >
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 >
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: