Generated on: Thu Mar 29 07:46:58 PDT 2012 for custom file set
// doxy/ or-tools/ src/ graph/

or-tools/src/graph/ebert_graph.h File Reference

#include <stddef.h>
#include <algorithm>
#include <limits>
#include <string>
#include "base/integral_types.h"
#include "base/logging.h"
#include "base/scoped_ptr.h"
#include "base/stringprintf.h"
#include "util/permutation.h"
#include "util/zvector.h"

Go to the source code of this file.

Namespaces

namespace  operations_research

Classes

class  operations_research::EbertGraphCore< NodeIndexType, ArcIndexType, DerivedGraph >
 A template for the base class that holds the functionality that exists in common between the EbertGraph<> template and the ForwardEbertGraph<> template. More...
class  operations_research::EbertGraphCore< NodeIndexType, ArcIndexType, DerivedGraph >::CycleHandlerForAnnotatedArcs
class  operations_research::EbertGraphCore< NodeIndexType, ArcIndexType, DerivedGraph >::NodeIterator
 Iterator class for traversing all the nodes in the graph. More...
class  operations_research::EbertGraphCore< NodeIndexType, ArcIndexType, DerivedGraph >::ArcIterator
 Iterator class for traversing the arcs in the graph. More...
class  operations_research::EbertGraph< NodeIndexType, ArcIndexType >
 Most users should only use StarGraph, which is EbertGraph<int32, int32>, and other type shortcuts; see the bottom of this file. More...
class  operations_research::EbertGraph< NodeIndexType, ArcIndexType >::IncidentArcIterator
 Iterator class for traversing the arcs incident to a given node in the graph. More...
class  operations_research::EbertGraph< NodeIndexType, ArcIndexType >::IncomingArcIterator
 Iterator class for traversing the incoming arcs associated to a given node. More...
class  operations_research::EbertGraph< NodeIndexType, ArcIndexType >::OutgoingArcIterator
 Iterator class for traversing the outgoing arcs associated to a given node. More...
class  operations_research::ForwardEbertGraph< NodeIndexType, ArcIndexType >
 A forward-star-only graph representation for greater efficiency in those algorithms that don't need reverse arcs. More...
class  operations_research::ForwardEbertGraph< NodeIndexType, ArcIndexType >::OutgoingArcIterator
 Iterator class for traversing the arcs incident to a given node in the graph. More...
struct  operations_research::graph_traits< GraphType >
 Traits for EbertGraphCore types, for use in testing and clients that work with both forward-only and forward/reverse graphs. More...
struct  operations_research::graph_traits< ForwardEbertGraph< NodeIndexType, ArcIndexType > >
struct  operations_research::TailArrayBuilder< GraphType, has_reverse_arcs >
 The TailArrayBuilder for graphs with reverse arcs does nothing. More...
struct  operations_research::TailArrayBuilder< GraphType, false >
 The TailArrayBuilder for graphs without reverse arcs calls the appropriate method on the graph from the TailArrayBuilder constructor. More...
struct  operations_research::TailArrayReleaser< GraphType, has_reverse_arcs >
 The TailArrayReleaser for graphs with reverse arcs does nothing. More...
struct  operations_research::TailArrayReleaser< GraphType, false >
 The TailArrayReleaser for graphs without reverse arcs calls the appropriate method on the graph from the TailArrayReleaser constructor. More...
class  operations_research::TailArrayManager< GraphType >

Typedefs

typedef int32 operations_research::NodeIndex
 Standard instantiation of ForwardEbertGraph (named 'ForwardStarGraph') of EbertGraph (named 'StarGraph'); and relevant type shortcuts.
typedef int32 operations_research::ArcIndex
typedef int64 operations_research::FlowQuantity
typedef int64 operations_research::CostValue
typedef EbertGraph< NodeIndex,
ArcIndex > 
operations_research::StarGraph
typedef ForwardEbertGraph
< NodeIndex, ArcIndex > 
operations_research::ForwardStarGraph
typedef ZVector< NodeIndex > operations_research::NodeIndexArray
typedef ZVector< ArcIndex > operations_research::ArcIndexArray
typedef ZVector< FlowQuantity > operations_research::QuantityArray
typedef ZVector< CostValue > operations_research::CostArray

Functions

template<typename GraphType>
bool operations_research::BuildLineGraph (const GraphType &graph, GraphType *const line_graph)
 Builds a directed line graph for 'graph' (see "directed line graph" in http://en.wikipedia.org/wiki/Line_graph).