OpenSDN source code
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
policy_graph_base.h
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2013 Juniper Networks, Inc. All rights reserved.
3  */
4 
5 #ifndef ctrlplane_policy_graph_base_h
6 #define ctrlplane_policy_graph_base_h
7 
8 #include <boost/graph/graph_traits.hpp>
9 #include <boost/graph/adjacency_list.hpp>
10 
11 class PolicyGraphVertex;
12 class PolicyGraphEdge;
13 
15 public:
17  VertexProperties() : entry(NULL) {
18  }
20  };
21  struct EdgeProperties {
22  EdgeProperties() : edge(NULL) {
23  }
25  };
26 
27  typedef boost::adjacency_list<
28  boost::setS, boost::listS, boost::bidirectionalS,
31  typedef boost::graph_traits<graph_t >::vertex_descriptor vertex_descriptor;
32  typedef boost::graph_traits<graph_t >::edge_descriptor edge_descriptor;
33  typedef boost::graph_traits<graph_t >::adjacency_iterator adjacency_iterator;
34  typedef boost::graph_traits<graph_t >::edge_iterator edge_iterator;
35  typedef boost::graph_traits<graph_t >::out_edge_iterator out_edge_iterator;
36  typedef boost::graph_traits<graph_t >::in_edge_iterator in_edge_iterator;
37  typedef graph_t::inv_adjacency_iterator inv_adjacency_iterator;
38 };
39 
40 #endif // ctrlplane_policy_graph_base_h
boost::graph_traits< graph_t >::out_edge_iterator out_edge_iterator
boost::graph_traits< graph_t >::edge_descriptor edge_descriptor
boost::graph_traits< graph_t >::adjacency_iterator adjacency_iterator
graph_t::inv_adjacency_iterator inv_adjacency_iterator
boost::graph_traits< graph_t >::vertex_descriptor vertex_descriptor
boost::graph_traits< graph_t >::edge_iterator edge_iterator
boost::adjacency_list< boost::setS, boost::listS, boost::bidirectionalS, VertexProperties, EdgeProperties > graph_t
boost::graph_traits< graph_t >::in_edge_iterator in_edge_iterator