47#define OGDF_PCTREE_REUSE_NODES
69 size_t m_timestamp = 0;
73#ifdef OGDF_PCTREE_REUSE_NODES
83 PCTreeForest(
bool autodelete =
true) : m_nodeArrayRegistry(this), m_autodelete(autodelete) {};
Implementation of disjoint sets data structures (union-find functionality).
A registry that allows labelling the nodes of a PC-tree.
Basic declarations, included by all source files.
A Union/Find data structure for maintaining disjoint sets.
A node in a PC-tree that is either a P-node, C-node or leaf.
Multiple PCTrees can be created within the same PCTreeForest, which allows merging the trees later on...
void clear(void)
Delete all trees created by makeTree().
PCTreeRegistry m_nodeArrayRegistry
PCTreeForest(bool autodelete=true)
std::vector< PCNode * > m_cNodes
PCTree * makeTree(void)
Create a new tree that may be automatically deleted when this forest is deleted.
std::vector< PCTree * > m_trees
A PC-tree represents a set of cyclic orders of its leaves by labeling its inner nodes as either P- or...
A registry that allows labelling the nodes of a PC-tree.
#define OGDF_EXPORT
Specifies that a function or class is exported by the OGDF dynamic library (shared object / DLL),...
const UnionFindIndex UNIONFINDINDEX_EMPTY