Changeset 47:3750b8ebc91e in lemon-main
- Timestamp:
- 01/08/08 02:12:50 (17 years ago)
- Branch:
- default
- Phase:
- public
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
lemon/maps.h
r46 r47 82 82 /// Constant map. 83 83 84 /// This is a readable map which assigns a specified value to each key. 85 /// In other aspects it is equivalent to the \c NullMap. 84 /// This is a \ref concepts::ReadMap "readable" map which assigns a 85 /// specified value to each key. 86 /// In other aspects it is equivalent to \c NullMap. 86 87 template<typename K, typename T> 87 88 class ConstMap : public MapBase<K, T> { … … 134 135 /// Constant map with inlined constant value. 135 136 136 /// This is a readable map which assigns a specified value to each key. 137 /// In other aspects it is equivalent to the \c NullMap. 137 /// This is a \ref concepts::ReadMap "readable" map which assigns a 138 /// specified value to each key. 139 /// In other aspects it is equivalent to \c NullMap. 138 140 template<typename K, typename V, V v> 139 141 class ConstMap<K, Const<V, v> > : public MapBase<K, V> { … … 150 152 }; 151 153 152 ///Returns a \c ConstMap class 154 ///Returns a \c ConstMap class with inlined value 153 155 154 156 ///This function just returns a \c ConstMap class with inlined value. … … 163 165 ///This is essentially a wrapper for \c std::map with addition that 164 166 ///you can specify a default value different from \c Value(). 167 ///It meets the \ref concepts::ReferenceMap "ReferenceMap" concept. 165 168 template <typename K, typename T, typename Compare = std::less<K> > 166 169 class StdMap : public MapBase<K, T> { … … 191 194 /// Constructor with specified default value 192 195 StdMap(const T& value = T()) : _value(value) {} 193 /// \brief Constructs the map from an appropriate std::map, and explicitly194 /// specifies a default value.196 /// \brief Constructs the map from an appropriate \c std::map, and 197 /// explicitly specifies a default value. 195 198 template <typename T1, typename Comp1> 196 199 StdMap(const std::map<Key, T1, Comp1> &map, const T& value = T()) 197 200 : _map(map.begin(), map.end()), _value(value) {} 198 201 199 /// \brief Constructs a map from an other StdMap.202 /// \brief Constructs a map from an other \ref StdMap. 200 203 template<typename T1, typename Comp1> 201 204 StdMap(const StdMap<Key, T1, Comp1> &c) … … 266 269 /// \brief Map for storing values for keys from the range <tt>[0..size-1]</tt> 267 270 /// 268 /// Th e currentmap has the <tt>[0..size-1]</tt> keyset and the values271 /// This map has the <tt>[0..size-1]</tt> keyset and the values 269 272 /// are stored in a \c std::vector<T> container. It can be used with 270 273 /// some data structures, for example \c UnionFind, \c BinHeap, when 271 /// the used items are small integer numbers. 274 /// the used items are small integer numbers. 275 /// This map meets the \ref concepts::ReferenceMap "ReferenceMap" concept. 272 276 /// 273 277 /// \todo Revise its name … … 302 306 IntegerMap(int size = 0, const T& value = T()) : _vector(size, value) {} 303 307 304 /// \brief Constructs the map from an appropriate std::vector.308 /// \brief Constructs the map from an appropriate \c std::vector. 305 309 template <typename T1> 306 310 IntegerMap(const std::vector<T1>& vector) 307 311 : _vector(vector.begin(), vector.end()) {} 308 312 309 /// \brief Constructs a map from an other IntegerMap.313 /// \brief Constructs a map from an other \ref IntegerMap. 310 314 template <typename T1> 311 315 IntegerMap(const IntegerMap<T1> &c) … … 401 405 ConvertMap(const M &_m) : m(_m) {}; 402 406 403 /// \brief The subscript operator. 404 /// 405 /// The subscript operator. 407 ///\e 406 408 Value operator[](const Key& k) const {return m[k];} 407 409 }; … … 491 493 ///given maps. 492 494 ///Its \c Key and \c Value are inherited from \c M1. 493 ///The \c Key and \c Value of M2 must be convertible to those of \c M1.495 ///The \c Key and \c Value of \c M2 must be convertible to those of \c M1. 494 496 template<typename M1, typename M2> 495 497 class AddMap : public MapBase<typename M1::Key, typename M1::Value> { … … 511 513 512 514 ///This function just returns an \c AddMap class. 513 ///\todo How to call these type of functions?515 ///\todo Extend the documentation: how to call these type of functions? 514 516 /// 515 517 ///\relates AddMap … … 1008 1010 ///\c Key and \c Value. 1009 1011 ///In most cases they have to be given explicitly because a 1010 ///functor typically does not provide such typedefs. 1012 ///functor typically does not provide \c argument_type and 1013 ///\c result_type typedefs. 1011 1014 /// 1012 1015 ///Parameter \c F is the type of the used functor. … … 1033 1036 ///This function just returns a \c FunctorMap class. 1034 1037 /// 1035 ///It is specialized for adaptable function classes and 1036 ///C++ functions. 1038 ///This function is specialized for adaptable binary function 1039 ///classes and C++ functions. 1040 /// 1037 1041 ///\relates FunctorMap 1038 1042 template<typename K, typename V, typename F> inline … … 1057 1061 1058 1062 ///This class Converts a map to an STL style (unary) functor. 1059 /// that is it provides an <tt>operator()</tt> to read its values.1063 ///That is it provides an <tt>operator()</tt> to read its values. 1060 1064 /// 1061 1065 ///For the sake of convenience it also works as … … 1092 1096 } 1093 1097 1094 /// Applies all map setting operations to two maps1098 ///Just readable version of \ref ForkWriteMap 1095 1099 1096 1100 ///This map has two \ref concepts::ReadMap "readable map" 1097 1101 ///parameters and each read request will be passed just to the 1098 ///first map. This class is the just readable map type of the\c ForkWriteMap.1102 ///first map. This class is the just readable map type of \c ForkWriteMap. 1099 1103 /// 1100 1104 ///The \c Key and \c Value are inherited from \c M1. 1101 ///The \c Key and \c Value of M2 must be convertible from those of \c M1.1105 ///The \c Key and \c Value of \c M2 must be convertible from those of \c M1. 1102 1106 /// 1103 1107 ///\sa ForkWriteMap … … 1129 1133 /// 1130 1134 ///The \c Key and \c Value are inherited from \c M1. 1131 ///The \c Key and \c Value of M2 must be convertible from those of \c M1.1135 ///The \c Key and \c Value of \c M2 must be convertible from those of \c M1. 1132 1136 /// 1133 1137 ///\sa ForkMap … … 1175 1179 ///This bool \ref concepts::ReadMap "read only map" returns the 1176 1180 ///logical negation of the value returned by the given map. 1177 ///Its \c Key is inherited from \c M, its Value is \c bool.1181 ///Its \c Key is inherited from \c M, its \c Value is \c bool. 1178 1182 /// 1179 1183 ///\sa NotWriteMap … … 1197 1201 ///logical negation of the value returned by the given map. When it is set, 1198 1202 ///the opposite value is set to the original map. 1199 ///Its \c Key is inherited from \c M, its Value is \c bool.1203 ///Its \c Key is inherited from \c M, its \c Value is \c bool. 1200 1204 /// 1201 1205 ///\sa NotMap … … 1263 1267 /// 1264 1268 /// A \ref concepts::ReadWriteMap "read-write" bool map for logging 1265 /// each \c true assigned element, i.e it /copies all the keys set1269 /// each \c true assigned element, i.e it copies all the keys set 1266 1270 /// to \c true to the given iterator. 1267 1271 /// … … 1269 1273 /// for each element. 1270 1274 /// 1271 /// The following example shows how you can write the edges found by the Prim 1272 /// algorithm directly 1273 /// to the standard output. 1275 /// The following example shows how you can write the edges found by 1276 /// the \ref Prim algorithm directly to the standard output. 1274 1277 ///\code 1275 1278 /// typedef IdMap<Graph, Edge> EdgeIdMap;
Note: See TracChangeset
for help on using the changeset viewer.