+
+ struct TNode
+ {
+ TVertex Vertex;
+ TVertex Parent;
+ TFrontId FrontId;
+
+ // Hack to hide the fact that seed values need to be initialized
+ mutable TOutputValue Value;
+ };
+ struct TNodeCompare
+ {
+ bool operator()( const TNode& a, const TNode& b ) const
+ {
+ TCompare cmp;
+ return( cmp( a.Vertex, b.Vertex ) );
+ }
+ };
+ typedef std::set< TNode, TNodeCompare > TSeeds;