48#include <lal/linear_arrangement.hpp>
49#include <lal/graphs/rooted_tree.hpp>
50#include <lal/detail/data_array.hpp>
Uniformly random generation of projective arrangements of a labeled rooted tree.
Definition: rand_projective_arrangements.hpp:81
linear_arrangement yield_arrangement() noexcept
Returns a random projective arrangement.
Definition: rand_projective_arrangements.hpp:119
detail::data_array< detail::data_array< node > > m_rdata
The random data for all vertices.
Definition: rand_projective_arrangements.hpp:133
std::mt19937 m_gen
Random number generator.
Definition: rand_projective_arrangements.hpp:136
linear_arrangement get_arrangement() noexcept
Make a random projective arrangement of a rooted tree.
rand_projective_arrangements(const graphs::rooted_tree &rT, uint64_t seed=0) noexcept
Constructor with tree.
const graphs::rooted_tree & m_rT
The rooted tree of which we are making projective arrangements uniformly at random.
Definition: rand_projective_arrangements.hpp:125
Rooted tree graph class.
Definition: rooted_tree.hpp:103
Linear arrangement of vertices.
Definition: linear_arrangement.hpp:103
Main namespace of the library.
Definition: basic_types.hpp:50
Wrapper of a C array for autmatic deallocation of memory.
Definition: data_array.hpp:59