Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

lemon Namespace Reference


Detailed Description

Todo:
Some more detailed description would be nice here.


Classes

struct  BfsDefaultTraits
 Default traits class of Bfs class. More...
class  Bfs
 BFS algorithm class. More...
struct  BfsWizardDefaultTraits
 Default traits class of Bfs function. More...
class  BfsWizardBase
 Default traits used by BfsWizard. More...
class  BfsWizard
 A class to make the usage of Bfs algorithm easier. More...
class  BinHeap
 A Binary Heap implementation. More...
struct  DfsDefaultTraits
 Default traits class of Dfs class. More...
class  Dfs
 DFS algorithm class. More...
struct  DfsWizardDefaultTraits
 Default traits class of Dfs function. More...
class  DfsWizardBase
 Default traits used by DfsWizard. More...
class  DfsWizard
 A class to make the usage of the Dfs algorithm easier. More...
struct  DijkstraDefaultTraits
 Default traits class of Dijkstra class. More...
class  Dijkstra
 Dijkstra algorithm class. More...
struct  DijkstraWizardDefaultTraits
 Default traits class of Dijkstra function. More...
class  DijkstraWizardBase
 Default traits used by DijkstraWizard. More...
class  DijkstraWizard
 A class to make the usage of Dijkstra algorithm easier. More...
class  ExceptionMember
 Exception safe wrapper class. More...
class  ErrorMessage
 Exception-safe convenient "error message" class. More...
class  Exception
 Generic exception class. More...
class  LogicError
 One of the two main subclasses of Exception. More...
class  UninitializedParameter
 Exception for uninitialized parameters. More...
class  RuntimeError
 One of the two main subclasses of Exception. More...
class  RangeError
  More...
class  IOError
  More...
class  DataFormatError
  More...
class  AssertionFailedError
  More...
class  FibHeap
 Fibonacci Heap. More...
class  FullGraph
 A full graph class. More...
class  UndirFullGraph
 An undirected full graph class. More...
class  GraphAdaptorBase
class  RevGraphAdaptor
 A graph adaptor which reverses the orientation of the edges. More...
class  SubGraphAdaptor
 A graph adaptor for hiding nodes and edges from a graph. More...
class  NodeSubGraphAdaptor
 An adaptor for hiding nodes from a graph. More...
class  EdgeSubGraphAdaptor
 An adaptor for hiding edges from a graph. More...
class  UndirGraphAdaptor
 An undirected graph is made from a directed graph by an adaptor. More...
class  SubBidirGraphAdaptor
 An adaptor for composing a subgraph of a bidirected graph made from a directed one. More...
class  BidirGraphAdaptor
 An adaptor for composing bidirected graph from a directed one. More...
class  ResGraphAdaptor
 An adaptor for composing the residual graph for directed flow and circulation problems. More...
class  ErasingFirstGraphAdaptor
 For blocking flows. More...
class  NewEdgeSetAdaptor
 Graph adaptor using a node set of another graph and an own edge set. More...
class  NewUndirEdgeSetAdaptor
 Graph adaptor using a node set of another graph and an own undir edge set. More...
class  GraphReader
 The graph reader class. More...
class  UndirGraphReader
 The undir graph reader class. More...
class  Color
 Data structure representing RGB colors. More...
class  ColorSet
 Maps ints to different Colors. More...
struct  DefaultGraphToEpsTraits
 Default traits class of GraphToEps. More...
class  GraphToEps
 Helper class to implement the named parameters of graphToEps(). More...
class  ConEdgeIt
 Iterator for iterating on edges connected the same nodes. More...
class  GraphCopy
 Class to copy a graph. More...
class  IdMap
 Provides an immutable and unique id for each item in the graph. More...
class  InvertableMap
 General invertable graph-map type. More...
class  DescriptorMap
 Provides a mutable, continuous and unique descriptor for each item in the graph. More...
class  SourceMap
 Returns the source of the given edge. More...
class  TargetMap
 Returns the target of the given edge. More...
class  ForwardMap
 Returns the "forward" directed edge view of an undirected edge. More...
class  BackwardMap
 Returns the "backward" directed edge view of an undirected edge. More...
class  InDegMap
 Map of the node in-degrees. More...
class  OutDegMap
 Map of the node out-degrees. More...
class  GraphWriter
 The graph writer class. More...
class  UndirGraphWriter
 The undirected graph writer class. More...
class  GridGraph
 Grid graph class. More...
struct  Invalid
 See INVALID, how to use it. More...
class  NonConstMapWr
 Helper class for calling kruskal with "constant" output map. More...
class  KruskalMapInput
 Kruskal's input source. More...
class  KruskalSequenceOutput
 A writable bool-map that makes a sequence of "true" keys. More...
class  LemonReader
 Lemon Format reader class. More...
class  CommonSectionReaderBase
 Helper class for implementing the common SectionReaders. More...
class  NodeSetReader
 SectionReader for reading a graph's nodeset. More...
class  EdgeSetReader
 SectionReader for reading a graph's edgeset. More...
class  UndirEdgeSetReader
 SectionReader for reading a undirected graph's edgeset. More...
class  NodeReader
 SectionReader for reading labeled nodes. More...
class  EdgeReader
 SectionReader for reading labeled edges. More...
class  UndirEdgeReader
 SectionReader for reading labeled undirected edges. More...
class  AttributeReader
 SectionReader for attributes. More...
class  ContentReader
 SectionReader for retrieve what is in the file. More...
class  LemonWriter
 Lemon Format writer class. More...
class  CommonSectionWriterBase
 Helper class for implementing the common SectionWriters. More...
class  NodeSetWriter
 SectionWriter for writing a graph's nodeset. More...
class  EdgeSetWriter
 SectionWriter for writing a graph's edgesets. More...
class  UndirEdgeSetWriter
 SectionWriter for writing a undirected edgeset. More...
class  NodeWriter
 SectionWriter for writing labeled nodes. More...
class  EdgeWriter
 SectionWriter for writing labeled edges. More...
class  UndirEdgeWriter
 SectionWriter for writing labeled undirected edges. More...
class  AttributeWriter
 SectionWriter for attributes. More...
class  ListGraph
 A list graph class. More...
class  UndirListGraph
 An undirected list graph class. More...
class  _FixId
class  LpSolverBase
 Common base class for LP solvers. More...
class  LpCplex
 Interface for the CPLEX solver. More...
class  LpGlpk
 Interface for the GLPK LP solver. More...
class  LpSkeleton
 A skeleton class to implement LP solver interfaces. More...
class  MapBase
 Base class of maps. More...
class  NullMap
 Null map. (a.k.a. DoNothingMap). More...
class  ConstMap
 Constant map. More...
class  StdMap
 std::map wrapper More...
class  IdentityMap
 Identity mapping. More...
class  ConvertMap
 Convert the Value of a map to another type. More...
class  AddMap
 Sum of two maps. More...
class  ShiftMap
 Shift a map with a constant. More...
class  SubMap
 Difference of two maps. More...
class  MulMap
 Product of two maps. More...
class  ScaleMap
 Scales a maps with a constant. More...
class  DivMap
 Quotient of two maps. More...
class  ComposeMap
 Composition of two maps. More...
class  CombineMap
 Combines of two maps using an STL (binary) functor. More...
class  NegMap
 Negative value of a map. More...
class  AbsMap
 Absolute value of a map. More...
class  FunctorMap
 Converts an STL style functor to a map. More...
class  MapFunctor
 Converts a map to an STL style (unary) functor. More...
class  ForkMap
 Applies all map setting operations to two maps. More...
class  NotMap
 Logical 'not' of a map. More...
class  MaxMatching
 Edmonds' alternating forest maximum matching algorithm. More...
class  MinCostFlow
 Implementation of an algorithm for finding a flow of value k (for small values of k) having minimal total cost between 2 nodes. More...
class  DirPath
 A structure for representing directed paths in a graph. More...
class  UndirPath
 A structure for representing undirected path in a graph. More...
class  Preflow
 Preflow algorithms class. More...
class  UnderFlowPriorityError
 Exception thrown by RadixHeap. More...
class  RadixHeap
 A Radix Heap implementation. More...
class  ControllerBase
 A base class for controllers. More...
class  EntityBase
 Skeleton of an entity class. More...
class  SimAnnBase
 Simulated annealing base class. More...
class  SimAnn
 Simulated annealing class. More...
class  SimpleController
 A simple controller for the simulated annealing class. More...
class  AdvancedController
 A controller with preset running time for the simulated annealing class. More...
class  SmartGraphBase
 Base of SmartGraph. More...
class  SmartGraph
 A smart graph class. More...
class  UndirSmartGraph
 A smart undirected graph class. More...
class  Suurballe
 Implementation of an algorithm for finding k edge-disjoint paths between 2 nodes of minimal total length. More...
class  TimeStamp
 A class to store (cpu)time instances. More...
class  Timer
 Class measuring the cpu time and real time usage of the process. More...
class  UnionFind
 A Union-Find data structure implementation. More...
class  UnionFindEnum
 A Union-Find data structure implementation which is able to enumerate the components. More...
struct  True
 Basic type for defining "tags". A "YES" condition for enable_if. More...
struct  False
 Basic type for defining "tags". A "NO" condition for enable_if. More...
class  xy
 A simple two dimensional vector (plainvector) implementation. More...
class  BoundingBox
 A class to calculate or store the bounding box of plainvectors. More...
class  XMap
 Map of x-coordinates of an xy<>-map. More...
class  ConstXMap
 Constant (read only) version of XMap. More...
class  YMap
 Map of y-coordinates of an xy<>-map. More...
class  ConstYMap
 Constant (read only) version of YMap. More...
class  NormSquareMap
 Map of the normSquare() of an xy-map. More...
class  AlterationNotifier
 Registry class to register objects observes alterations in the graph. More...
class  AlterableGraphExtender
 Class to extend a graph with the functionality of alteration observing. More...
class  AlterableUndirGraphExtender
 Class to extend an undirected graph with the functionality of alteration observing. More...
class  ArrayMap
struct  DefaultMapSelector
struct  extended_pair
 A more customizable pair type than std::pair. More...
class  QuotedStringReader
 Reader class for quoted strings. More...
class  PushBackReader
 Reader for standard containers. More...
class  InsertReader
 Reader for standard containers. More...
class  ParsedStringReader
 Reader for parsed string. More...
class  LineReader
 Reader for read the whole line. More...
class  DefaultReader
 The default item reader template class. More...
class  DefaultSkipper
 The default item reader for skipping a value in the stream. More...
struct  DefaultReaderTraits
 Standard ReaderTraits for the GraphReader class. More...
class  QuotedStringWriter
 Writer class for quoted strings. More...
class  QuotedCharArrayWriter
 Writer class for quoted char array. More...
class  IterableWriter
 Writer for standard containers. More...
class  DefaultWriter
 The default item writer template class. More...
struct  DefaultWriterTraits
 Standard WriterTraits for the section writers. More...
class  MapIteratorBase
class  MapIterator
class  MapConstIterator
class  MapConstKeyIterator
class  MapValueIterator
class  MapConstValueIterator
class  MapConstKeySet
class  MapConstValueSet
class  MapValueSet
class  MapSet
class  VectorMap
class  TightEdgeFilterMap
 A map for filtering the edge-set to those edges which are tight w.r.t. a node-potential and edge-distance. More...

Namespaces

namespace  concept
 The namespace of LEMON concepts and concept checking classes.

Typedefs

typedef LpGlpk Lp
 The default LP solver.

Functions

template<class GR>
BfsWizard< BfsWizardBase<
GR > > 
bfs (const GR &g, typename GR::Node s=INVALID)
 Function type interface for Bfs algorithm.
template<class GR>
DfsWizard< DfsWizardBase<
GR > > 
dfs (const GR &g, typename GR::Node s=INVALID)
 Function type interface for Dfs algorithm.
template<class GR, class LM>
DijkstraWizard< DijkstraWizardBase<
GR, LM > > 
dijkstra (const GR &g, const LM &l, typename GR::Node s=INVALID)
 Function type interface for Dijkstra algorithm.
template<typename Graph, typename CapacityMap, typename CostMap>
void readDimacs (std::istream &is, Graph &g, CapacityMap &capacity, typename Graph::Node &s, typename Graph::Node &t, CostMap &cost)
 Dimacs min cost flow reader function.
template<typename Graph, typename CapacityMap>
void readDimacs (std::istream &is, Graph &g, CapacityMap &capacity, typename Graph::Node &s, typename Graph::Node &t)
 Dimacs max flow reader function.
template<typename Graph, typename CapacityMap>
void readDimacs (std::istream &is, Graph &g, CapacityMap &capacity, typename Graph::Node &s)
 Dimacs shortest path reader function.
template<typename Graph, typename CapacityMap>
void readDimacs (std::istream &is, Graph &g, CapacityMap &capacity)
 Dimacs capacitated graph reader function.
template<typename Graph>
void readDimacs (std::istream &is, Graph &g)
 Dimacs plain graph reader function.
template<typename Graph>
void writeDimacs (std::ostream &os, const Graph &g)
 write matching problem
template<typename Graph>
void readGraph (std::istream &is, Graph &g)
 Read a graph from an input stream.
template<typename Graph, typename CapacityMap>
void readGraph (std::istream &is, Graph &g, CapacityMap &capacity)
 Read a capacitated graph instance from an input stream.
template<typename Graph, typename CapacityMap>
void readGraph (std::istream &is, Graph &g, CapacityMap &capacity, typename Graph::Node &s)
 Read a shortest path instance from an input stream.
template<typename Graph, typename CapacityMap>
void readGraph (std::istream &is, Graph &g, CapacityMap &capacity, typename Graph::Node &s, typename Graph::Node &t)
 Read a max flow instance from an input stream.
template<typename Graph, typename CapacityMap, typename CostMap>
void readGraph (std::istream &is, Graph &g, CapacityMap &capacity, typename Graph::Node &s, typename Graph::Node &t, CostMap &cost)
 Read a min cost flow instance from an input stream.
template<typename Graph>
void readUndirGraph (std::istream &is, Graph &g)
 Read an undirected graph from an input stream.
template<typename Graph, typename CapacityMap>
void readUndirGraph (std::istream &is, Graph &g, CapacityMap &capacity)
 Read an undirected multigraph (undirected graph + capacity map on the edges) from an input stream.
Color distantColor (const Color &c)
 Returns a visible distinct Color.
Color distantBW (const Color &c)
 Returns black for light colors and white for the dark ones.
template<class G>
GraphToEps< DefaultGraphToEpsTraits<
G > > 
graphToEps (G &g, std::ostream &os=std::cout)
 Generates an EPS file from a graph.
template<class G>
GraphToEps< DefaultGraphToEpsTraits<
G > > 
graphToEps (G &g, const char *file_name)
 Generates an EPS file from a graph.
template<typename Graph, typename ItemIt>
int countItems (const Graph &g)
 Function to count the items in the graph.
template<typename Graph>
int countNodes (const Graph &g)
 Function to count the nodes in the graph.
template<typename Graph>
int countEdges (const Graph &g)
 Function to count the edges in the graph.
template<typename Graph>
int countUndirEdges (const Graph &g)
 Function to count the undirected edges in the graph.
template<typename Graph>
int countOutEdges (const Graph &_g, const typename Graph::Node &_n)
 Function to count the number of the out-edges from node n.
template<typename Graph>
int countInEdges (const Graph &_g, const typename Graph::Node &_n)
 Function to count the number of the in-edges to node n.
template<typename Graph>
Graph::Edge findEdge (const Graph &g, typename Graph::Node u, typename Graph::Node v, typename Graph::Edge prev=INVALID)
 Finds an edge between two nodes of a graph.
template<typename Target, typename Source, typename ItemIt, typename Ref>
void copyMap (Target &target, const Source &source, ItemIt it, const Ref &ref)
 Copy a map.
template<typename Target, typename Source, typename ItemIt>
void copyMap (Target &target, const Source &source, ItemIt it)
 Copy the source map to the target map.
template<typename Target, typename Source>
GraphCopy< Target, Source > copyGraph (Target &target, const Source &source)
 Copy a graph to an other graph.
template<typename Graph>
void writeGraph (std::ostream &os, const Graph &g)
 Write a graph to the output.
template<typename Graph, typename CapacityMap>
void writeGraph (std::ostream &os, const Graph &g, const CapacityMap &capacity)
 Write a capacitated graph instance to the output.
template<typename Graph, typename CapacityMap>
void writeGraph (std::ostream &os, const Graph &g, const CapacityMap &capacity, const typename Graph::Node &s)
 Write a shortest path instance to the output.
template<typename Graph, typename CapacityMap>
void writeGraph (std::ostream &os, const Graph &g, const CapacityMap &capacity, const typename Graph::Node &s, const typename Graph::Node &t)
 Write a max flow instance to the output.
template<typename Graph, typename CapacityMap, typename CostMap>
void writeGraph (std::ostream &os, const Graph &g, const CapacityMap &capacity, const typename Graph::Node &s, const typename Graph::Node &t, const CostMap &cost)
 Write a min cost flow instance to the output.
template<typename Graph>
void writeUndirGraph (std::ostream &os, const Graph &g)
 Write an undirected graph to the output.
template<typename Graph, typename CapacityMap>
void writeUndirGraph (std::ostream &os, const Graph &g, const CapacityMap &capacity)
 Write an undirected multigraph (undirected graph + capacity map on the edges) to the output.
template<class GR, class IN, class OUT>
IN::value_type::second_type kruskal (GR const &g, IN const &in, OUT &out)
 Kruskal's algorithm to find a minimum cost tree of a graph.
template<class GR, class Map>
KruskalMapInput< GR, Map > makeKruskalMapInput (const GR &g, const Map &m)
 Creates a KruskalMapInput object for kruskal().
template<class GR, class CM, class FM>
Preflow< GR, typename CM::Value,
CM, FM > 
preflow (const GR &g, typename GR::Node source, typename GR::Node target, const CM &cap, FM &flow)
 Function type interface for Preflow algorithm.
template<typename T1, typename T2, typename LA1, typename LA2, typename RA1, typename RA2>
bool operator== (const extended_pair< T1, LA1, T2, LA2 > &left, const extended_pair< T1, RA1, T2, RA2 > &right)
 Equality operator.
template<typename T1, typename T2, typename LA1, typename LA2, typename RA1, typename RA2>
bool operator!= (const extended_pair< T1, LA1, T2, LA2 > &left, const extended_pair< T1, RA1, T2, RA2 > &right)
 Inequality operator.
template<typename T1, typename T2, typename LA1, typename LA2, typename RA1, typename RA2>
bool operator< (const extended_pair< T1, LA1, T2, LA2 > &left, const extended_pair< T1, RA1, T2, RA2 > &right)
 Less operator.
template<typename T1, typename T2, typename LA1, typename LA2, typename RA1, typename RA2>
bool operator> (const extended_pair< T1, LA1, T2, LA2 > &left, const extended_pair< T1, RA1, T2, RA2 > &right)
 Greater operator.
template<typename T1, typename T2, typename LA1, typename LA2, typename RA1, typename RA2>
bool operator<= (const extended_pair< T1, LA1, T2, LA2 > &left, const extended_pair< T1, RA1, T2, RA2 > &right)
 Less or equal operator.
template<typename T1, typename T2, typename LA1, typename LA2, typename RA1, typename RA2>
bool operator>= (const extended_pair< T1, LA1, T2, LA2 > &left, const extended_pair< T1, RA1, T2, RA2 > &right)
 Greater or equal operator.

Variables

const Invalid INVALID = Invalid()
 Invalid iterators.
const char default_solver_name [] = "SOLVER"
 The default LP solver identifier string.


Function Documentation

Color lemon::distantColor const Color &  c  )  [inline]
 

Returns a Color which is as different from the given parameter as it is possible.

KruskalMapInput<GR,Map> lemon::makeKruskalMapInput const GR &  g,
const Map &  m
[inline]
 

It makes easier to use KruskalMapInput by making it unnecessary to explicitly give the type of the parameters.

In most cases you possibly want to use kruskal() instead.

Parameters:
g The type of the graph the algorithm runs on.
m An edge map containing the cost of the edges.
The cost type can be any type satisfying the STL 'LessThan Comparable' concept if it also has an operator+() implemented. (It is necessary for computing the total cost of the tree).
Returns:
An appropriate input source for kruskal().

bool lemon::operator== const extended_pair< T1, LA1, T2, LA2 > &  left,
const extended_pair< T1, RA1, T2, RA2 > &  right
 

Equality operator

bool lemon::operator!= const extended_pair< T1, LA1, T2, LA2 > &  left,
const extended_pair< T1, RA1, T2, RA2 > &  right
 

Inequality operator.

bool lemon::operator< const extended_pair< T1, LA1, T2, LA2 > &  left,
const extended_pair< T1, RA1, T2, RA2 > &  right
 

Less operator.

bool lemon::operator> const extended_pair< T1, LA1, T2, LA2 > &  left,
const extended_pair< T1, RA1, T2, RA2 > &  right
 

Greater operator.

bool lemon::operator<= const extended_pair< T1, LA1, T2, LA2 > &  left,
const extended_pair< T1, RA1, T2, RA2 > &  right
 

Less or equal operator.

bool lemon::operator>= const extended_pair< T1, LA1, T2, LA2 > &  left,
const extended_pair< T1, RA1, T2, RA2 > &  right
 

Greater or equal operator.


Variable Documentation

const Invalid INVALID = Invalid()
 

Invalid is a global type that converts to each iterator in such a way that the value of the target iterator will be invalid.


Generated on Sat Aug 27 14:14:56 2005 for LEMON by  doxygen 1.4.4