123456789101112131415161718192021222324252627282930313233343536373839404142 |
- // Copyright 2008-2010 Gordon Woodhull
- // Distributed under the Boost Software License, Version 1.0.
- // (See accompanying file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
- #ifndef BOOST_MSM_MPL_GRAPH_DETAIL_GRAPH_IMPLEMENTATION_INTERFACE_IPP_INCLUDED
- #define BOOST_MSM_MPL_GRAPH_DETAIL_GRAPH_IMPLEMENTATION_INTERFACE_IPP_INCLUDED
- // forward definitions of the producer metafunctions that need to be specialized for
- // each graph representation
- namespace boost {
- namespace msm {
- namespace mpl_graph {
- namespace detail {
-
- // Edge->Target map for a Source for out_*, degree
- template<typename RepresentationTag, typename Source, typename GraphData>
- struct produce_out_map;
- // Edge->Source map for a Target for in_*, degree
- template<typename RepresentationTag, typename Target, typename GraphData>
- struct produce_in_map;
-
- // Edge->pair<Source,Target> map for source, target
- template<typename RepresentationTag, typename GraphData>
- struct produce_edge_st_map;
-
- // Vertex set for VertexListGraph
- template<typename RepresentationTag, typename GraphData>
- struct produce_vertex_set;
-
- // Edge set for EdgeListGraph
- template<typename RepresentationTag, typename GraphData>
- struct produce_edge_set;
- } // namespaces
- }
- }
- }
- #endif // BOOST_MSM_MPL_GRAPH_DETAIL_GRAPH_IMPLEMENTATION_INTERFACE_IPP_INCLUDED
|