20 #ifndef TULIP_ACYCLICITY_TEST_H
21 #define TULIP_ACYCLICITY_TEST_H
23 #include <tulip/Observable.h>
24 #include <tulip/MutableContainer.h>
25 #include <tulip/Graph.h>
28 class BooleanProperty;
44 n1(n1),n2(n2),e1(e1),e2(e2),e3(e3),old(old) {
68 static bool isAcyclic(
const Graph *graph);
78 static void makeAcyclic(
Graph* graph, std::vector<edge> &reversed, std::vector<tlp::SelfLoops> &selfLoops);
88 static bool acyclicTest(
const Graph * graph, std::vector<edge> *obstructionEdges = NULL);
99 TLP_HASH_MAP<const Graph*, bool> resultsBuffer;
102 virtual void treatEvent(
const Event&);
106 #endif //TULIP_ACYCLICITY_TEST_H
Stores all the added information on self loops.
The edge struct represents an edge in a Graph object.
The node struct represents a node in a Graph object.
Event is the base class for all events used in the Observation mechanism.
This class provides tests for acyclicity on a graph. Results are cached in a map of graphs and result...
The Observable class is the base of Tulip's observation system.