tlp::TreeTest Class Reference
[Graph_test]
Class for testing if the graph is a tree.
More...
#include <TreeTest.h>
List of all members.
Static Public Member Functions
Detailed Description
Class for testing if the graph is a tree.
Member Function Documentation
static void tlp::TreeTest::cleanComputedTree |
( |
Graph * |
graph, |
|
|
Graph * |
tree | |
|
) |
| | [static] |
Clean the graph from a tree previously computed with the computeTree method
Computes a rooted tree from the graph. The algorithm is the following :
- if the graph is a rooted tree, returns the graph
- if the graph is a free tree, returns a rooted clone subgraph
- if the graph is connected, makes a clone subgraph and returns a rooted spanning tree of that clone
- if the graph is not connected, makes a clone subgraph, computes a tree for each of its connected components, adds a simple source and returns the clone.
static bool tlp::TreeTest::isFreeTree |
( |
Graph * |
graph |
) |
[static] |
Returns true if the graph is a topological tree (i.e. if the graph was undirected, there would be no cycle), false otherwise.
static bool tlp::TreeTest::isTree |
( |
Graph * |
graph |
) |
[static] |
Returns true if the graph is a rooted tree (i.e. a graph with one node designated as the root), false otherwise.
static void tlp::TreeTest::makeDirectedTree |
( |
Graph * |
freeTree, |
|
|
node |
root | |
|
) |
| | [inline, static] |
Synonymous of the makeRootedTree method.
static void tlp::TreeTest::makeRootedTree |
( |
Graph * |
freeTree, |
|
|
node |
root | |
|
) |
| | [static] |
Turns a free tree into a rooted tree.