ACE  6.1.0
Classes | Defines | Typedefs
Configuration.h File Reference
#include "ace/SStringfwd.h"
#include "ace/Hash_Map_With_Allocator_T.h"
#include "ace/Malloc_T.h"
#include "ace/MMAP_Memory_Pool.h"
#include "ace/Local_Memory_Pool.h"
#include "ace/Synch_Traits.h"
#include "ace/Configuration.inl"

Classes

class  ACE_Section_Key_Internal
 A base class for internal handles to section keys for configuration implementations. More...
class  ACE_Configuration_Section_Key
 Reference counted wrapper for ACE_Section_Key_Internal. More...
class  ACE_Configuration
 Base class for configuration databases. More...
class  ACE_Section_Key_Win32
 The Win32 registry implementation of an internal section key. More...
class  ACE_Configuration_Win32Registry
 The win32 registry implementation of a configuration database. More...
class  ACE_Configuration_ExtId
 External ID for the section and value hash. More...
class  ACE_Configuration_Value_IntId
 The section hash table internal value class. More...
class  ACE_Configuration_Section_IntId
 The internal ID for a section hash table. More...
class  ACE_Configuration_Section_Key_Heap
 Internal section key class for heap based configuration database. More...
class  ACE_Configuration_Heap
 The concrete implementation of a allocator based configuration database. More...

Defines

#define ACE_CONFIG_SECTION_INDEX   "Config_Section_Index"
#define ACE_DEFAULT_CONFIG_SECTION_SIZE   16

Typedefs

typedef ACE_Allocator_Adapter
< ACE_Malloc
< ACE_MMAP_MEMORY_POOL,
ACE_SYNCH_MUTEX > > 
PERSISTENT_ALLOCATOR
typedef ACE_Allocator_Adapter
< ACE_Malloc
< ACE_LOCAL_MEMORY_POOL,
ACE_SYNCH_MUTEX > > 
HEAP_ALLOCATOR
typedef
ACE_Hash_Map_With_Allocator
< ACE_Configuration_ExtId, int > 
SUBSECTION_MAP
typedef
ACE_Hash_Map_Manager_Ex
< ACE_Configuration_ExtId, int,
ACE_Hash
< ACE_Configuration_ExtId >
, ACE_Equal_To
< ACE_Configuration_ExtId >
, ACE_Null_Mutex
SUBSECTION_HASH
typedef
ACE_Hash_Map_With_Allocator
< ACE_Configuration_ExtId,
ACE_Configuration_Value_IntId
VALUE_MAP
typedef
ACE_Hash_Map_Manager_Ex
< ACE_Configuration_ExtId,
ACE_Configuration_Value_IntId,
ACE_Hash
< ACE_Configuration_ExtId >
, ACE_Equal_To
< ACE_Configuration_ExtId >
, ACE_Null_Mutex
VALUE_HASH
typedef VALUE_HASH::ENTRY VALUE_ENTRY
typedef
ACE_Hash_Map_With_Allocator
< ACE_Configuration_ExtId,
ACE_Configuration_Section_IntId
SECTION_MAP
typedef
ACE_Hash_Map_Manager_Ex
< ACE_Configuration_ExtId,
ACE_Configuration_Section_IntId,
ACE_Hash
< ACE_Configuration_ExtId >
, ACE_Equal_To
< ACE_Configuration_ExtId >
, ACE_Null_Mutex
SECTION_HASH
typedef SECTION_HASH::ENTRY SECTION_ENTRY

Detailed Description

Id:
Configuration.h 91688 2010-09-09 11:21:50Z johnnyw
Author:
Chris Hafey <chafey@stentor.com>

The ACE configuration API provides a portable abstraction for program configuration similar to the Microsoft Windows registry. The API supports a tree based hierarchy of configuration sections. Each section contains other sections or values. Values may contain string, unsigned integer and binary data.

Note:
These classes are not thread safe, if multiple threads use these classes, you are responsible for serializing access.

For examples of using this class, see:

  1. The test code in ACE_wrappers/test
  2. wxConfigViewer, a Windows like Registry Editor for ACE_Configuration
  3. TAO's IFR, it makes extensive use of ACE_Configuration
Todo:
Templatize this class with an ACE_LOCK to provide thread safety

Define Documentation

#define ACE_CONFIG_SECTION_INDEX   "Config_Section_Index"
#define ACE_DEFAULT_CONFIG_SECTION_SIZE   16

Typedef Documentation

typedef ACE_Allocator_Adapter<ACE_Malloc <ACE_LOCAL_MEMORY_POOL, ACE_SYNCH_MUTEX> > HEAP_ALLOCATOR
typedef ACE_Allocator_Adapter<ACE_Malloc <ACE_MMAP_MEMORY_POOL, ACE_SYNCH_MUTEX> > PERSISTENT_ALLOCATOR
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines