Several changes in Kruskal alg.
- Input object interface was changed to an STL compatible one.
- template parameters of class KruskalPairVec has been simplified.
- (the most of) the names meet the naming conventions.
- a lot of (but still not enough) documentation has been added.
- class KruskalMapVec has been commented out.
1 #ifndef PAC_MAP_FACTORY_H
2 #define PAC_MAP_FACTORY_H
7 Converter class to use the standard template
8 libary's pair associative containers as a graph map.
13 template <typename G, typename K, typename KIt, template <typename, typename> class PAC>
24 class Map : public MapBase<G, K, KIt> {
30 Map(Graph& g, MapRegistry<G, K, KIt>& r)
31 : MapBase<G, K, KIt>(g, r) {
40 V& operator[](const K& key) {
41 return container.find(key)->second;
44 const V& operator[](const K& key) const {
45 return container.find(key)->second;
48 const V& get(const K& key) const {
49 return container.find(key)->second;
52 void set(const K& key, const V& value) {
53 container.find(key)->second = value;
56 void add(const K& key) {
57 container.insert(key);
60 void erase(const K& key) {
65 typedef PAC<K, V> Container;