|
virtual | ~ACE_Map (void) |
| Close down and release dynamically allocated resources. More...
|
|
virtual int | open (size_t length=ACE_DEFAULT_MAP_SIZE, ACE_Allocator *alloc=0)=0 |
| Initialize a map with size length. More...
|
|
virtual int | close (void)=0 |
| Close down a <Map> and release dynamically allocated resources. More...
|
|
virtual int | bind (const KEY &key, const VALUE &value)=0 |
|
virtual int | bind_modify_key (const VALUE &value, KEY &key)=0 |
|
virtual int | create_key (KEY &key)=0 |
|
virtual int | bind_create_key (const VALUE &value, KEY &key)=0 |
|
virtual int | bind_create_key (const VALUE &value)=0 |
|
virtual int | recover_key (const KEY &modified_key, KEY &original_key)=0 |
|
virtual int | rebind (const KEY &key, const VALUE &value)=0 |
|
virtual int | rebind (const KEY &key, const VALUE &value, VALUE &old_value)=0 |
|
virtual int | rebind (const KEY &key, const VALUE &value, KEY &old_key, VALUE &old_value)=0 |
|
virtual int | trybind (const KEY &key, VALUE &value)=0 |
|
virtual int | find (const KEY &key, VALUE &value)=0 |
| Locate value associated with key. More...
|
|
virtual int | find (const KEY &key)=0 |
| Is key in the map? More...
|
|
virtual int | unbind (const KEY &key)=0 |
| Remove key from the map. More...
|
|
virtual int | unbind (const KEY &key, VALUE &value)=0 |
|
virtual size_t | current_size (void) const =0 |
| Return the current size of the map. More...
|
|
virtual size_t | total_size (void) const =0 |
| Return the total size of the map. More...
|
|
virtual void | dump (void) const =0 |
| Dump the state of an object. More...
|
|
iterator | begin (void) |
| Return forward iterator. More...
|
|
iterator | end (void) |
|
reverse_iterator | rbegin (void) |
| Return reverse iterator. More...
|
|
reverse_iterator | rend (void) |
|
template<class KEY, class VALUE>
class ACE_Map< KEY, VALUE >
Defines a map interface.
Implementation to be provided by subclasses.
template<class KEY , class VALUE >
virtual int ACE_Map< KEY, VALUE >::bind |
( |
const KEY & |
key, |
|
|
const VALUE & |
value |
|
) |
| |
|
pure virtual |
Add key / value pair to the map. If key is already in the map then no changes are made and 1 is returned. Returns 0 on a successful addition. This function fails for maps that do not allow user specified keys. key is an "in" parameter.
Implemented in ACE_Map_Manager_Adapter< KEY, VALUE, KEY_GENERATOR >, ACE_Hash_Map_Manager_Ex_Adapter< KEY, VALUE, HASH_KEY, COMPARE_KEYS, KEY_GENERATOR >, ACE_Active_Map_Manager_Adapter< KEY, VALUE, KEY_ADAPTER >, and ACE_Map_Impl< KEY, VALUE, IMPLEMENTATION, ITERATOR, REVERSE_ITERATOR, ENTRY >.
template<class KEY , class VALUE >
virtual int ACE_Map< KEY, VALUE >::bind_create_key |
( |
const VALUE & |
value, |
|
|
KEY & |
key |
|
) |
| |
|
pure virtual |
Add value to the map, and the corresponding key produced by the Map is returned through key which is an "out" parameter. For maps that do not naturally produce keys, the map adapters will use the KEY_GENERATOR
class to produce a key. However, the users are responsible for not jeopardizing this key production scheme by using user specified keys with keys produced by the key generator.
Implemented in ACE_Map_Manager_Adapter< KEY, VALUE, KEY_GENERATOR >, ACE_Hash_Map_Manager_Ex_Adapter< KEY, VALUE, HASH_KEY, COMPARE_KEYS, KEY_GENERATOR >, ACE_Active_Map_Manager_Adapter< KEY, VALUE, KEY_ADAPTER >, and ACE_Map_Impl< KEY, VALUE, IMPLEMENTATION, ITERATOR, REVERSE_ITERATOR, ENTRY >.
template<class KEY , class VALUE >
virtual int ACE_Map< KEY, VALUE >::bind_create_key |
( |
const VALUE & |
value | ) |
|
|
pure virtual |
Add value to the map. The user does not care about the corresponding key produced by the Map. For maps that do not naturally produce keys, the map adapters will use the KEY_GENERATOR
class to produce a key. However, the users are responsible for not jeopardizing this key production scheme by using user specified keys with keys produced by the key generator.
Implemented in ACE_Map_Manager_Adapter< KEY, VALUE, KEY_GENERATOR >, ACE_Hash_Map_Manager_Ex_Adapter< KEY, VALUE, HASH_KEY, COMPARE_KEYS, KEY_GENERATOR >, ACE_Active_Map_Manager_Adapter< KEY, VALUE, KEY_ADAPTER >, and ACE_Map_Impl< KEY, VALUE, IMPLEMENTATION, ITERATOR, REVERSE_ITERATOR, ENTRY >.
template<class KEY , class VALUE >
virtual int ACE_Map< KEY, VALUE >::bind_modify_key |
( |
const VALUE & |
value, |
|
|
KEY & |
key |
|
) |
| |
|
pure virtual |
Add key / value pair to the map. key is an "inout" parameter and maybe modified/extended by the map to add additional information. To recover original key, call the <recover_key> method.
Implemented in ACE_Map_Manager_Adapter< KEY, VALUE, KEY_GENERATOR >, ACE_Hash_Map_Manager_Ex_Adapter< KEY, VALUE, HASH_KEY, COMPARE_KEYS, KEY_GENERATOR >, ACE_Active_Map_Manager_Adapter< KEY, VALUE, KEY_ADAPTER >, and ACE_Map_Impl< KEY, VALUE, IMPLEMENTATION, ITERATOR, REVERSE_ITERATOR, ENTRY >.
template<class KEY , class VALUE >
virtual int ACE_Map< KEY, VALUE >::create_key |
( |
KEY & |
key | ) |
|
|
pure virtual |
Produce a key and return it through key which is an "out" parameter. For maps that do not naturally produce keys, the map adapters will use the KEY_GENERATOR
class to produce a key. However, the users are responsible for not jeopardizing this key production scheme by using user specified keys with keys produced by the key generator.
Implemented in ACE_Map_Manager_Adapter< KEY, VALUE, KEY_GENERATOR >, ACE_Hash_Map_Manager_Ex_Adapter< KEY, VALUE, HASH_KEY, COMPARE_KEYS, KEY_GENERATOR >, ACE_Active_Map_Manager_Adapter< KEY, VALUE, KEY_ADAPTER >, and ACE_Map_Impl< KEY, VALUE, IMPLEMENTATION, ITERATOR, REVERSE_ITERATOR, ENTRY >.
template<class KEY , class VALUE >
virtual int ACE_Map< KEY, VALUE >::rebind |
( |
const KEY & |
key, |
|
|
const VALUE & |
value |
|
) |
| |
|
pure virtual |
Reassociate key with value. The function fails if key is not in the map for maps that do not allow user specified keys. However, for maps that allow user specified keys, if the key is not in the map, a new key / value association is created.
Implemented in ACE_Map_Manager_Adapter< KEY, VALUE, KEY_GENERATOR >, ACE_Hash_Map_Manager_Ex_Adapter< KEY, VALUE, HASH_KEY, COMPARE_KEYS, KEY_GENERATOR >, ACE_Active_Map_Manager_Adapter< KEY, VALUE, KEY_ADAPTER >, and ACE_Map_Impl< KEY, VALUE, IMPLEMENTATION, ITERATOR, REVERSE_ITERATOR, ENTRY >.
template<class KEY , class VALUE >
virtual int ACE_Map< KEY, VALUE >::rebind |
( |
const KEY & |
key, |
|
|
const VALUE & |
value, |
|
|
VALUE & |
old_value |
|
) |
| |
|
pure virtual |
Reassociate key with value, storing the old value into the "out" parameter old_value. The function fails if key is not in the map for maps that do not allow user specified keys. However, for maps that allow user specified keys, if the key is not in the map, a new key / value association is created.
Implemented in ACE_Map_Manager_Adapter< KEY, VALUE, KEY_GENERATOR >, ACE_Hash_Map_Manager_Ex_Adapter< KEY, VALUE, HASH_KEY, COMPARE_KEYS, KEY_GENERATOR >, ACE_Active_Map_Manager_Adapter< KEY, VALUE, KEY_ADAPTER >, and ACE_Map_Impl< KEY, VALUE, IMPLEMENTATION, ITERATOR, REVERSE_ITERATOR, ENTRY >.
template<class KEY , class VALUE >
virtual int ACE_Map< KEY, VALUE >::rebind |
( |
const KEY & |
key, |
|
|
const VALUE & |
value, |
|
|
KEY & |
old_key, |
|
|
VALUE & |
old_value |
|
) |
| |
|
pure virtual |
Reassociate key with value, storing the old key and value into the "out" parameters old_key and old_value. The function fails if key is not in the map for maps that do not allow user specified keys. However, for maps that allow user specified keys, if the key is not in the map, a new key / value association is created.
Implemented in ACE_Map_Manager_Adapter< KEY, VALUE, KEY_GENERATOR >, ACE_Hash_Map_Manager_Ex_Adapter< KEY, VALUE, HASH_KEY, COMPARE_KEYS, KEY_GENERATOR >, ACE_Active_Map_Manager_Adapter< KEY, VALUE, KEY_ADAPTER >, and ACE_Map_Impl< KEY, VALUE, IMPLEMENTATION, ITERATOR, REVERSE_ITERATOR, ENTRY >.
template<class KEY , class VALUE >
virtual int ACE_Map< KEY, VALUE >::trybind |
( |
const KEY & |
key, |
|
|
VALUE & |
value |
|
) |
| |
|
pure virtual |
Associate key with value if and only if key is not in the map. If key is already in the map, then the value parameter is overwritten with the existing value in the map. Returns 0 if a new key / value association is created. Returns 1 if an attempt is made to bind an existing entry. This function fails for maps that do not allow user specified keys.
Implemented in ACE_Map_Manager_Adapter< KEY, VALUE, KEY_GENERATOR >, ACE_Hash_Map_Manager_Ex_Adapter< KEY, VALUE, HASH_KEY, COMPARE_KEYS, KEY_GENERATOR >, ACE_Active_Map_Manager_Adapter< KEY, VALUE, KEY_ADAPTER >, and ACE_Map_Impl< KEY, VALUE, IMPLEMENTATION, ITERATOR, REVERSE_ITERATOR, ENTRY >.