65 : useTriBFS {useTriangulatingBFS}, treeHeightIterations(treeHeightIt + 1) { }
77 std::shared_ptr<BFSTreeClassical>
tree;
80 std::string name =
"LT";
84 if (treeHeightIterations > 1) {
85 name +=
"-THM-" + std::to_string(treeHeightIterations - 1);
Includes declaration of graph class.
Declaration of base class of all planar separator algorithms.
Basic declarations, included by all source files.
Class for the representation of edges.
Data type for general directed graphs (adjacency list representation).
Doubly linked lists (maintaining the length of the list).
Abstract description of all planar separator algorithms.
Computes planar separators according to Lipton and Tarjan 1979.
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.
void fillLists(List< node > &separator, List< node > &first, List< node > &second) const
Fills the lists with the cycle / inside / outside once the cycle is ready.
std::shared_ptr< BFSTreeClassical > tree
virtual std::string getSpecificName() const override
Returns the unique name of the core algorithm, to be combined with postprocessors later.
virtual void makeTree()
Creates the BFS tree used by the algorithm.
unsigned int treeHeightIterations
SeparatorLiptonTarjan(bool useTriangulatingBFS=false, unsigned int treeHeightIt=0)
Constructor.
virtual double getMaxSeparatorSize(int n) const override
Provides the maximal separator size that this algorithm guarantees as a function of the number of nod...
edge chooseEdge() const
Chooses the initial edge for the very first cycle.
#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.