#include <ace/Active_Map_Manager_T.h>
template<class T> class ACE_Active_Map_Manager : public ACE_Map_Manager<ACE_Active_Map_Manager_Key, T, ACE_Null_Mutex> {
public:typedef ACE_Active_Map_Manager_Key key_type;typedef T mapped_type;typedef ACE_Map_Entry<ACE_Active_Map_Manager_Key, T> ENTRY;typedef ACE_Map_Iterator<ACE_Active_Map_Manager_Key, T, ACE_Null_Mutex> ITERATOR; typedef ACE_Map_Reverse_Iterator<ACE_Active_Map_Manager_Key, T, ACE_Null_Mutex> REVERSE_ITERATOR;typedef ENTRY entry;typedef ITERATOR iterator;typedef REVERSE_ITERATOR reverse_iterator;ACE_Active_Map_Manager (ACE_Allocator *alloc = 0);ACE_Active_Map_Manager (size_t size, ACE_Allocator *alloc = 0);~ACE_Active_Map_Manager (void);int open ( size_t length = ACE_DEFAULT_MAP_SIZE, ACE_Allocator *alloc = 0 );int close (void);int bind (const T &value, ACE_Active_Map_Manager_Key &key);int bind (const T &value);int bind (ACE_Active_Map_Manager_Key &key, T *&internal_value);int rebind ( const ACE_Active_Map_Manager_Key &key, const T &value );int rebind ( const ACE_Active_Map_Manager_Key &key, const T &value, T &old_value );int rebind ( const ACE_Active_Map_Manager_Key &key, const T &value, ACE_Active_Map_Manager_Key &old_key, T &old_value );int find (const ACE_Active_Map_Manager_Key &key, T &value);int find (const ACE_Active_Map_Manager_Key &key);int find ( const ACE_Active_Map_Manager_Key &key, T *&internal_value );int unbind (const ACE_Active_Map_Manager_Key &key);int unbind (const ACE_Active_Map_Manager_Key &key, T &value);int unbind ( const ACE_Active_Map_Manager_Key &key, T *&internal_value );size_t current_size (void);size_t total_size (void);static const ACE_Active_Map_Manager_Key npos (void);void dump (void) const;ACE_Map_Iterator<ACE_Active_Map_Manager_Key, T, ACE_Null_Mutex> begin ( void );ACE_Map_Iterator<ACE_Active_Map_Manager_Key, T, ACE_Null_Mutex> end ( void );ACE_Map_Reverse_Iterator<ACE_Active_Map_Manager_Key, T, ACE_Null_Mutex> rbegin ( void );ACE_Map_Reverse_Iterator<ACE_Active_Map_Manager_Key, T, ACE_Null_Mutex> rend ( void );ACE_ALLOC_HOOK_DECLARE;protected:typedef ACE_Map_Manager<ACE_Active_Map_Manager_Key, T, ACE_Null_Mutex> ACE_AMM_BASE;private:inline ACE_UNIMPLEMENTED_FUNC ( void operator= (const ACE_Active_Map_Manager<T> &) );};
typedef ACE_Active_Map_Manager_Key key_type;
typedef T mapped_type;
typedef ACE_Map_Entry<ACE_Active_Map_Manager_Key, T> ENTRY;
typedef ACE_Map_Iterator<ACE_Active_Map_Manager_Key, T, ACE_Null_Mutex> ITERATOR;
typedef ACE_Map_Reverse_Iterator<ACE_Active_Map_Manager_Key, T, ACE_Null_Mutex> REVERSE_ITERATOR;
typedef ENTRY entry;
typedef ITERATOR iterator;
typedef REVERSE_ITERATOR reverse_iterator;
ACE_Active_Map_Manager (ACE_Allocator *alloc = 0);
Active_Map_Manager with the ACE_DEFAULT_MAP_SIZE.
ACE_Active_Map_Manager (size_t size, ACE_Allocator *alloc = 0);
Active_Map_Manager with size entries.
~ACE_Active_Map_Manager (void);
Active_Map_Manager and release dynamically
allocated resources.
int open (
size_t length = ACE_DEFAULT_MAP_SIZE,
ACE_Allocator *alloc = 0
);
Active_Map_Manager with size length.
int close (void);
Active_Map_Manager and release dynamically
allocated resources.
int bind (const T &value, ACE_Active_Map_Manager_Key &key);
value to the map, and the corresponding key produced by the
Active_Map_Manager is returned through key.
int bind (const T &value);
value to the map. The user does not care about the
corresponding key produced by the Active_Map_Manager.
int bind (ACE_Active_Map_Manager_Key &key, T *&internal_value);
value into
*internal_value. This method is useful in reducing the number
of copies required in some cases. Note that internal_value is
only a temporary pointer and will change when the map resizes.
Therefore, the user should use the pointer immediately and not
hold on to it.
int rebind (const ACE_Active_Map_Manager_Key &key, const T &value);
key with value. The function fails if key is
not in the map.
int rebind (
const ACE_Active_Map_Manager_Key &key,
const T &value,
T &old_value
);
key with value, storing the old value into the
"out" parameter old_value. The function fails if key is not
in the map.
int rebind (
const ACE_Active_Map_Manager_Key &key,
const T &value,
ACE_Active_Map_Manager_Key &old_key,
T &old_value
);
key with value, storing the old key and value
into the "out" parameter old_key and old_value. The function
fails if key is not in the map.
int find (const ACE_Active_Map_Manager_Key &key, T &value);
value associated with key.
int find (const ACE_Active_Map_Manager_Key &key);
key in the map?
int find (const ACE_Active_Map_Manager_Key &key, T *&internal_value);
value associated with key. The value is returned via
internal_value and hence a copy is saved. Note that
internal_value is only a temporary pointer and will change when
the map resizes. Therefore, the user should use the pointer
immediately and not hold on to it.
Creates a key. User should place their value into
*internal_value. This method is useful in reducing the number
of copies required in some cases.
int unbind (const ACE_Active_Map_Manager_Key &key);
key from the map.
int unbind (const ACE_Active_Map_Manager_Key &key, T &value);
key from the map, and return the value associated with
key.
int unbind (
const ACE_Active_Map_Manager_Key &key,
T *&internal_value
);
value associated with key. The value is returned via
internal_value and hence a copy is saved. Note that
internal_value is only a temporary pointer and will change when
the map resizes or when this slot is reused. Therefore, the user
should use the pointer immediately and not hold on to it.
size_t current_size (void);
size_t total_size (void);
static const ACE_Active_Map_Manager_Key npos (void);
void dump (void) const;
ACE_Map_Iterator<ACE_Active_Map_Manager_Key, T, ACE_Null_Mutex> begin (
void
);
ACE_Map_Iterator<ACE_Active_Map_Manager_Key, T, ACE_Null_Mutex> end (
void
);
ACE_Map_Reverse_Iterator<ACE_Active_Map_Manager_Key, T, ACE_Null_Mutex> rbegin (
void
);
ACE_Map_Reverse_Iterator<ACE_Active_Map_Manager_Key, T, ACE_Null_Mutex> rend (
void
);
ACE_ALLOC_HOOK_DECLARE;
inline ACE_UNIMPLEMENTED_FUNC (
void operator= (const ACE_Active_Map_Manager<T> &)
);