11#ifndef QUETZAL_TREE_TRAITS_H_INCLUDED
12#define QUETZAL_TREE_TRAITS_H_INCLUDED
14#include <boost/graph/adjacency_list.hpp>
24 template <
class... Types>
using model = boost::adjacency_list<Types...>;
Definition binary_tree.hpp:37
Defines the desired graph properties and constraints for a coalescent tree.
Definition tree_traits.hpp:22
boost::vecS vertex_list_type
We don't allow for inserting vertices except at the end and we don't remove vertices....
Definition tree_traits.hpp:31
boost::bidirectionalS directed_type
Coalescent trees are directed acyclic graphs but we need bidirectionality for in-edges access.
Definition tree_traits.hpp:36
boost::setS out_edge_list_type
We want to enforce avoiding multi-graphs (edges with same end nodes)
Definition tree_traits.hpp:27
boost::adjacency_list< Types... > model
Trees are sparse graph in nature, adjacency_matrix would not be justified here.
Definition tree_traits.hpp:24