]> Creatis software - FrontAlgorithms.git/blobdiff - lib/fpa/Base/Algorithm.hxx
...
[FrontAlgorithms.git] / lib / fpa / Base / Algorithm.hxx
index 4ad828c773dbae60c5ec2c90b796649e094079c1..df7133661849ac07a07e034a18e45bbaf94be743 100644 (file)
@@ -36,6 +36,15 @@ _TQueueNode( const _TVertex& v, const _TQueueNode& n )
   this->FrontId = n.FrontId;
 }
 
+// -------------------------------------------------------------------------
+template < class _TFilter, class _TVertex, class _TOutput >
+void fpa::Base::Algorithm< _TFilter, _TVertex, _TOutput >::
+ClearSeeds( )
+{
+  this->m_Seeds.clear( );
+  this->Modified( );
+}
+
 // -------------------------------------------------------------------------
 template < class _TFilter, class _TVertex, class _TOutput >
 void fpa::Base::Algorithm< _TFilter, _TVertex, _TOutput >::
@@ -95,13 +104,23 @@ GenerateData( )
     this->_InitResults( this->m_InitResult );
 
     // Main loop
-    this->_Loop( );
+    do
+      this->_Loop( );
+    while( this->_ContinueGenerateData( ) );
 
   } // fi
   this->_AfterGenerateData( );
   this->InvokeEvent( TEndEvent( ) );
 }
 
+// -------------------------------------------------------------------------
+template < class _TFilter, class _TVertex, class _TOutput >
+bool fpa::Base::Algorithm< _TFilter, _TVertex, _TOutput >::
+_ContinueGenerateData( )
+{
+  return( false );
+}
+
 // -------------------------------------------------------------------------
 template < class _TFilter, class _TVertex, class _TOutput >
 void fpa::Base::Algorithm< _TFilter, _TVertex, _TOutput >::