All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Classes | Namespaces | Functions
maps.h File Reference
#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  IdMap< GR, K >::InverseMap
 The inverse map type of IdMap. More...
 
class  CrossRefMap< GR, K, V >
 General cross reference graph map type. More...
 
class  CrossRefMap< GR, K, V >::ValueIt
 Forward iterator for values. More...
 
class  CrossRefMap< GR, K, V >::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  RangeIdMap< GR, K >::InverseMap
 The inverse map type of RangeIdMap. More...
 
class  IterableBoolMap< GR, K >
 Dynamic iterable bool map. More...
 
class  IterableBoolMap< GR, K >::Reference
 Reference to the value of the map. More...
 
class  IterableBoolMap< GR, K >::TrueIt
 Iterator for the keys mapped to true. More...
 
class  IterableBoolMap< GR, K >::FalseIt
 Iterator for the keys mapped to false. More...
 
class  IterableBoolMap< GR, K >::ItemIt
 Iterator for the keys mapped to a given value. More...
 
class  IterableIntMap< GR, K >
 Dynamic iterable integer map. More...
 
class  IterableIntMap< GR, K >::Reference
 Reference to the value of the map. More...
 
class  IterableIntMap< GR, K >::ItemIt
 Iterator for the keys with the same value. More...
 
class  IterableValueMap< GR, K, V >
 Dynamic iterable map for comparable values. More...
 
class  IterableValueMap< GR, K, V >::ValueIt
 Forward iterator for values. More...
 
class  IterableValueMap< GR, K, V >::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.