Boost  v1.57.0
doxygen for www.boost.org
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap > Class Template Reference

#include <boykov_kolmogorov_max_flow.hpp>

Collaboration diagram for boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >:

Public Member Functions

 bk_max_flow (Graph &g, EdgeCapacityMap cap, ResidualCapacityEdgeMap res, ReverseEdgeMap rev, PredecessorMap pre, ColorMap color, DistanceMap dist, IndexMap idx, vertex_descriptor src, vertex_descriptor sink)
 
tEdgeVal max_flow ()
 

Protected Member Functions

void augment_direct_paths ()
 
std::pair< edge_descriptor, bool > grow ()
 Returns a pair of an edge and a boolean. More...
 
void augment (edge_descriptor e)
 augments path from s->t and updates residual graph source(e, m_g) is the end of the path found in the source-tree target(e, m_g) is the beginning of the path found in the sink-tree this phase generates orphans on satured edges, if the attached verts are from different search-trees orphans are ordered in distance to sink/source. More...
 
tEdgeVal find_bottleneck (edge_descriptor e)
 returns the bottleneck of a s->t path (end_of_path is last vertex in source-tree, begin_of_path is first vertex in sink-tree) More...
 
void adopt ()
 rebuild search trees empty the queue of orphans, and find new parents for them or just drop them from the search trees More...
 
vertex_descriptor get_next_active_node ()
 return next active vertex if there is one, otherwise a null_vertex More...
 
void add_active_node (vertex_descriptor v)
 adds v as an active vertex, but only if its not in the list already More...
 
void finish_node (vertex_descriptor v)
 finish_node removes a node from the front of the active queue (its called in grow phase, if no more paths can be found using this node) More...
 
void remove_active_node (vertex_descriptor v)
 removes a vertex from the queue of active nodes (actually this does nothing, but checks if this node has no parent edge, as this is the criteria for being no more active) More...
 
tColorValue get_tree (vertex_descriptor v) const
 returns the search tree of v; tColorValue::black() for source tree, white() for sink tree, gray() for no tree More...
 
void set_tree (vertex_descriptor v, tColorValue t)
 sets search tree of v; tColorValue::black() for source tree, white() for sink tree, gray() for no tree More...
 
edge_descriptor get_edge_to_parent (vertex_descriptor v) const
 returns edge to parent vertex of v; More...
 
bool has_parent (vertex_descriptor v) const
 returns true if the edge stored in m_pre_map[v] is a valid entry More...
 
void set_edge_to_parent (vertex_descriptor v, edge_descriptor f_edge_to_parent)
 sets edge to parent vertex of v; More...
 
void set_no_parent (vertex_descriptor v)
 removes the edge to parent of v (this is done by invalidating the entry an additional map) More...
 
bool has_sink_connect (vertex_descriptor v)
 
bool has_source_connect (vertex_descriptor v)
 
bool is_closer_to_terminal (vertex_descriptor p, vertex_descriptor q)
 returns true, if p is closer to a terminal than q More...
 

Protected Attributes

Graph & m_g
 
IndexMap m_index_map
 
EdgeCapacityMap m_cap_map
 
ResidualCapacityEdgeMap m_res_cap_map
 
ReverseEdgeMap m_rev_edge_map
 
PredecessorMap m_pre_map
 
ColorMap m_tree_map
 
DistanceMap m_dist_map
 
vertex_descriptor m_source
 
vertex_descriptor m_sink
 
tQueue m_active_nodes
 
std::vector< bool > m_in_active_list_vec
 
iterator_property_map
< std::vector< bool >
::iterator, IndexMap > 
m_in_active_list_map
 
std::list< vertex_descriptor > m_orphans
 
tQueue m_child_orphans
 
std::vector< bool > m_has_parent_vec
 
iterator_property_map
< std::vector< bool >
::iterator, IndexMap > 
m_has_parent_map
 
std::vector< long > m_time_vec
 
iterator_property_map
< std::vector< long >
::iterator, IndexMap > 
m_time_map
 
tEdgeVal m_flow
 
long m_time
 
vertex_descriptor m_last_grow_vertex
 
out_edge_iterator m_last_grow_edge_it
 
out_edge_iterator m_last_grow_edge_end
 

Constructor & Destructor Documentation

template<class Graph , class EdgeCapacityMap , class ResidualCapacityEdgeMap , class ReverseEdgeMap , class PredecessorMap , class ColorMap , class DistanceMap , class IndexMap >
boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::bk_max_flow ( Graph &  g,
EdgeCapacityMap  cap,
ResidualCapacityEdgeMap  res,
ReverseEdgeMap  rev,
PredecessorMap  pre,
ColorMap  color,
DistanceMap  dist,
IndexMap  idx,
vertex_descriptor  src,
vertex_descriptor  sink 
)
inline

Member Function Documentation

template<class Graph , class EdgeCapacityMap , class ResidualCapacityEdgeMap , class ReverseEdgeMap , class PredecessorMap , class ColorMap , class DistanceMap , class IndexMap >
void boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::add_active_node ( vertex_descriptor  v)
inlineprotected
template<class Graph , class EdgeCapacityMap , class ResidualCapacityEdgeMap , class ReverseEdgeMap , class PredecessorMap , class ColorMap , class DistanceMap , class IndexMap >
void boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::adopt ( )
inlineprotected

rebuild search trees empty the queue of orphans, and find new parents for them or just drop them from the search trees

References boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::add_active_node(), boost::color_traits< ColorValue >::black(), BOOST_ASSERT, boost::queue< _Tp, _Sequence >::empty(), boost::queue< _Tp, _Sequence >::front(), boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::get_edge_to_parent(), boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::get_tree(), boost::color_traits< ColorValue >::gray(), boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::has_parent(), boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::has_sink_connect(), boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::has_source_connect(), boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::m_child_orphans, boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::m_dist_map, boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::m_g, boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::m_orphans, boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::m_res_cap_map, boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::m_rev_edge_map, boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::m_sink, boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::m_source, boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::m_time, boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::m_time_map, boost::accumulators::extract::max, boost::out_edges(), boost::queue< _Tp, _Sequence >::pop(), boost::queue< _Tp, _Sequence >::push(), boost::put(), boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::set_edge_to_parent(), boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::set_no_parent(), boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::set_tree(), boost::source(), boost::target(), and boost::color_traits< ColorValue >::white().

Referenced by boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::max_flow().

template<class Graph , class EdgeCapacityMap , class ResidualCapacityEdgeMap , class ReverseEdgeMap , class PredecessorMap , class ColorMap , class DistanceMap , class IndexMap >
void boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::augment ( edge_descriptor  e)
inlineprotected

augments path from s->t and updates residual graph source(e, m_g) is the end of the path found in the source-tree target(e, m_g) is the beginning of the path found in the sink-tree this phase generates orphans on satured edges, if the attached verts are from different search-trees orphans are ordered in distance to sink/source.

first the farest from the source are front_inserted into the orphans list, and after that the sink-tree-orphans are front_inserted. when going to adoption stage the orphans are popped_front, and so we process the nearest verts to the terminals first

References boost::color_traits< ColorValue >::black(), BOOST_ASSERT, boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::find_bottleneck(), boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::get_edge_to_parent(), boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::get_tree(), boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::m_flow, boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::m_g, boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::m_orphans, boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::m_res_cap_map, boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::m_rev_edge_map, boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::m_sink, boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::m_source, boost::put(), boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::set_no_parent(), boost::source(), boost::target(), and boost::color_traits< ColorValue >::white().

Referenced by boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::max_flow().

template<class Graph , class EdgeCapacityMap , class ResidualCapacityEdgeMap , class ReverseEdgeMap , class PredecessorMap , class ColorMap , class DistanceMap , class IndexMap >
void boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::augment_direct_paths ( )
inlineprotected

References boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::add_active_node(), boost::color_traits< ColorValue >::black(), boost::lookup_edge(), boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::m_dist_map, boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::m_flow, boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::m_g, boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::m_res_cap_map, boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::m_rev_edge_map, boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::m_sink, boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::m_source, boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::m_time_map, boost::out_edges(), boost::put(), boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::set_edge_to_parent(), boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::set_tree(), boost::source(), boost::target(), and boost::color_traits< ColorValue >::white().

Referenced by boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::max_flow().

template<class Graph , class EdgeCapacityMap , class ResidualCapacityEdgeMap , class ReverseEdgeMap , class PredecessorMap , class ColorMap , class DistanceMap , class IndexMap >
tEdgeVal boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::find_bottleneck ( edge_descriptor  e)
inlineprotected
template<class Graph , class EdgeCapacityMap , class ResidualCapacityEdgeMap , class ReverseEdgeMap , class PredecessorMap , class ColorMap , class DistanceMap , class IndexMap >
void boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::finish_node ( vertex_descriptor  v)
inlineprotected
template<class Graph , class EdgeCapacityMap , class ResidualCapacityEdgeMap , class ReverseEdgeMap , class PredecessorMap , class ColorMap , class DistanceMap , class IndexMap >
vertex_descriptor boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::get_next_active_node ( )
inlineprotected
template<class Graph , class EdgeCapacityMap , class ResidualCapacityEdgeMap , class ReverseEdgeMap , class PredecessorMap , class ColorMap , class DistanceMap , class IndexMap >
std::pair<edge_descriptor, bool> boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::grow ( )
inlineprotected

Returns a pair of an edge and a boolean.

if the bool is true, the edge is a connection of a found path from s->t , read "the link" and source(returnVal, m_g) is the end of the path found in the source-tree target(returnVal, m_g) is the beginning of the path found in the sink-tree

References boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::add_active_node(), boost::color_traits< ColorValue >::black(), BOOST_ASSERT, boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::finish_node(), boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::get_next_active_node(), boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::get_tree(), boost::color_traits< ColorValue >::gray(), boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::has_parent(), boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::is_closer_to_terminal(), boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::m_dist_map, boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::m_g, boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::m_last_grow_edge_end, boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::m_last_grow_edge_it, boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::m_last_grow_vertex, boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::m_orphans, boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::m_res_cap_map, boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::m_rev_edge_map, boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::m_sink, boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::m_source, boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::m_time_map, boost::xpressive::make_pair, boost::out_edges(), boost::put(), boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::set_edge_to_parent(), boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::set_tree(), boost::source(), boost::target(), and boost::color_traits< ColorValue >::white().

Referenced by boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::max_flow().

template<class Graph , class EdgeCapacityMap , class ResidualCapacityEdgeMap , class ReverseEdgeMap , class PredecessorMap , class ColorMap , class DistanceMap , class IndexMap >
bool boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::has_parent ( vertex_descriptor  v) const
inlineprotected
template<class Graph , class EdgeCapacityMap , class ResidualCapacityEdgeMap , class ReverseEdgeMap , class PredecessorMap , class ColorMap , class DistanceMap , class IndexMap >
bool boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::has_sink_connect ( vertex_descriptor  v)
inlineprotected
template<class Graph , class EdgeCapacityMap , class ResidualCapacityEdgeMap , class ReverseEdgeMap , class PredecessorMap , class ColorMap , class DistanceMap , class IndexMap >
bool boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::has_source_connect ( vertex_descriptor  v)
inlineprotected
template<class Graph , class EdgeCapacityMap , class ResidualCapacityEdgeMap , class ReverseEdgeMap , class PredecessorMap , class ColorMap , class DistanceMap , class IndexMap >
bool boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::is_closer_to_terminal ( vertex_descriptor  p,
vertex_descriptor  q 
)
inlineprotected
template<class Graph , class EdgeCapacityMap , class ResidualCapacityEdgeMap , class ReverseEdgeMap , class PredecessorMap , class ColorMap , class DistanceMap , class IndexMap >
void boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::remove_active_node ( vertex_descriptor  v)
inlineprotected

removes a vertex from the queue of active nodes (actually this does nothing, but checks if this node has no parent edge, as this is the criteria for being no more active)

References BOOST_ASSERT, and boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::has_parent().

template<class Graph , class EdgeCapacityMap , class ResidualCapacityEdgeMap , class ReverseEdgeMap , class PredecessorMap , class ColorMap , class DistanceMap , class IndexMap >
void boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::set_no_parent ( vertex_descriptor  v)
inlineprotected

Member Data Documentation

template<class Graph , class EdgeCapacityMap , class ResidualCapacityEdgeMap , class ReverseEdgeMap , class PredecessorMap , class ColorMap , class DistanceMap , class IndexMap >
tQueue boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::m_active_nodes
protected
template<class Graph , class EdgeCapacityMap , class ResidualCapacityEdgeMap , class ReverseEdgeMap , class PredecessorMap , class ColorMap , class DistanceMap , class IndexMap >
EdgeCapacityMap boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::m_cap_map
protected
template<class Graph , class EdgeCapacityMap , class ResidualCapacityEdgeMap , class ReverseEdgeMap , class PredecessorMap , class ColorMap , class DistanceMap , class IndexMap >
tQueue boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::m_child_orphans
protected
template<class Graph , class EdgeCapacityMap , class ResidualCapacityEdgeMap , class ReverseEdgeMap , class PredecessorMap , class ColorMap , class DistanceMap , class IndexMap >
tEdgeVal boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::m_flow
protected
template<class Graph , class EdgeCapacityMap , class ResidualCapacityEdgeMap , class ReverseEdgeMap , class PredecessorMap , class ColorMap , class DistanceMap , class IndexMap >
Graph& boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::m_g
protected
template<class Graph , class EdgeCapacityMap , class ResidualCapacityEdgeMap , class ReverseEdgeMap , class PredecessorMap , class ColorMap , class DistanceMap , class IndexMap >
iterator_property_map<std::vector<bool>::iterator, IndexMap> boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::m_has_parent_map
protected
template<class Graph , class EdgeCapacityMap , class ResidualCapacityEdgeMap , class ReverseEdgeMap , class PredecessorMap , class ColorMap , class DistanceMap , class IndexMap >
std::vector<bool> boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::m_has_parent_vec
protected
template<class Graph , class EdgeCapacityMap , class ResidualCapacityEdgeMap , class ReverseEdgeMap , class PredecessorMap , class ColorMap , class DistanceMap , class IndexMap >
iterator_property_map<std::vector<bool>::iterator, IndexMap> boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::m_in_active_list_map
protected
template<class Graph , class EdgeCapacityMap , class ResidualCapacityEdgeMap , class ReverseEdgeMap , class PredecessorMap , class ColorMap , class DistanceMap , class IndexMap >
std::vector<bool> boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::m_in_active_list_vec
protected
template<class Graph , class EdgeCapacityMap , class ResidualCapacityEdgeMap , class ReverseEdgeMap , class PredecessorMap , class ColorMap , class DistanceMap , class IndexMap >
IndexMap boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::m_index_map
protected
template<class Graph , class EdgeCapacityMap , class ResidualCapacityEdgeMap , class ReverseEdgeMap , class PredecessorMap , class ColorMap , class DistanceMap , class IndexMap >
out_edge_iterator boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::m_last_grow_edge_end
protected
template<class Graph , class EdgeCapacityMap , class ResidualCapacityEdgeMap , class ReverseEdgeMap , class PredecessorMap , class ColorMap , class DistanceMap , class IndexMap >
out_edge_iterator boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::m_last_grow_edge_it
protected
template<class Graph , class EdgeCapacityMap , class ResidualCapacityEdgeMap , class ReverseEdgeMap , class PredecessorMap , class ColorMap , class DistanceMap , class IndexMap >
vertex_descriptor boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::m_last_grow_vertex
protected
template<class Graph , class EdgeCapacityMap , class ResidualCapacityEdgeMap , class ReverseEdgeMap , class PredecessorMap , class ColorMap , class DistanceMap , class IndexMap >
std::list<vertex_descriptor> boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::m_orphans
protected
template<class Graph , class EdgeCapacityMap , class ResidualCapacityEdgeMap , class ReverseEdgeMap , class PredecessorMap , class ColorMap , class DistanceMap , class IndexMap >
PredecessorMap boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::m_pre_map
protected
template<class Graph , class EdgeCapacityMap , class ResidualCapacityEdgeMap , class ReverseEdgeMap , class PredecessorMap , class ColorMap , class DistanceMap , class IndexMap >
ResidualCapacityEdgeMap boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::m_res_cap_map
protected
template<class Graph , class EdgeCapacityMap , class ResidualCapacityEdgeMap , class ReverseEdgeMap , class PredecessorMap , class ColorMap , class DistanceMap , class IndexMap >
vertex_descriptor boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::m_sink
protected
template<class Graph , class EdgeCapacityMap , class ResidualCapacityEdgeMap , class ReverseEdgeMap , class PredecessorMap , class ColorMap , class DistanceMap , class IndexMap >
vertex_descriptor boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::m_source
protected
template<class Graph , class EdgeCapacityMap , class ResidualCapacityEdgeMap , class ReverseEdgeMap , class PredecessorMap , class ColorMap , class DistanceMap , class IndexMap >
iterator_property_map<std::vector<long>::iterator, IndexMap> boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::m_time_map
protected
template<class Graph , class EdgeCapacityMap , class ResidualCapacityEdgeMap , class ReverseEdgeMap , class PredecessorMap , class ColorMap , class DistanceMap , class IndexMap >
std::vector<long> boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::m_time_vec
protected
template<class Graph , class EdgeCapacityMap , class ResidualCapacityEdgeMap , class ReverseEdgeMap , class PredecessorMap , class ColorMap , class DistanceMap , class IndexMap >
ColorMap boost::detail::bk_max_flow< Graph, EdgeCapacityMap, ResidualCapacityEdgeMap, ReverseEdgeMap, PredecessorMap, ColorMap, DistanceMap, IndexMap >::m_tree_map
protected

The documentation for this class was generated from the following file: