UnCoVer (Using Coverability for Verification)
|
Searching for paths between two vertices. More...
Classes | |
struct | QueueEl |
Public Member Functions | |
PathFinder (graphs::Hypergraph const &graph, IDType start, IDType end, std::set< IDType > forbidden) | |
const std::set< IDType > * | getNextPath () |
const std::set< IDType > * | getNextPath (std::set< IDType > tmpForbidden) |
const std::set< IDType > * | getCurrentPath () |
void | reset () |
int | getPathCount () |
Private Attributes | |
graphs::Hypergraph const & | graph |
IDType | start |
IDType | end |
vector< std::set< IDType > > | ids |
std::queue< QueueEl > | sq |
std::set< IDType > | forbidden |
int | currentPath |
Searching for paths between two vertices.
Each time getNextPath is executed, a new path will be searched. As result, you will get the ids of the vertices which lie on the path. If no (more) path is found, the function will return null. To iterate over paths which already have been found, call the reset method and then call getNextPath again.