TAO_CosNotification  2.0.7
Public Types | Public Member Functions | Protected Attributes
TAO_Notify_Event_Map_T Class Reference

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

#include <Event_Map_T.h>

Collaboration diagram for TAO_Notify_Event_Map_T:
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)
 Constructor.
 ~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 for storing the collection of Proxys.


Member Typedef Documentation


Constructor & Destructor Documentation

TAO_Notify_Event_Map_T::TAO_Notify_Event_Map_T ( void  )

Constructor.

TAO_Notify_Event_Map_T::~TAO_Notify_Event_Map_T ( )

Destructor.


Member Function Documentation

TAO_Notify_Event_Map_Entry_T< PROXY >::COLLECTION * TAO_Notify_Event_Map_T::broadcast_collection ( void  )

Find the default broadcast list.

void TAO_Notify_Event_Map_T::connect ( PROXY *  proxy)

Connect a PROXY.

void TAO_Notify_Event_Map_T::disconnect ( PROXY *  proxy)

Disconnect a PROXY.

const TAO_Notify_EventTypeSeq & TAO_Notify_Event_Map_T::event_types ( void  )

Access all the event types available.

TAO_Notify_Event_Map_Entry_T< PROXY > * TAO_Notify_Event_Map_T::find ( const TAO_Notify_EventType event_type)

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

void TAO_Notify_Event_Map_T::init ( void  )

Init.

int TAO_Notify_Event_Map_T::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.

int TAO_Notify_Event_Map_T::proxy_count ( void  )

Access number of proxys connected in all.

void TAO_Notify_Event_Map_T::release ( ENTRY entry)

Release the usage count on this entry.

int TAO_Notify_Event_Map_T::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

TAO_Notify_Event_Map_Entry_T< PROXY >::COLLECTION * TAO_Notify_Event_Map_T::updates_collection ( void  )

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


Member Data Documentation

The default broadcast list for EventType::special.

The event types that are available in this map.

ACE_LOCK TAO_Notify_Event_Map_T::lock_ [protected]

The lock to use.

The Map that stores eventtype to entry mapping.

Count of proxys connected.

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:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines