# ACE_ODB Class Reference

This is the object database (ODB) that keeps track of all live ACE objects. More...

`#include <Dump.h>`

Collaboration diagram for ACE_ODB:

[legend]
List of all members.

## Public Types

enum | { MAX_TABLE_SIZE = 100000 }

## Public Member Functions

void | dump_objects (void)
void | register_object (const ACE_Dumpable *dumper)
| Add the tuple <dumper, this_> to the list of registered ACE objects.
void | remove_object (const void *this_)

## Static Public Member Functions

ACE_ODB * | instance (void)
| Interface to the Singleton instance of the object database.

## Private Member Functions

| ACE_ODB (void)

## Private Attributes

Tuple | object_table_ [ACE_ODB::MAX_TABLE_SIZE]
int | current_size_
| Current size of <object_table_>.

## Static Private Attributes

ACE_ODB * | instance_ = 0
| Singleton instance of this class.

## Detailed Description

This is the object database (ODB) that keeps track of all live ACE objects.

## Member Enumeration Documentation

anonymous enum

Todo:
  This is clearly inadequate and should be dynamic...

Enumeration values:

  MAX_TABLE_SIZE |

## Constructor & Destructor Documentation

ACE_ODB::ACE_ODB | ( | void |  | ) | `[private]`

## Member Function Documentation

void ACE_ODB::dump_objects | ( | void |  | ) |

| Iterates through the entire set of registered objects and dumps their state.

ACE_ODB * ACE_ODB::instance | ( | void |  | ) | `[static]`

| Interface to the Singleton instance of the object database.

void ACE_ODB::register_object | ( | const ACE_Dumpable * | dumper | ) |

| Add the tuple <dumper, this_> to the list of registered ACE objects.

void ACE_ODB::remove_object | ( | const void * | this_ | ) |

| Use <this_> to locate and remove the associated <dumper> from the list of registered ACE objects.

## Member Data Documentation

int ACE_ODB::current_size_`[private]`

| Current size of <object_table_>.

ACE_ODB * ACE_ODB::instance_ = 0`[static, private]`

| Singleton instance of this class.

Tuple ACE_ODB::object_table_[ACE_ODB::MAX_TABLE_SIZE]`[private]`

| The current implementation is very simple-minded and will be changed to be dynamic.

The documentation for this class was generated from the following files:

- Dump.h
- Dump.cpp