62#ifndef GENERATE_SPANNING_TREE_PICTURE_H
63#define GENERATE_SPANNING_TREE_PICTURE_H
76template <AlephGraph GT>
81 return NODE_COOKIE(p) ==
nullptr ?
"" :
"SHADOW-NODE";
94template <AlephGraph GT>
99 return ARC_COOKIE(a) ==
nullptr ?
"ARC" :
"SHADOW-ARC";
123template <AlephGraph GT,
class Write_Node,
class Write_Arc, ArcFilter<GT> SA>
126 const double &
xdist,
127 const double &
ydist,
137template <AlephGraph GT,
class Write_Node,
class Write_Arc>
140 const double &
xdist,
141 const double &
ydist,
169template <AlephGraph GT,
class Write_Node,
class Write_Arc, ArcFilter<GT> SA>
172 const double &
xdist,
173 const double &
ydist,
183template <AlephGraph GT,
class Write_Node,
class Write_Arc>
186 const double &
xdist,
187 const double &
ydist,
C++20 concepts for the protocol shared by graph algorithms.
List_Graph< Graph_Node< Node_Info >, Graph_Arc< Arc_Info > > GT
Graph visualization and output generation utilities.
void generate_net_spanning_tree(GT &g, const size_t &nodes_by_level, const double &xdist, const double &ydist, std::ofstream &output)
Generate a net-layout visualization of a spanning tree.
#define ARC_COOKIE(p)
Return the arc cookie
void generate_cross_spanning_tree(GT &g, const size_t &nodes_by_level, const double &xdist, const double &ydist, std::ofstream &output)
Generate a cross-layout visualization of a spanning tree.
#define NODE_COOKIE(p)
Return the node cookie
size_t blossom_maximum_cardinality_matching(const GT &g, DynDlist< typename GT::Arc * > &matching, SA sa=SA())
Alias of compute_maximum_cardinality_general_matching().
void generate_cross_graph(GT &g, const size_t &nodes_by_level, const double &xdist, const double &ydist, std::ostream &out)
Generate a cross-graph layout specification for graphpic.
void generate_net_graph(GT &g, const size_t &nodes_by_level, const double &xdist, const double &ydist, std::ostream &out)
Generate a net-graph layout specification for graphpic.
Default filter for filtered iterators on arcs.
Shading functor for spanning tree arcs.
std::string operator()(typename GT::Arc *a) const
Shading functor for spanning tree nodes.
std::string operator()(typename GT::Node *p) const
Writer that outputs only the node key.