ACE 8.0.0
Loading...
Searching...
No Matches
Classes | Public Types | Public Member Functions | Static Public Member Functions | Public Attributes | Private Member Functions | Private Attributes | Static Private Attributes | List of all members
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:
Collaboration graph
[legend]

Classes

struct  Tuple
 

Public Types

enum  { MAX_TABLE_SIZE = 100000 }
 

Public Member Functions

void dump_objects ()
 
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

static ACE_ODBinstance ()
 Interface to the Singleton instance of the object database.
 

Public Attributes

 ACE_ALLOC_HOOK_DECLARE
 

Private Member Functions

 ACE_ODB ()
 

Private Attributes

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

Static Private Attributes

static ACE_ODBinstance_ = 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...
Enumerator
MAX_TABLE_SIZE 

Constructor & Destructor Documentation

◆ ACE_ODB()

ACE_ODB::ACE_ODB ( )
private

Member Function Documentation

◆ dump_objects()

void ACE_ODB::dump_objects ( )

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

◆ instance()

ACE_ODB * ACE_ODB::instance ( )
static

Interface to the Singleton instance of the object database.

◆ register_object()

void ACE_ODB::register_object ( const ACE_Dumpable * dumper)

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

◆ remove_object()

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

◆ ACE_ALLOC_HOOK_DECLARE

ACE_ODB::ACE_ALLOC_HOOK_DECLARE

◆ current_size_

int ACE_ODB::current_size_
private

Current size of <object_table_>.

◆ instance_

ACE_ODB * ACE_ODB::instance_ = 0
staticprivate

Singleton instance of this class.

◆ object_table_

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: