TMST* fpa::Base::Dijkstra< _TAlgorithm, _TMST >::
GetMinimumSpanningTree( )
{
TMST* fpa::Base::Dijkstra< _TAlgorithm, _TMST >::
GetMinimumSpanningTree( )
{
TMST* fpa::Base::Dijkstra< _TAlgorithm, _TMST >::
GetMinimumSpanningTree( ) const
{
TMST* fpa::Base::Dijkstra< _TAlgorithm, _TMST >::
GetMinimumSpanningTree( ) const
{
- for( _TIt sIt = this->BeginSeeds( ); sIt != this->EndSeeds( ); ++sIt )
- mst->AddSeed( sIt->Vertex );
+
+ TSeeds seeds = this->GetSeeds( );
+ typename TSeeds::const_iterator sIt = seeds.begin( );
+ for( ; sIt != seeds.end( ); ++sIt )
+ {
+ if( sIt->IsUnified )
+ mst->AddSeed( sIt->Vertex );
+
+ } // rof
}
// -------------------------------------------------------------------------
template< class _TAlgorithm, class _TMST >
void fpa::Base::Dijkstra< _TAlgorithm, _TMST >::
}
// -------------------------------------------------------------------------
template< class _TAlgorithm, class _TMST >
void fpa::Base::Dijkstra< _TAlgorithm, _TMST >::
{
this->Superclass::_UpdateOutputValue( n );
this->GetMinimumSpanningTree( )->SetParent( n.Vertex, n.Parent );
{
this->Superclass::_UpdateOutputValue( n );
this->GetMinimumSpanningTree( )->SetParent( n.Vertex, n.Parent );