ACE  6.0.8
Public Member Functions
ACE_Name_Space_Map< ALLOCATOR > Class Template Reference

This class serves as a Proxy that ensures our process always has the appropriate allocator in place for every operation that accesses or updates the Map Manager. More...

#include <Local_Name_Space_T.h>

Inheritance diagram for ACE_Name_Space_Map< ALLOCATOR >:
Inheritance graph
[legend]
Collaboration diagram for ACE_Name_Space_Map< ALLOCATOR >:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 ACE_Name_Space_Map (ALLOCATOR *alloc)
 Constructor.
int bind (const ACE_NS_String &, const ACE_NS_Internal &, ALLOCATOR *alloc)
int unbind (const ACE_NS_String &, ACE_NS_Internal &, ALLOCATOR *alloc)
int rebind (const ACE_NS_String &, const ACE_NS_Internal &, ACE_NS_String &, ACE_NS_Internal &, ALLOCATOR *alloc)
int find (const ACE_NS_String &, ACE_NS_Internal &, ALLOCATOR *alloc)
int close (ALLOCATOR *alloc)

Detailed Description

template<class ALLOCATOR>
class ACE_Name_Space_Map< ALLOCATOR >

This class serves as a Proxy that ensures our process always has the appropriate allocator in place for every operation that accesses or updates the Map Manager.

We need this class because otherwise the ALLOCATOR pointer will be stored in the Map_Manager that resides within shared memory. Naturally, this will cause horrible problems since only the first process to set that pointer will be guaranteed the address of the ALLOCATOR is meaningful!


Constructor & Destructor Documentation

template<class ALLOCATOR >
ACE_Name_Space_Map< ALLOCATOR >::ACE_Name_Space_Map ( ALLOCATOR *  alloc)

Constructor.


Member Function Documentation

template<class ALLOCATOR >
int ACE_Name_Space_Map< ALLOCATOR >::bind ( const ACE_NS_String ext_id,
const ACE_NS_Internal int_id,
ALLOCATOR *  alloc 
)
template<class ALLOCATOR >
int ACE_Name_Space_Map< ALLOCATOR >::close ( ALLOCATOR *  alloc)
template<class ALLOCATOR >
int ACE_Name_Space_Map< ALLOCATOR >::find ( const ACE_NS_String ext_id,
ACE_NS_Internal int_id,
ALLOCATOR *  alloc 
)
template<class ALLOCATOR >
int ACE_Name_Space_Map< ALLOCATOR >::rebind ( const ACE_NS_String ext_id,
const ACE_NS_Internal int_id,
ACE_NS_String old_ext_id,
ACE_NS_Internal old_int_id,
ALLOCATOR *  alloc 
)
template<class ALLOCATOR >
int ACE_Name_Space_Map< ALLOCATOR >::unbind ( const ACE_NS_String ext_id,
ACE_NS_Internal int_id,
ALLOCATOR *  alloc 
)

The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines