epoc32/include/stdapis/boost/graph/transpose_graph.hpp
branchSymbian2
changeset 2 2fe1408b6811
     1.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.2 +++ b/epoc32/include/stdapis/boost/graph/transpose_graph.hpp	Tue Mar 16 16:12:26 2010 +0000
     1.3 @@ -0,0 +1,40 @@
     1.4 +//
     1.5 +//=======================================================================
     1.6 +// Copyright 1997, 1998, 1999, 2000 University of Notre Dame.
     1.7 +// Authors: Andrew Lumsdaine, Lie-Quan Lee, Jeremy G. Siek
     1.8 +//
     1.9 +// Distributed under the Boost Software License, Version 1.0. (See
    1.10 +// accompanying file LICENSE_1_0.txt or copy at
    1.11 +// http://www.boost.org/LICENSE_1_0.txt)
    1.12 +//=======================================================================
    1.13 +//
    1.14 +#ifndef BOOST_GRAPH_TRANSPOSE_HPP
    1.15 +#define BOOST_GRAPH_TRANSPOSE_HPP
    1.16 +
    1.17 +#include <boost/config.hpp>
    1.18 +#include <boost/graph/graph_traits.hpp>
    1.19 +#include <boost/graph/reverse_graph.hpp>
    1.20 +#include <boost/graph/copy.hpp>
    1.21 +
    1.22 +
    1.23 +namespace boost {
    1.24 +
    1.25 +  template <class VertexListGraph, class MutableGraph> 
    1.26 +  void transpose_graph(const VertexListGraph& G, MutableGraph& G_T)
    1.27 +  {
    1.28 +    reverse_graph<VertexListGraph> R(G);
    1.29 +    copy_graph(R, G_T);
    1.30 +  }
    1.31 +  
    1.32 +  template <class VertexListGraph, class MutableGraph, 
    1.33 +    class P, class T, class R> 
    1.34 +  void transpose_graph(const VertexListGraph& G, MutableGraph& G_T,
    1.35 +                       const bgl_named_params<P, T, R>& params)
    1.36 +  {
    1.37 +    reverse_graph<VertexListGraph> Rev(G);
    1.38 +    copy_graph(Rev, G_T, params);
    1.39 +  }
    1.40 +
    1.41 +} // namespace boost
    1.42 +
    1.43 +#endif // BOOST_GRAPH_TRANSPOSE_HPP