The template parameters are the Graph the current Item type and the Value type of the map. #include <lemon/bits/array_map.h>
Public Types | |
typedef _Graph | Graph |
The graph type of the maps. | |
typedef _Item | Item |
The item type of the map. | |
typedef True | ReferenceMapTag |
The reference map tag. | |
typedef _Item | Key |
The key type of the maps. | |
typedef _Value | Value |
The value type of the map. | |
typedef const _Value & | ConstReference |
The const reference type of the map. | |
typedef _Value & | Reference |
The reference type of the map. | |
typedef ItemSetTraits< _Graph, _Item >::ItemNotifier | Notifier |
The notifier type. | |
typedef Notifier::ObserverBase | Parent |
The MapBase of the Map which imlements the core regisitry function. | |
Public Member Functions | |
ArrayMap (const Graph &graph) | |
ArrayMap (const Graph &graph, const Value &value) | |
Constructor to use default value to initialize the map. | |
ArrayMap (const ArrayMap ©) | |
ArrayMap & | operator= (const ArrayMap &cmap) |
Assign operator. | |
template<typename CMap > | |
ArrayMap & | operator= (const CMap &cmap) |
Template assign operator. | |
virtual | ~ArrayMap () |
Value & | operator[] (const Key &key) |
The subscript operator. | |
const Value & | operator[] (const Key &key) const |
The const subscript operator. | |
void | set (const Key &key, const Value &val) |
Setter function of the map. | |
Protected Member Functions | |
virtual void | add (const Key &key) |
Adds a new key to the map. | |
virtual void | add (const std::vector< Key > &keys) |
Adds more new keys to the map. | |
virtual void | erase (const Key &key) |
Erase a key from the map. | |
virtual void | erase (const std::vector< Key > &keys) |
Erase more keys from the map. | |
virtual void | build () |
Buildes the map. | |
virtual void | clear () |
Clear the map. |
It constructs a map and initialize all of the the map.
Constructor to copy a map of the same map type.
virtual ~ArrayMap | ( | ) | [inline, virtual] |
The destructor of the map.
This operator assigns for each item in the map the value mapped to the same item in the copied map. The parameter map should be indiced with the same itemset because this assign operator does not change the container of the map.
ArrayMap& operator= | ( | const CMap & | cmap | ) | [inline] |
The given parameter should be conform to the ReadMap concecpt and could be indiced by the current item set of the NodeMap. In this case the value for each item is assigned by the value of the given ReadMap.
The subscript operator. The map can be subscripted by the actual keys of the graph.
Reimplemented in IterableBoolMap< _Graph, _Item >, and IterableIntMap< _Graph, _Item >.
The const subscript operator. The map can be subscripted by the actual keys of the graph.
Reimplemented in DescriptorMap< _Graph, _Item >, IterableBoolMap< _Graph, _Item >, IterableIntMap< _Graph, _Item >, IterableValueMap< _Graph, _Item, _Value >, and DescriptorMap< Graph, typename Graph::Node >.
Setter function of the map. Equivalent with map[key] = val. This is a compatibility feature with the not dereferable maps.
Reimplemented in IterableValueMap< _Graph, _Item, _Value >.
virtual void add | ( | const Key & | key | ) | [inline, protected, virtual] |
It adds a new key to the map. It called by the observer notifier and it overrides the add() member function of the observer base.
Reimplemented in DescriptorMap< _Graph, _Item >, and DescriptorMap< Graph, typename Graph::Node >.
virtual void add | ( | const std::vector< Key > & | keys | ) | [inline, protected, virtual] |
It adds more new keys to the map. It called by the observer notifier and it overrides the add() member function of the observer base.
Reimplemented in DescriptorMap< _Graph, _Item >, and DescriptorMap< Graph, typename Graph::Node >.
virtual void erase | ( | const Key & | key | ) | [inline, protected, virtual] |
Erase a key from the map. It called by the observer notifier and it overrides the erase() member function of the observer base.
Reimplemented in DescriptorMap< _Graph, _Item >, and DescriptorMap< Graph, typename Graph::Node >.
virtual void erase | ( | const std::vector< Key > & | keys | ) | [inline, protected, virtual] |
Erase more keys from the map. It called by the observer notifier and it overrides the erase() member function of the observer base.
Reimplemented in DescriptorMap< _Graph, _Item >, and DescriptorMap< Graph, typename Graph::Node >.
virtual void build | ( | ) | [inline, protected, virtual] |
It buildes the map. It called by the observer notifier and it overrides the build() member function of the observer base.
Reimplemented in DescriptorMap< _Graph, _Item >, and DescriptorMap< Graph, typename Graph::Node >.
virtual void clear | ( | ) | [inline, protected, virtual] |
It erase all items from the map. It called by the observer notifier and it overrides the clear() member function of the observer base.
Reimplemented in InvertableMap< _Graph, _Item, _Value >, DescriptorMap< _Graph, _Item >, and DescriptorMap< Graph, typename Graph::Node >.