1// Copyright 2008-2010 Gordon Woodhull
2// Distributed under the Boost Software License, Version 1.0.
3// (See accompanying file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
4
5#ifndef BOOST_MSM_MPL_GRAPH_ADJACENCY_LIST_GRAPH_HPP_INCLUDED
6#define BOOST_MSM_MPL_GRAPH_ADJACENCY_LIST_GRAPH_HPP_INCLUDED
7
8// graph implementation based on an adjacency list
9// sequence< pair< source_vertex, sequence< pair<edge, target_vertex> > > >
10
11// adjacency_list_graph labels such a sequence as manipulable by the metafunctions
12// in the corresponding implementation header detail/adjacency_list_graph.ipp
13// to produce the metadata structures needed by mpl_graph.hpp
14
15// the public interface
16#include <boost/msm/mpl_graph/mpl_graph.hpp>
17
18// the implementation
19#include <boost/msm/mpl_graph/detail/adjacency_list_graph.ipp>
20
21namespace boost {
22namespace msm {
23namespace mpl_graph {
24
25template<typename AdjacencyList>
26struct adjacency_list_graph {
27 typedef detail::adjacency_list_tag representation;
28 typedef AdjacencyList data;
29};
30
31}
32}
33}
34
35#endif // BOOST_MSM_MPL_GRAPH_ADJACENCY_LIST_GRAPH_HPP_INCLUDED
36

source code of boost/libs/msm/include/boost/msm/mpl_graph/adjacency_list_graph.hpp