48#include <lal/graphs/rooted_tree.hpp>
Uniformly random generation of projective arrangements of a labeled rooted tree.
Definition rand_projective_arrangements.hpp:79
linear_arrangement yield_arrangement() noexcept
Returns a random projective arrangement.
Definition rand_projective_arrangements.hpp:117
std::vector< std::vector< node > > m_rdata
The random data for all vertices.
Definition rand_projective_arrangements.hpp:131
rand_projective_arrangements(const graphs::rooted_tree &rT, uint32_t seed=0) noexcept
Constructor with tree.
std::mt19937 m_gen
Random number generator.
Definition rand_projective_arrangements.hpp:134
rand_projective_arrangements(rand_projective_arrangements &&Gen)=default
Default move constructor.
linear_arrangement get_arrangement() noexcept
Make a random projective arrangement of a rooted tree.
~rand_projective_arrangements()=default
Default destructor.
const graphs::rooted_tree & m_rT
The rooted tree of which we are making projective arrangements uniformly at random.
Definition rand_projective_arrangements.hpp:123
Rooted tree graph class.
Definition rooted_tree.hpp:107
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