digiKam
Digikam::Graph< VertexProperties, EdgeProperties >::GraphSearch Class Reference

Classes

class  BreadthFirstSearchVisitor
 
class  CommonVisitor
 
class  DepthFirstSearchVisitor
 
class  lessThanMapEdgeToTarget
 

Public Member Functions

template<class GraphType >
void breadthFirstSearch (const GraphType &graph, const Vertex &v, bool invertGraph)
 
template<class GraphType >
void depthFirstSearch (const GraphType &graph, const Vertex &v, bool invertGraph)
 
template<class GraphType , typename LessThan >
void depthFirstSearchSorted (const GraphType &graph, const Vertex &v, bool invertGraph, LessThan lessThan)
 

Public Attributes

QList< Vertexvertices
 

Protected Member Functions

template<class IncidenceGraph , class DFSVisitor , class ColorMap , typename LessThan >
void depth_first_search_sorted (const IncidenceGraph &g, Vertex u, DFSVisitor &vis, ColorMap color, LessThan lessThan)
 This is boost's simple, old, recursive DFS algorithm adapted with lessThan. More...
 

Member Function Documentation

◆ breadthFirstSearch()

template<class VertexProperties , class EdgeProperties >
template<class GraphType >
void Digikam::Graph< VertexProperties, EdgeProperties >::GraphSearch::breadthFirstSearch ( const GraphType &  graph,
const Vertex v,
bool  invertGraph 
)
inline

◆ depth_first_search_sorted()

template<class VertexProperties , class EdgeProperties >
template<class IncidenceGraph , class DFSVisitor , class ColorMap , typename LessThan >
void Digikam::Graph< VertexProperties, EdgeProperties >::GraphSearch::depth_first_search_sorted ( const IncidenceGraph &  g,
Vertex  u,
DFSVisitor &  vis,
ColorMap  color,
LessThan  lessThan 
)
inlineprotected

This is boost's simple, old, recursive DFS algorithm adapted with lessThan.

Sort edges. The lessThan we have takes vertices, so we use a lessThan which maps the given edges to their targets, and calls our vertex lessThan.

◆ depthFirstSearch()

template<class VertexProperties , class EdgeProperties >
template<class GraphType >
void Digikam::Graph< VertexProperties, EdgeProperties >::GraphSearch::depthFirstSearch ( const GraphType &  graph,
const Vertex v,
bool  invertGraph 
)
inline

◆ depthFirstSearchSorted()

template<class VertexProperties , class EdgeProperties >
template<class GraphType , typename LessThan >
void Digikam::Graph< VertexProperties, EdgeProperties >::GraphSearch::depthFirstSearchSorted ( const GraphType &  graph,
const Vertex v,
bool  invertGraph,
LessThan  lessThan 
)
inline

Member Data Documentation

◆ vertices


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