48namespace planar_separators {
110 std::shared_ptr<ArrayBFSTree>
tree;
113 std::string name =
"LTFC";
114 if (useTriangulatingBFS) {
Includes declaration of graph class.
Declaration of base class of all planar separator algorithms.
Basic declarations, included by all source files.
Class for adjacency list elements.
Class for the representation of edges.
Copies of graphs supporting edge splitting.
Data type for general directed graphs (adjacency list representation).
Doubly linked lists (maintaining the length of the list).
Class for the representation of nodes.
Abstract description of all planar separator algorithms.
Computes planar separators using Fundamental Cycles.
virtual double getMaxSeparatorSize(int n) const override
Provides the maximal separator size that this algorithm guarantees as a function of the number of nod...
virtual std::string getSpecificName() const override
Returns the unique name of the core algorithm, to be combined with postprocessors later.
edge chooseEdge() const
Randomly selects the initial edge for the first cycle.
virtual bool doSeparate(const Graph &G, List< node > &separator, List< node > &first, List< node > &second) override
Core of the specific separation algorithm - override this in inheriting classes.
std::shared_ptr< ArrayBFSTree > tree
SeparatorLiptonTarjanFC(bool useTriBFS=false)
Constructor.
virtual bool findCycle(List< node > &separator, List< node > &first, List< node > &second)
Finds a cycle that works as a separator.
Abstract BFSTree that is realized via NodeArrays.
BFSTreeFC(GraphCopy &G, node rootNode)
Constructor.
Triangulating BFS tree that operates on a non-triangulated graph and constructs the triangulation tog...
void visit(node v, node parent, adjEntry adj, SListPure< node > &bfs)
TriangulatingBFSTree(GraphCopy &G, node rootNode)
Constructor.
#define OGDF_EXPORT
Specifies that a function or class is exported by the OGDF dynamic library (shared object / DLL),...
The namespace for all OGDF objects.