5 #include <boost/graph/adjacency_list.hpp>
6 #include <boost/numeric/ublas/matrix.hpp>
7 #include <boost/graph/properties.hpp>
70 return _extra_elements;
147 return graph() != NULL;
Definition: matroid_decomposition.hpp:83
bool _is_R10
Definition: matroid_decomposition.hpp:171
bool is_graphic() const
Definition: matroid_decomposition.hpp:145
matroid_graph * _cograph
Definition: matroid_decomposition.hpp:170
bool is_R10() const
Definition: matroid_decomposition.hpp:136
virtual bool is_leaf() const
Definition: matroid_decomposition.hpp:109
const matroid_graph * graph() const
Definition: matroid_decomposition.hpp:118
const matroid_graph * cograph() const
Definition: matroid_decomposition.hpp:127
virtual ~decomposed_matroid_leaf()
Definition: matroid_decomposition.cpp:50
virtual bool is_regular() const
Definition: matroid_decomposition.hpp:163
matroid_graph * _graph
Definition: matroid_decomposition.hpp:169
decomposed_matroid_leaf(matroid_graph *graph, matroid_graph *cograph, bool is_R10, const std::set< int > &elements, const matroid_element_set &extra_elements)
Definition: matroid_decomposition.cpp:39
bool is_cographic() const
Definition: matroid_decomposition.hpp:154
Definition: matroid_decomposition.hpp:179
decomposed_matroid * _second
Definition: matroid_decomposition.hpp:253
decomposed_matroid_separator(decomposed_matroid *first, decomposed_matroid *second, int type, const std::set< int > &elements, const matroid_element_set &extra_elements)
Definition: matroid_decomposition.cpp:69
int separation_type() const
Definition: matroid_decomposition.hpp:210
virtual bool is_leaf() const
Definition: matroid_decomposition.hpp:237
int _type
Definition: matroid_decomposition.hpp:254
decomposed_matroid * first() const
Definition: matroid_decomposition.hpp:219
virtual ~decomposed_matroid_separator()
Definition: matroid_decomposition.cpp:80
@ ONE_SEPARATION
Definition: matroid_decomposition.hpp:202
decomposed_matroid * second() const
Definition: matroid_decomposition.hpp:228
virtual bool is_regular() const
Definition: matroid_decomposition.hpp:246
@ THREE_SEPARATION
Definition: matroid_decomposition.hpp:204
@ TWO_SEPARATION
Definition: matroid_decomposition.hpp:203
decomposed_matroid * _first
Definition: matroid_decomposition.hpp:252
Definition: matroid_decomposition.hpp:26
decomposed_matroid(const matroid_element_set &elements, const matroid_element_set &extra_elements)
Definition: matroid_decomposition.cpp:13
virtual bool is_leaf() const =0
const matroid_element_set & extra_elements() const
Definition: matroid_decomposition.hpp:68
virtual bool is_regular() const =0
const matroid_element_set & elements() const
Definition: matroid_decomposition.hpp:59
virtual ~decomposed_matroid()
Definition: matroid_decomposition.cpp:24
Definition: algorithm.hpp:14
std::set< int > matroid_element_set
Definition: matroid_decomposition.hpp:19
boost::adjacency_list< boost::vecS, boost::vecS, boost::undirectedS, boost::no_property, matroid_element_property > matroid_graph
Definition: matroid_graph.hpp:21