48#include <lal/graphs/rooted_tree.hpp>
Uniformly random generation of planar arrangements of a labeled rooted tree.
Definition rand_planar_arrangements.hpp:79
~rand_planar_arrangements()=default
Default destructor.
linear_arrangement yield_arrangement() noexcept
Returns a random planar arrangement.
Definition rand_planar_arrangements.hpp:126
graphs::free_tree m_T_copy
A copy of a free tree.
Definition rand_planar_arrangements.hpp:136
std::vector< std::vector< node > > m_rdata
The random data for all vertices.
Definition rand_planar_arrangements.hpp:146
rand_planar_arrangements(const graphs::free_tree &T, uint32_t seed=0) noexcept
Constructor with a constant reference to a free tree.
rand_planar_arrangements(rand_planar_arrangements &&Gen)=default
Default move constructor.
linear_arrangement get_arrangement() noexcept
Make a random planar arrangement of a rooted tree.
std::mt19937 m_gen
Random number generator.
Definition rand_planar_arrangements.hpp:149
const graphs::free_tree & m_T
The free tree of which we are making planar arrangements uniformly at random.
Definition rand_planar_arrangements.hpp:138
Free tree graph class.
Definition free_tree.hpp:59
Main namespace of the library.
Definition definitions.hpp:48
std::vector< position > linear_arrangement
A linear arrangement of the nodes of a graph.
Definition definitions.hpp:72