Changeset 4a1b38


Ignore:
Timestamp:
08/21/09 11:40:53 (4 years ago)
Author:
Tiago de Paula Peixoto <tiago@…>
Branches:
master, python3
Children:
a89e06
Parents:
dd98132
git-author:
Tiago de Paula Peixoto <tiago@…> (08/21/09 11:36:54)
git-committer:
Tiago de Paula Peixoto <tiago@…> (08/21/09 11:40:53)
Message:
Small fixes in GraphWrap

Use correct types and always pass GraphWrap objects by value.
Location:
src/graph
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • src/graph/graph_util.hh

    r8358ec r4a1b38  
    194194 
    195195//============================================================================== 
     196//remove_edge(e, reverse_graph<G>) 
     197//============================================================================== 
     198template <class Graph> 
     199inline 
     200void remove_edge 
     201(typename graph_traits<reverse_graph<Graph> >::edge_descriptor e, 
     202 reverse_graph<Graph>& g) 
     203{ 
     204    return remove_edge(e,const_cast<Graph&>(g.m_g)); 
     205} 
     206 
     207//============================================================================== 
    196208// add_vertex(filtered_graph<G>) 
    197209//============================================================================== 
  • src/graph/graph_wrap.hh

    r5292b8 r4a1b38  
    4141    typedef Graph orig_graph_t; 
    4242 
     43    typedef typename graph_traits<Graph>::vertex_descriptor vertex_descriptor; 
     44    typedef typename graph_traits<Graph>::edge_descriptor edge_descriptor; 
     45 
    4346    Graph& _g; 
    4447    GraphInterface& _gi; 
     
    5356template <class Graph> 
    5457struct graph_traits<GraphWrap<Graph> >: public graph_traits<Graph> {}; 
     58 
     59template <class Graph> 
     60struct graph_traits<const GraphWrap<Graph> >: 
     61        public graph_traits<const Graph> {}; 
    5562 
    5663template <class Graph> 
     
    166173add_edge(typename graph_traits<GraphWrap<Graph> >::vertex_descriptor u, 
    167174         typename graph_traits<GraphWrap<Graph> >::vertex_descriptor v, 
    168          GraphWrap<Graph>& g) 
     175         GraphWrap<Graph> g) 
    169176{ 
    170177    std::pair<typename graph_traits<GraphWrap<Graph> >::edge_descriptor, bool> 
     
    177184inline void remove_edge 
    178185(typename graph_traits<GraphWrap<Graph> >::edge_descriptor e, 
    179  GraphWrap<Graph>& g) 
     186 GraphWrap<Graph> g) 
    180187{ 
    181188    g._gi.RemoveEdgeIndex(e); 
     
    186193(typename graph_traits<GraphWrap<Graph> >::vertex_descriptor u, 
    187194 typename graph_traits<GraphWrap<Graph> >::vertex_descriptor v, 
    188  Graph& g) 
     195 GraphWrap<Graph> g) 
    189196{ 
    190197    vector<typename graph_traits<GraphWrap<Graph> >::edge_descriptor> 
     
    203210template <class Graph> 
    204211inline typename graph_traits<GraphWrap<Graph> >::vertex_descriptor 
    205 add_vertex(GraphWrap<Graph>& g) 
     212add_vertex(GraphWrap<Graph> g) 
    206213{ 
    207214    return add_vertex(g._g); 
     
    211218inline void clear_vertex 
    212219(typename graph_traits<GraphWrap<Graph> >::vertex_descriptor u, 
    213  GraphWrap<Graph>& g) 
     220 GraphWrap<Graph> g) 
    214221{ 
    215222    typedef GraphWrap<Graph> graph_t; 
     
    232239inline void remove_vertex 
    233240(typename graph_traits<GraphWrap<Graph> >::vertex_descriptor u, 
    234  GraphWrap<Graph>& g) 
     241 GraphWrap<Graph> g) 
    235242{ 
    236243    clear_vertex(u, g); 
     
    242249remove_out_edge_if 
    243250(typename graph_traits<GraphWrap<Graph> >::vertex_descriptor u, 
    244  Predicate predicate, Graph& g) 
     251 Predicate predicate, GraphWrap<Graph> g) 
    245252{ 
    246253    vector<typename graph_traits<GraphWrap<Graph> >::edge_descriptor> 
Note: See TracChangeset for help on using the changeset viewer.