maps.h File Reference


Detailed Description

#include <iterator>
#include <functional>
#include <vector>
#include <map>
#include <lemon/core.h>


Classes

class  MapBase< K, V >
 Base class of maps. More...
class  NullMap< K, V >
 Null map. (a.k.a. DoNothingMap). More...
class  ConstMap< K, V >
 Constant map. More...
class  ConstMap< K, Const< V, v > >
 Constant map with inlined constant value. More...
class  IdentityMap< T >
 Identity map. More...
class  RangeMap< V >
 Map for storing values for integer keys from the range [0..size-1]. More...
class  SparseMap< K, V, Comp >
 Map type based on std::map. More...
class  ComposeMap< M1, M2 >
 Composition of two maps. More...
class  CombineMap< M1, M2, F, V >
 Combination of two maps using an STL (binary) functor. More...
class  FunctorToMap< F, K, V >
 Converts an STL style (unary) functor to a map. More...
class  MapToFunctor< M >
 Converts a map to an STL style (unary) functor. More...
class  ConvertMap< M, V >
 Map adaptor to convert the Value type of a map to another type using the default conversion. More...
class  ForkMap< M1, M2 >
 Applies all map setting operations to two maps. More...
class  AddMap< M1, M2 >
 Sum of two maps. More...
class  SubMap< M1, M2 >
 Difference of two maps. More...
class  MulMap< M1, M2 >
 Product of two maps. More...
class  DivMap< M1, M2 >
 Quotient of two maps. More...
class  ShiftMap< M, C >
 Shifts a map with a constant. More...
class  ShiftWriteMap< M, C >
 Shifts a map with a constant (read-write version). More...
class  ScaleMap< M, C >
 Scales a map with a constant. More...
class  ScaleWriteMap< M, C >
 Scales a map with a constant (read-write version). More...
class  NegMap< M >
 Negative of a map. More...
class  NegWriteMap< M >
 Negative of a map (read-write version). More...
class  AbsMap< M >
 Absolute value of a map. More...
class  TrueMap< K >
 Constant true map. More...
class  FalseMap< K >
 Constant false map. More...
class  AndMap< M1, M2 >
 Logical 'and' of two maps. More...
class  OrMap< M1, M2 >
 Logical 'or' of two maps. More...
class  NotMap< M >
 Logical 'not' of a map. More...
class  NotWriteMap< M >
 Logical 'not' of a map (read-write version). More...
class  EqualMap< M1, M2 >
 Combination of two maps using the == operator. More...
class  LessMap< M1, M2 >
 Combination of two maps using the < operator. More...
class  LoggerBoolMap< IT, KEY >
 Writable bool map for logging each true assigned element. More...
class  IdMap< GR, K >
 Provides an immutable and unique id for each item in a graph. More...
class  InverseMap
 The inverse map type of IdMap. More...
class  CrossRefMap< GR, K, V >
 General cross reference graph map type. More...
class  ValueIt
 Forward iterator for values. More...
class  InverseMap
 The inverse map type of CrossRefMap. More...
class  RangeIdMap< GR, K >
 Provides continuous and unique id for the items of a graph. More...
class  InverseMap
 The inverse map type of RangeIdMap. More...
class  IterableBoolMap< GR, K >
 Dynamic iterable bool map. More...
class  Reference
 Reference to the value of the map. More...
class  TrueIt
 Iterator for the keys mapped to true. More...
class  FalseIt
 Iterator for the keys mapped to false. More...
class  ItemIt
 Iterator for the keys mapped to a given value. More...
class  IterableIntMap< GR, K >
 Dynamic iterable integer map. More...
class  Reference
 Reference to the value of the map. More...
class  ItemIt
 Iterator for the keys with the same value. More...
class  IterableValueMap< GR, K, V >
 Dynamic iterable map for comparable values. More...
class  ValueIt
 Forward iterator for values. More...
class  ItemIt
 Iterator for the keys with the same value. More...
class  SourceMap< GR >
 Map of the source nodes of arcs in a digraph. More...
class  TargetMap< GR >
 Map of the target nodes of arcs in a digraph. More...
class  ForwardMap< GR >
 Map of the "forward" directed arc view of edges in a graph. More...
class  BackwardMap< GR >
 Map of the "backward" directed arc view of edges in a graph. More...
class  InDegMap< GR >
 Map of the in-degrees of nodes in a digraph. More...
class  OutDegMap< GR >
 Map of the out-degrees of nodes in a digraph. More...
class  PotentialDifferenceMap< GR, POT >
 Potential difference map. More...

Namespaces

namespace  lemon
 The namespace of LEMON.

Functions

template<typename GR , typename From , typename To >
void mapCopy (const GR &gr, const From &from, To &to)
 Copy the values of a graph map to another map.
template<typename GR , typename Map1 , typename Map2 >
bool mapCompare (const GR &gr, const Map1 &map1, const Map2 &map2)
 Compare two graph maps.
template<typename GR , typename Map >
Map::Key mapMin (const GR &gr, const Map &map)
 Return an item having minimum value of a graph map.
template<typename GR , typename Map , typename Comp >
Map::Key mapMin (const GR &gr, const Map &map, const Comp &comp)
 Return an item having minimum value of a graph map.
template<typename GR , typename Map >
Map::Key mapMax (const GR &gr, const Map &map)
 Return an item having maximum value of a graph map.
template<typename GR , typename Map , typename Comp >
Map::Key mapMax (const GR &gr, const Map &map, const Comp &comp)
 Return an item having maximum value of a graph map.
template<typename GR , typename Map >
Map::Value mapMinValue (const GR &gr, const Map &map)
 Return the minimum value of a graph map.
template<typename GR , typename Map , typename Comp >
Map::Value mapMinValue (const GR &gr, const Map &map, const Comp &comp)
 Return the minimum value of a graph map.
template<typename GR , typename Map >
Map::Value mapMaxValue (const GR &gr, const Map &map)
 Return the maximum value of a graph map.
template<typename GR , typename Map , typename Comp >
Map::Value mapMaxValue (const GR &gr, const Map &map, const Comp &comp)
 Return the maximum value of a graph map.
template<typename GR , typename Map >
Map::Key mapFind (const GR &gr, const Map &map, const typename Map::Value &val)
 Return an item having a specified value in a graph map.
template<typename GR , typename Map , typename Pred >
Map::Key mapFindIf (const GR &gr, const Map &map, const Pred &pred)
 Return an item having value for which a certain predicate is true in a graph map.
template<typename GR , typename Map >
int mapCount (const GR &gr, const Map &map, const typename Map::Value &val)
 Return the number of items having a specified value in a graph map.
template<typename GR , typename Map , typename Pred >
int mapCountIf (const GR &gr, const Map &map, const Pred &pred)
 Return the number of items having values for which a certain predicate is true in a graph map.
template<typename GR , typename Map >
void mapFill (const GR &gr, Map &map, const typename Map::Value &val)
 Fill a graph map with a certain value.

doxygen