6 #ifndef ________CFG_H__________
7 #define ________CFG_H__________
10 #include <filteredCFG.h>
11 #include <boost/function.hpp>
12 #include <boost/graph/adjacency_list.hpp>
13 #include <boost/shared_ptr.hpp>
23 typedef boost::function<bool(const VirtualCFG::CFGNode&)>
CFGNodeFilter;
45 class ControlFlowGraph :
public boost::adjacency_list<boost::vecS, boost::vecS, boost::bidirectionalS,
46 CFGNodePtr, CFGEdgePtr>
50 typedef GraphTraits::vertex_descriptor
Vertex;
51 typedef GraphTraits::edge_descriptor
Edge;
132 void toDot(
const std::string& filename)
const;
162 std::map<CFGNode, Vertex>& nodesAdded,
163 std::set<CFGNode>& nodesProcessed);