Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages  

TAO::ObjectKey_Table Class Reference

: Compares the length and then the contents of ObjectKeys. More...

#include <ObjectKey_Table.h>

Collaboration diagram for TAO::ObjectKey_Table:

Collaboration graph
[legend]
List of all members.

Public Methods

 ObjectKey_Table (void)
 Default Constructor and destructor..

 ~ObjectKey_Table (void)
int init (TAO_ORB_Core *orb)
int destroy (void)
 Iterates and unbinds the contents of the table.

int bind (const ObjectKey &key, Refcounted_ObjectKey *&key_new)
 Bind the ObjectKey in the table.

int unbind (TAO::Refcounted_ObjectKey *&key)
 Unbind an ObjectKey from the table.


Protected Methods

int bind_i (const ObjectKey &key, Refcounted_ObjectKey *&key_new)
 Implementation for bind ().

int unbind_i (Refcounted_ObjectKey *&key)
 Implementation for unbind ().


Private Types

typedef ACE_RB_Tree< TAO::ObjectKey,
TAO::Refcounted_ObjectKey *,
TAO::Less_Than_ObjectKey,
ACE_Null_Mutex
TABLE

Private Attributes

ACE_Locklock_
 Lock for the table.

TABLE table_
 Table that contains the data.


Detailed Description

: Compares the length and then the contents of ObjectKeys.

Should have been a specialization of the functor ACE_Less_Than<sequence<CORBA::Octet>>. But that will not work so easily across bunch of stuff. Hence let us put up with this for the time being.


Member Typedef Documentation

typedef ACE_RB_Tree<TAO::ObjectKey, TAO::Refcounted_ObjectKey *, TAO::Less_Than_ObjectKey, ACE_Null_Mutex> TAO::ObjectKey_Table::TABLE [private]
 


Constructor & Destructor Documentation

TAO::ObjectKey_Table::ObjectKey_Table void   
 

Default Constructor and destructor..

TAO::ObjectKey_Table::~ObjectKey_Table void   
 


Member Function Documentation

int TAO::ObjectKey_Table::bind const ObjectKey   key,
Refcounted_ObjectKey *&    key_new
 

Bind the ObjectKey in the table.

Bind an ObjectKey in the table and return a pointer to the Refcounted_ObjectKey which the client can use. If the ObjectKey is already available in the table, this operation just increments the refcount on the ObjectKey. If the ObjectKey is new it is bounded to the table. Returns a 0 on success and a -1 on failure.

int TAO::ObjectKey_Table::bind_i const ObjectKey   key,
Refcounted_ObjectKey *&    key_new
[protected]
 

Implementation for bind ().

int TAO::ObjectKey_Table::destroy void   
 

Iterates and unbinds the contents of the table.

int TAO::ObjectKey_Table::init TAO_ORB_Core   orb
 

Initialize method that sets up the underlying lock and other related stuff.

int TAO::ObjectKey_Table::unbind TAO::Refcounted_ObjectKey *&    key
 

Unbind an ObjectKey from the table.

int TAO::ObjectKey_Table::unbind_i Refcounted_ObjectKey *&    key [protected]
 

Implementation for unbind ().


Member Data Documentation

ACE_Lock* TAO::ObjectKey_Table::lock_ [private]
 

Lock for the table.

TABLE TAO::ObjectKey_Table::table_ [private]
 

Table that contains the data.


The documentation for this class was generated from the following files:
Generated on Fri Apr 2 17:46:14 2004 for TAO by doxygen1.2.18