CAPD RedHom Library
capd::graph Namespace Reference

Namespaces

 _impl
 
 detail
 
 impl
 

Classes

class  BoostGraph
 
struct  BoostGraphVertexAdaptor
 
class  BuildStronglyConnectedComponentsGraph
 
struct  Clique
 
class  ComputeConnectedComponentsOfGridGraph
 
class  ComputeStronglyConnectedComponentsInParallel
 
struct  DirectedCircle
 
struct  DirectedLine
 
struct  DirectedTriangle
 
struct  Fixture
 
struct  GetEdgeIteratorPair
 
struct  GetEdgeIteratorPair< Derived, typename impl::EnableIfNotVoid< typename Derived::Edges >::type >
 
struct  GetInEdgeIteratorPair
 
struct  GetInEdgeIteratorPair< Derived, typename impl::EnableIfNotVoid< typename Derived::InEdges >::type >
 
struct  GetOutEdgeIteratorPair
 
struct  GetOutEdgeIteratorPair< Derived, typename impl::EnableIfNotVoid< typename Derived::OutEdges >::type >
 
class  GraphAlgorithms
 
class  GraphAlgorithms< homAux::ManualComputationalModel >
 
class  GraphAlgorithms< homAux::StdComputationalModel >
 
class  GraphAlgorithms< homAux::TbbComputationalModel >
 
class  GraphOnEdges
 
struct  GraphOnEdgesFixture
 
class  GridGraph
 
struct  IsBidirectional
 
struct  IsBidirectional< Derived, typename impl::EnableIfNotVoid< typename Derived::InEdges >::type >
 
class  NearestNeighboursBFS
 
struct  NoEdges
 
class  StronglyConnectedComponentsGraph
 
class  TransposeGraph
 

Typedefs

template<typename Vertex >
using BoostGraphEdgeAdaptor = typename detail::BoostGraphEdgeAdaptorImpl< Vertex >::type
 
template<typename Graph >
using TransposedGraph = typename TransposeGraph< Graph >::type
 
typedef boost::mpl::vector< DirectedLine< 3 >, DirectedLine< 100 >, DirectedCircle< 3 >, DirectedCircle< 100 >, DirectedTriangle< 100 >, Clique< 5 >, Clique< 10 >, NoEdges< 5 > > GraphFixtures
 

Functions

template<typename Derived >
BoostGraph< Derived > WrapAsBoostGraph (Derived &derived)
 
template<typename Derived >
boost::graph_traits< capd::graph::BoostGraph< Derived > >::vertex_descriptor add_vertex (capd::graph::BoostGraph< Derived > &g)
 
template<typename Derived >
void clear_vertex (typename boost::graph_traits< capd::graph::BoostGraph< Derived >>::vertex_descriptor &v, capd::graph::BoostGraph< Derived > &g)
 
template<typename Derived >
void remove_vertex (typename boost::graph_traits< capd::graph::BoostGraph< Derived >>::vertex_descriptor &v, capd::graph::BoostGraph< Derived > &g)
 
template<typename Derived >
boost::graph_traits< capd::graph::BoostGraph< Derived > >::vertex_descriptor source (const typename capd::graph::BoostGraph< Derived >::Edge &e, const capd::graph::BoostGraph< Derived > &g)
 
template<typename Derived >
boost::graph_traits< capd::graph::BoostGraph< Derived > >::vertex_descriptor target (const typename boost::graph_traits< capd::graph::BoostGraph< Derived >>::edge_descriptor &e, const capd::graph::BoostGraph< Derived > &g)
 
template<typename Derived >
std::pair< typename boost::graph_traits< capd::graph::BoostGraph< Derived > >::edge_descriptor, bool > add_edge (const typename boost::graph_traits< capd::graph::BoostGraph< Derived >>::vertex_descriptor &u, const typename boost::graph_traits< capd::graph::BoostGraph< Derived >>::vertex_descriptor &v, capd::graph::BoostGraph< Derived > &g)
 
template<typename Derived >
void remove_edge (const typename boost::graph_traits< capd::graph::BoostGraph< Derived >>::vertex_descriptor &u, const typename boost::graph_traits< capd::graph::BoostGraph< Derived >>::vertex_descriptor &v, capd::graph::BoostGraph< Derived > &g)
 
template<typename Derived >
void remove_edge (const typename boost::graph_traits< capd::graph::BoostGraph< Derived >>::edge_descriptor &e, capd::graph::BoostGraph< Derived > &g)
 
template<typename Derived >
std::pair< typename boost::graph_traits< capd::graph::BoostGraph< Derived > >::out_edge_iterator, typename boost::graph_traits< capd::graph::BoostGraph< Derived > >::out_edge_iterator > out_edges (const typename boost::graph_traits< capd::graph::BoostGraph< Derived >>::vertex_descriptor &v, const capd::graph::BoostGraph< Derived > &g)
 
template<typename Derived >
std::pair< typename boost::graph_traits< capd::graph::BoostGraph< Derived > >::adjacency_iterator, typename boost::graph_traits< capd::graph::BoostGraph< Derived > >::adjacency_iterator > adjacent_vertices (const typename boost::graph_traits< capd::graph::BoostGraph< Derived >>::vertex_descriptor &v, const capd::graph::BoostGraph< Derived > &g)
 
template<typename Derived >
std::pair< typename boost::graph_traits< capd::graph::BoostGraph< Derived > >::in_edge_iterator, typename boost::graph_traits< capd::graph::BoostGraph< Derived > >::in_edge_iterator > in_edges (const typename boost::graph_traits< capd::graph::BoostGraph< Derived >>::vertex_descriptor &v, const capd::graph::BoostGraph< Derived > &g)
 
template<typename Derived >
const boost::graph_traits< capd::graph::BoostGraph< Derived > >::degree_size_type out_degree (const typename boost::graph_traits< capd::graph::BoostGraph< Derived >>::vertex_descriptor &v, const capd::graph::BoostGraph< Derived > &g)
 
template<typename Derived >
const boost::graph_traits< capd::graph::BoostGraph< Derived > >::degree_size_type in_degree (const typename boost::graph_traits< capd::graph::BoostGraph< Derived >>::vertex_descriptor &v, const capd::graph::BoostGraph< Derived > &g)
 
template<typename Derived >
const boost::graph_traits< capd::graph::BoostGraph< Derived > >::degree_size_type degree (const typename boost::graph_traits< capd::graph::BoostGraph< Derived >>::vertex_descriptor &v, const capd::graph::BoostGraph< Derived > &g)
 
template<typename Derived >
const boost::graph_traits< capd::graph::BoostGraph< Derived > >::vertices_size_type num_vertices (const capd::graph::BoostGraph< Derived > &g)
 
template<typename Derived >
std::pair< typename boost::graph_traits< capd::graph::BoostGraph< Derived > >::vertex_iterator, typename boost::graph_traits< capd::graph::BoostGraph< Derived > >::vertex_iterator > vertices (const capd::graph::BoostGraph< Derived > &g)
 
template<typename Derived >
std::pair< typename boost::graph_traits< capd::graph::BoostGraph< Derived > >::edge_iterator, typename boost::graph_traits< capd::graph::BoostGraph< Derived > >::edge_iterator > edges (const capd::graph::BoostGraph< Derived > &g)
 
template<typename Derived >
const boost::graph_traits< capd::graph::BoostGraph< Derived > >::edges_size_type num_edges (const capd::graph::BoostGraph< Derived > &g)
 
template<typename Derived >
capd::graph::BoostGraph< Derived >::VertexIdMap get (boost::vertex_index_t, const capd::graph::BoostGraph< Derived > &g)
 
template<typename Graph , typename IsValid >
BuildStronglyConnectedComponentsGraph< Graph, IsValid >::result_type CallBuildStronglyConnectedComponentsGraph (Graph &graph, IsValid isValid)
 
template<typename Graph >
BuildStronglyConnectedComponentsGraph< Graph >::result_type CallBuildStronglyConnectedComponentsGraph (Graph &graph)
 
template<typename GridGraph >
ComputeConnectedComponentsOfGridGraph< GridGraph >::result_type CallComputeConnectedComponentsOfGridGraph (GridGraph &graph)
 
template<typename Graph , typename ComponentMap >
auto CallComputeStronglyConnectedComponentsInParallel (Graph &graph, ComponentMap componentMap, typename Graph::Id invalidComponent)
 
template<typename Rng >
auto CreateGraphOnEdges (size_t size, Rng &&edges)
 
template<int DIM, typename Shape , typename VertexValidator >
GridGraph< DIM, VertexValidator > CreateGridGraph (const Shape &shape, VertexValidator vertexValidator)
 
template<typename Graph >
auto CallNearestNeighboursBFS (Graph &graph, typename Graph::Id starting, size_t distanceLimit)
 
template<typename Graph , typename Visit >
void CallNearestNeighboursBFS (Graph &graph, typename Graph::Id starting, size_t distanceLimit, Visit visit)
 
template<typename Graph >
auto CallTransposeGraph (Graph &graph)
 

Typedef Documentation

template<typename Vertex >
using capd::graph::BoostGraphEdgeAdaptor = typedef typename detail::BoostGraphEdgeAdaptorImpl<Vertex>::type
template<typename Graph >
using capd::graph::TransposedGraph = typedef typename TransposeGraph<Graph>::type

Function Documentation

template<typename Derived >
std::pair<typename boost::graph_traits<capd::graph::BoostGraph<Derived> >::edge_descriptor, bool> capd::graph::add_edge ( const typename boost::graph_traits< capd::graph::BoostGraph< Derived >>::vertex_descriptor &  u,
const typename boost::graph_traits< capd::graph::BoostGraph< Derived >>::vertex_descriptor &  v,
capd::graph::BoostGraph< Derived > &  g 
)
template<typename Derived >
boost::graph_traits<capd::graph::BoostGraph<Derived> >::vertex_descriptor capd::graph::add_vertex ( capd::graph::BoostGraph< Derived > &  g)
template<typename Derived >
std::pair<typename boost::graph_traits<capd::graph::BoostGraph<Derived> >::adjacency_iterator, typename boost::graph_traits<capd::graph::BoostGraph<Derived> >::adjacency_iterator> capd::graph::adjacent_vertices ( const typename boost::graph_traits< capd::graph::BoostGraph< Derived >>::vertex_descriptor &  v,
const capd::graph::BoostGraph< Derived > &  g 
)
template<typename Graph , typename IsValid >
BuildStronglyConnectedComponentsGraph<Graph, IsValid>::result_type capd::graph::CallBuildStronglyConnectedComponentsGraph ( Graph &  graph,
IsValid  isValid 
)
template<typename Graph >
BuildStronglyConnectedComponentsGraph<Graph>::result_type capd::graph::CallBuildStronglyConnectedComponentsGraph ( Graph &  graph)
template<typename GridGraph >
ComputeConnectedComponentsOfGridGraph<GridGraph>::result_type capd::graph::CallComputeConnectedComponentsOfGridGraph ( GridGraph graph)
template<typename Graph , typename ComponentMap >
auto capd::graph::CallComputeStronglyConnectedComponentsInParallel ( Graph &  graph,
ComponentMap  componentMap,
typename Graph::Id  invalidComponent 
)
template<typename Graph >
auto capd::graph::CallNearestNeighboursBFS ( Graph &  graph,
typename Graph::Id  starting,
size_t  distanceLimit 
)
template<typename Graph , typename Visit >
void capd::graph::CallNearestNeighboursBFS ( Graph &  graph,
typename Graph::Id  starting,
size_t  distanceLimit,
Visit  visit 
)
template<typename Graph >
auto capd::graph::CallTransposeGraph ( Graph &  graph)
template<typename Derived >
void capd::graph::clear_vertex ( typename boost::graph_traits< capd::graph::BoostGraph< Derived >>::vertex_descriptor &  v,
capd::graph::BoostGraph< Derived > &  g 
)
template<typename Rng >
auto capd::graph::CreateGraphOnEdges ( size_t  size,
Rng &&  edges 
)
template<int DIM, typename Shape , typename VertexValidator >
GridGraph<DIM, VertexValidator> capd::graph::CreateGridGraph ( const Shape &  shape,
VertexValidator  vertexValidator 
)
template<typename Derived >
const boost::graph_traits<capd::graph::BoostGraph<Derived> >::degree_size_type capd::graph::degree ( const typename boost::graph_traits< capd::graph::BoostGraph< Derived >>::vertex_descriptor &  v,
const capd::graph::BoostGraph< Derived > &  g 
)
template<typename Derived >
std::pair<typename boost::graph_traits<capd::graph::BoostGraph<Derived> >::edge_iterator, typename boost::graph_traits<capd::graph::BoostGraph<Derived> >::edge_iterator> capd::graph::edges ( const capd::graph::BoostGraph< Derived > &  g)
template<typename Derived >
capd::graph::BoostGraph<Derived>::VertexIdMap capd::graph::get ( boost::vertex_index_t  ,
const capd::graph::BoostGraph< Derived > &  g 
)
template<typename Derived >
const boost::graph_traits<capd::graph::BoostGraph<Derived> >::degree_size_type capd::graph::in_degree ( const typename boost::graph_traits< capd::graph::BoostGraph< Derived >>::vertex_descriptor &  v,
const capd::graph::BoostGraph< Derived > &  g 
)
template<typename Derived >
std::pair<typename boost::graph_traits<capd::graph::BoostGraph<Derived> >::in_edge_iterator, typename boost::graph_traits<capd::graph::BoostGraph<Derived> >::in_edge_iterator> capd::graph::in_edges ( const typename boost::graph_traits< capd::graph::BoostGraph< Derived >>::vertex_descriptor &  v,
const capd::graph::BoostGraph< Derived > &  g 
)
template<typename Derived >
const boost::graph_traits<capd::graph::BoostGraph<Derived> >::edges_size_type capd::graph::num_edges ( const capd::graph::BoostGraph< Derived > &  g)
template<typename Derived >
const boost::graph_traits<capd::graph::BoostGraph<Derived> >::vertices_size_type capd::graph::num_vertices ( const capd::graph::BoostGraph< Derived > &  g)
template<typename Derived >
const boost::graph_traits<capd::graph::BoostGraph<Derived> >::degree_size_type capd::graph::out_degree ( const typename boost::graph_traits< capd::graph::BoostGraph< Derived >>::vertex_descriptor &  v,
const capd::graph::BoostGraph< Derived > &  g 
)
template<typename Derived >
std::pair<typename boost::graph_traits<capd::graph::BoostGraph<Derived> >::out_edge_iterator, typename boost::graph_traits<capd::graph::BoostGraph<Derived> >::out_edge_iterator> capd::graph::out_edges ( const typename boost::graph_traits< capd::graph::BoostGraph< Derived >>::vertex_descriptor &  v,
const capd::graph::BoostGraph< Derived > &  g 
)
template<typename Derived >
void capd::graph::remove_edge ( const typename boost::graph_traits< capd::graph::BoostGraph< Derived >>::vertex_descriptor &  u,
const typename boost::graph_traits< capd::graph::BoostGraph< Derived >>::vertex_descriptor &  v,
capd::graph::BoostGraph< Derived > &  g 
)
template<typename Derived >
void capd::graph::remove_edge ( const typename boost::graph_traits< capd::graph::BoostGraph< Derived >>::edge_descriptor &  e,
capd::graph::BoostGraph< Derived > &  g 
)
template<typename Derived >
void capd::graph::remove_vertex ( typename boost::graph_traits< capd::graph::BoostGraph< Derived >>::vertex_descriptor &  v,
capd::graph::BoostGraph< Derived > &  g 
)
template<typename Derived >
boost::graph_traits<capd::graph::BoostGraph<Derived> >::vertex_descriptor capd::graph::source ( const typename capd::graph::BoostGraph< Derived >::Edge &  e,
const capd::graph::BoostGraph< Derived > &  g 
)
template<typename Derived >
boost::graph_traits<capd::graph::BoostGraph<Derived> >::vertex_descriptor capd::graph::target ( const typename boost::graph_traits< capd::graph::BoostGraph< Derived >>::edge_descriptor &  e,
const capd::graph::BoostGraph< Derived > &  g 
)
template<typename Derived >
std::pair<typename boost::graph_traits<capd::graph::BoostGraph<Derived> >::vertex_iterator, typename boost::graph_traits<capd::graph::BoostGraph<Derived> >::vertex_iterator> capd::graph::vertices ( const capd::graph::BoostGraph< Derived > &  g)
template<typename Derived >
BoostGraph<Derived> capd::graph::WrapAsBoostGraph ( Derived &  derived)