Boost  v1.57.0
doxygen for www.boost.org
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
boost::detail::dominator_visitor< Graph, IndexMap, TimeMap, PredMap, DomTreePredMap > Class Template Reference

#include <dominator_tree.hpp>

Collaboration diagram for boost::detail::dominator_visitor< Graph, IndexMap, TimeMap, PredMap, DomTreePredMap >:

Public Member Functions

 dominator_visitor (const Graph &g, const Vertex &entry, DomTreePredMap domTreePredMap)
 
void operator() (const Vertex &n, const TimeMap &dfnumMap, const PredMap &parentMap, const Graph &g)
 

Public Attributes

PredMap samedomMap
 

Protected Member Functions

const Vertex ancestor_with_lowest_semi_ (const Vertex &v, const TimeMap &dfnumMap)
 Evaluate function in Tarjan's path compression. More...
 

Protected Attributes

std::vector< Vertex > semi_
 
std::vector< Vertex > ancestor_
 
std::vector< Vertex > samedom_
 
std::vector< Vertex > best_
 
PredMap semiMap_
 
PredMap ancestorMap_
 
PredMap bestMap_
 
std::vector< std::deque< Vertex > > buckets_
 
iterator_property_map
< typename std::vector
< std::deque< Vertex >
>::iterator, IndexMap > 
bucketMap_
 
const Vertex & entry_
 
DomTreePredMap domTreePredMap_
 
const VerticesSizeType numOfVertices_
 

Constructor & Destructor Documentation

template<class Graph, class IndexMap, class TimeMap, class PredMap, class DomTreePredMap>
boost::detail::dominator_visitor< Graph, IndexMap, TimeMap, PredMap, DomTreePredMap >::dominator_visitor ( const Graph &  g,
const Vertex &  entry,
DomTreePredMap  domTreePredMap 
)
inline
Parameters
g[in] the target graph of the dominator tree
entry[in] the entry node of g
domTreePredMap[out] the immediate dominator map (parent map in dominator tree)

Member Function Documentation

template<class Graph, class IndexMap, class TimeMap, class PredMap, class DomTreePredMap>
const Vertex boost::detail::dominator_visitor< Graph, IndexMap, TimeMap, PredMap, DomTreePredMap >::ancestor_with_lowest_semi_ ( const Vertex &  v,
const TimeMap &  dfnumMap 
)
inlineprotected

Member Data Documentation

template<class Graph, class IndexMap, class TimeMap, class PredMap, class DomTreePredMap>
std::vector<Vertex> boost::detail::dominator_visitor< Graph, IndexMap, TimeMap, PredMap, DomTreePredMap >::ancestor_
protected
template<class Graph, class IndexMap, class TimeMap, class PredMap, class DomTreePredMap>
PredMap boost::detail::dominator_visitor< Graph, IndexMap, TimeMap, PredMap, DomTreePredMap >::ancestorMap_
protected
template<class Graph, class IndexMap, class TimeMap, class PredMap, class DomTreePredMap>
std::vector<Vertex> boost::detail::dominator_visitor< Graph, IndexMap, TimeMap, PredMap, DomTreePredMap >::best_
protected
template<class Graph, class IndexMap, class TimeMap, class PredMap, class DomTreePredMap>
PredMap boost::detail::dominator_visitor< Graph, IndexMap, TimeMap, PredMap, DomTreePredMap >::bestMap_
protected
template<class Graph, class IndexMap, class TimeMap, class PredMap, class DomTreePredMap>
iterator_property_map<typename std::vector<std::deque<Vertex> >::iterator, IndexMap> boost::detail::dominator_visitor< Graph, IndexMap, TimeMap, PredMap, DomTreePredMap >::bucketMap_
protected
template<class Graph, class IndexMap, class TimeMap, class PredMap, class DomTreePredMap>
std::vector< std::deque<Vertex> > boost::detail::dominator_visitor< Graph, IndexMap, TimeMap, PredMap, DomTreePredMap >::buckets_
protected
template<class Graph, class IndexMap, class TimeMap, class PredMap, class DomTreePredMap>
DomTreePredMap boost::detail::dominator_visitor< Graph, IndexMap, TimeMap, PredMap, DomTreePredMap >::domTreePredMap_
protected
template<class Graph, class IndexMap, class TimeMap, class PredMap, class DomTreePredMap>
const Vertex& boost::detail::dominator_visitor< Graph, IndexMap, TimeMap, PredMap, DomTreePredMap >::entry_
protected
template<class Graph, class IndexMap, class TimeMap, class PredMap, class DomTreePredMap>
const VerticesSizeType boost::detail::dominator_visitor< Graph, IndexMap, TimeMap, PredMap, DomTreePredMap >::numOfVertices_
protected
template<class Graph, class IndexMap, class TimeMap, class PredMap, class DomTreePredMap>
std::vector<Vertex> boost::detail::dominator_visitor< Graph, IndexMap, TimeMap, PredMap, DomTreePredMap >::samedom_
protected
template<class Graph, class IndexMap, class TimeMap, class PredMap, class DomTreePredMap>
PredMap boost::detail::dominator_visitor< Graph, IndexMap, TimeMap, PredMap, DomTreePredMap >::samedomMap
template<class Graph, class IndexMap, class TimeMap, class PredMap, class DomTreePredMap>
std::vector<Vertex> boost::detail::dominator_visitor< Graph, IndexMap, TimeMap, PredMap, DomTreePredMap >::semi_
protected
template<class Graph, class IndexMap, class TimeMap, class PredMap, class DomTreePredMap>
PredMap boost::detail::dominator_visitor< Graph, IndexMap, TimeMap, PredMap, DomTreePredMap >::semiMap_
protected

The documentation for this class was generated from the following file: