#include <ObjectKey_Table.h>
Collaboration diagram for TAO::ObjectKey_Table:
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. |
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.
|
|
|
Default Constructor and destructor..
|
|
|
|
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. |
|
Implementation for bind ().
|
|
Iterates and unbinds the contents of the table.
|
|
Initialize method that sets up the underlying lock and other related stuff. |
|
Unbind an ObjectKey from the table.
|
|
Implementation for unbind ().
|
|
Lock for the table.
|
|
Table that contains the data.
|