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) {}
67 static bool isAcyclic(
const Graph *graph);
77 static void makeAcyclic(
Graph *graph, std::vector<edge> &reversed,
78 std::vector<tlp::SelfLoops> &selfLoops);
90 static bool acyclicTest(
const Graph *graph, std::vector<edge> *obstructionEdges =
nullptr);
102 TLP_HASH_MAP<const Graph *, bool> resultsBuffer;
105 void treatEvent(
const Event &)
override;
109 #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.