All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
List of all members | Classes | Public Types | Public Member Functions
PathDumper< GR > Class Template Reference

Detailed Description

template<typename GR>
class lemon::concepts::PathDumper< GR >

A skeleton structure for path dumpers. The path dumpers are the generalization of the paths, they can enumerate the arcs of the path either in forward or in backward order. These classes are typically not used directly, they are rather used to be assigned to a real path type.

The main purpose of this concept is that the shortest path algorithms can enumerate the arcs easily in reverse order. In LEMON, such algorithms give back a (reverse) path dumper that can be assigned to a real path. The dumpers can be implemented as an adaptor class to the predecessor map.

Template Parameters
GRThe digraph type in which the path is.

#include <lemon/concepts/path.h>

Classes

class  ArcIt
 LEMON style iterator for enumerating the arcs of a path. More...
 
class  RevArcIt
 LEMON style iterator for enumerating the arcs of a path in reverse direction. More...
 

Public Types

typedef GR Digraph
 Type of the underlying digraph.
 
typedef Digraph::Arc Arc
 Arc type of the underlying digraph.
 
typedef False RevPathTag
 Forward or reverse dumping.
 

Public Member Functions

int length () const
 Length of the path, i.e. the number of arcs on the path.
 
bool empty () const
 Returns whether the path is empty.
 

Member Typedef Documentation

typedef False RevPathTag

If this tag is defined to be True, then reverse dumping is provided in the path dumper. In this case, RevArcIt iterator should be implemented instead of ArcIt iterator.