#include <CGraph.h>
Public Member Functions | |
CGraph (uint numMaxNodes) | |
~CGraph () | |
void | clear () |
CGNode * | addNode () |
CGNode * | addNode (int tag) |
void | addEdge (CGNode *from, CGNode *to, CapType weight) |
bool | setEdgeWeight (CGNode *from, CGNode *to, CapType cap) |
void | runDijkstra (CGNode *start) |
CGNode * | runDijkstraMulti (CGNode **start, int numStart, CGNode **end, int numEnd) |
CGNode ** | getShortestPath (CGNode *dest, int *length=NULL) |
void | printShortestPath (CGNode *dest) |
CGraph::CGraph | ( | uint | numMaxNodes | ) |
CGraph::~CGraph | ( | ) |
void CGraph::clear | ( | ) |
CGNode * CGraph::addNode | ( | ) |
References CGNode::dijkPrev, CGNode::dijkWeight, CGNode::first, CGNode::heapId, and CGNode::type.
Referenced by CutPlanar::preFlow().
CGNode * CGraph::addNode | ( | int | tag | ) |
References CGNode::dijkPrev, CGNode::dijkWeight, CGNode::first, CGNode::heapId, CGNode::tag, and CGNode::type.
References CGEdge::head, CGEdge::next, CGEdge::sister, and CGEdge::weight.
Referenced by CutPlanar::preFlow().
void CGraph::runDijkstra | ( | CGNode * | start | ) |
References DijkHeap::decrease(), DijkHeap::deleteMin(), CGNode::dijkPrev, CDijkNode::dijkWeight, CGNode::dijkWeight, CGNode::first, CGEdge::head, CGNode::heapId, DijkHeap::insert(), CGEdge::next, CDijkNode::node, and CGEdge::weight.
Referenced by CutPlanar::preFlow().
References CGNode::dijkPrev.
void CGraph::printShortestPath | ( | CGNode * | dest | ) |
References CGNode::dijkPrev, and CGNode::tag.