#include <boost/config.hpp>
#include <boost/bimap.hpp>
#include <boost/type_traits.hpp>
#include <boost/concept/requires.hpp>
#include <boost/graph/graph_traits.hpp>
#include <boost/graph/undirected_dfs.hpp>
#include <boost/graph/connected_components.hpp>
#include <boost/graph/filtered_graph.hpp>
#include <vector>
#include <stack>
#include <map>
Namespaces | |
boost | |
Duration formatting facet for input. | |
boost::detail | |
Typedefs | |
typedef GraphTraits::directed_category | boost::directed_category |
typedef GraphTraits::vertex_descriptor | boost::vertex_descriptor |
typedef GraphTraits::edge_descriptor | boost::edge_descriptor |
typedef GraphTraits::edges_size_type | boost::edges_size_type |
typedef GraphTraits::edge_iterator | boost::edge_iterator |
typedef Seq::value_type | boost::seq_value_type |
typedef Seq::size_type | boost::seq_size_type |
typedef Order::value_type | boost::order_value_type |
typedef Order::size_type | boost::order_size_type |
typedef bimaps::bimap < bimaps::set_of< int > , bimaps::set_of < order_value_type > > | boost::bimap_type |
typedef bimap_type::value_type | boost::bimap_value |
Functions | |
template<typename Graph , typename Func , typename Seq , typename Map > | |
void | boost::detail::rec_two_graphs_common_spanning_trees (const Graph &iG, bimap< bimaps::set_of< int >, bimaps::set_of< typename graph_traits< Graph >::edge_descriptor > > iG_bimap, Map aiG_inL, Map diG, const Graph &vG, bimap< bimaps::set_of< int >, bimaps::set_of< typename graph_traits< Graph >::edge_descriptor > > vG_bimap, Map avG_inL, Map dvG, Func func, Seq inL) |
template<typename Graph , typename Order , typename Func , typename Seq > | |
boost::BOOST_CONCEPT_REQUIRES (((RandomAccessContainer< Order >))((IncidenceGraphConcept< Graph >))((UnaryFunction< Func, void, Seq >))((Mutable_RandomAccessContainer< Seq >))((VertexAndEdgeListGraphConcept< Graph >)),(void)) two_graphs_common_spanning_trees(const Graph &iG | |
boost::BOOST_STATIC_ASSERT ((is_same< order_value_type, edge_descriptor >::value)) | |
boost::BOOST_CONCEPT_ASSERT ((Convertible< order_size_type, edges_size_type >)) | |
boost::BOOST_CONCEPT_ASSERT ((Convertible< seq_size_type, edges_size_type >)) | |
boost::BOOST_STATIC_ASSERT ((is_same< seq_value_type, bool >::value)) | |
boost::BOOST_STATIC_ASSERT ((is_same< directed_category, undirected_tag >::value)) | |
boost::if (num_vertices(iG)!=num_vertices(vG)) return | |
boost::if (inL.size()!=num_edges(iG)||inL.size()!=num_edges(vG)) return | |
boost::if (iG_map.size()!=num_edges(iG)||vG_map.size()!=num_edges(vG)) return | |
boost::for (order_size_type i=0;i< iG_map.size();++i) iG_bimap.insert(bimap_value(i | |
boost::for (;current!=last;++current) if(iG_bimap.right.find(*current) | |
boost::undirected_dfs (iG, iG_vis, associative_property_map< std::map< vertex_descriptor, default_color_type > >(vertex_color), associative_property_map< std::map< edge_descriptor, default_color_type > >(edge_color)) | |
boost::undirected_dfs (vG, vG_vis, associative_property_map< std::map< vertex_descriptor, default_color_type > >(vertex_color), associative_property_map< std::map< edge_descriptor, default_color_type > >(edge_color)) | |
boost::while (!iG_buf.empty()) | |
boost::while (!vG_buf.empty()) | |
boost::undirected_dfs (make_filtered_graph(iG, detail::inL_edge_status< associative_property_map< std::map< edge_descriptor, bool > > >(aiG_inL)), make_dfs_visitor(detail::cycle_finder< std::stack< edge_descriptor > >(&iG_buf)), associative_property_map< std::map< vertex_descriptor, default_color_type > >(vertex_color), associative_property_map< std::map< edge_descriptor, default_color_type > >(edge_color)) | |
boost::undirected_dfs (make_filtered_graph(vG, detail::inL_edge_status< associative_property_map< std::map< edge_descriptor, bool > > >(avG_inL)), make_dfs_visitor(detail::cycle_finder< std::stack< edge_descriptor > >(&vG_buf)), associative_property_map< std::map< vertex_descriptor, default_color_type > >(vertex_color), associative_property_map< std::map< edge_descriptor, default_color_type > >(edge_color)) | |
boost::if (iG_buf.empty()&&vG_buf.empty()) | |
template<typename Graph , typename Func , typename Seq > | |
boost::BOOST_CONCEPT_REQUIRES (((IncidenceGraphConcept< Graph >))((EdgeListGraphConcept< Graph >)),(void)) two_graphs_common_spanning_trees(const Graph &iG | |
boost::for (;curr!=last;++curr) iGO.push_back(*curr) | |
boost::two_graphs_common_spanning_trees (iG, iGO, vG, vGO, func, inL) | |
Variables | |
Order | boost::iG_map |
Order const Graph & | boost::vG |
Order const Graph Order | boost::vG_map |
Order const Graph Order Func | boost::func |
Order const Graph Order Func Seq | boost::inL |
bimap_type | boost::iG_bimap |
bimap_type | boost::vG_bimap |
edge_iterator | boost::current |
edge_iterator | boost::last |
std::stack< edge_descriptor > | boost::iG_buf |
std::stack< edge_descriptor > | boost::vG_buf |
std::map< vertex_descriptor, edge_descriptor > | boost::tree_map |
std::map< vertex_descriptor, vertex_descriptor > | boost::pred_map |
std::map< vertex_descriptor, int > | boost::dist_map |
std::map< vertex_descriptor, int > | boost::low_map |
detail::bridges_visitor < associative_property_map < std::map< vertex_descriptor, edge_descriptor > >, associative_property_map < std::map< vertex_descriptor, vertex_descriptor > >, associative_property_map < std::map< vertex_descriptor, int > >, associative_property_map < std::map< vertex_descriptor, int > >, std::stack < edge_descriptor > > | boost::iG_vis (associative_property_map< std::map< vertex_descriptor, edge_descriptor > >(tree_map), associative_property_map< std::map< vertex_descriptor, vertex_descriptor > >(pred_map), associative_property_map< std::map< vertex_descriptor, int > >(dist_map), associative_property_map< std::map< vertex_descriptor, int > >(low_map), iG_buf) |
detail::bridges_visitor < associative_property_map < std::map< vertex_descriptor, edge_descriptor > >, associative_property_map < std::map< vertex_descriptor, vertex_descriptor > >, associative_property_map < std::map< vertex_descriptor, int > >, associative_property_map < std::map< vertex_descriptor, int > >, std::stack < edge_descriptor > > | boost::vG_vis (associative_property_map< std::map< vertex_descriptor, edge_descriptor > >(tree_map), associative_property_map< std::map< vertex_descriptor, vertex_descriptor > >(pred_map), associative_property_map< std::map< vertex_descriptor, int > >(dist_map), associative_property_map< std::map< vertex_descriptor, int > >(low_map), vG_buf) |
std::map< edge_descriptor, bool > | boost::iG_inL |
std::map< edge_descriptor, bool > | boost::vG_inL |
associative_property_map < std::map< edge_descriptor, bool > > | boost::aiG_inL (iG_inL) |
associative_property_map < std::map< edge_descriptor, bool > > | boost::avG_inL (vG_inL) |
std::vector< edge_descriptor > | boost::iGO |
std::vector< edge_descriptor > | boost::vGO |
edge_iterator | boost::curr |