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:

[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_Lock * | lock_
| 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:

- ObjectKey_Table.h
- ObjectKey_Table.cpp