#include <cpPlugins/Image.h>
#include <fpa_Instances/Filters.h>
-#include <fpa/Image/Functors/RegionGrowAllBelongsFunction.h>
-
-#include <fpa/Base/Algorithm.hxx>
-#include <fpa/Base/Dijkstra.hxx>
-#include <fpa/Image/Algorithm.hxx>
-#include <fpa/Image/Dijkstra.hxx>
-#include <fpa/VTK/Image2DObserver.hxx>
-#include <fpa/VTK/Image3DObserver.hxx>
// -------------------------------------------------------------------------
fpaPlugins::ImageDijkstra::
}
// -------------------------------------------------------------------------
-std::string fpaPlugins::ImageDijkstra::
+void fpaPlugins::ImageDijkstra::
_GenerateData( )
{
- auto image = this->GetInputData( "Input" )->GetITK< itk::DataObject >( );
- std::string cpPlugin_Image_Demangle_Pixel_AllScalars( r, _GD0, image, 2 );
- if( r != "" ) cpPlugin_Image_Demangle_Pixel_AllScalars( r, _GD0, image, 3 );
- return( r );
+ auto image = this->GetInputData< itk::DataObject >( "Input" );
+ cpPlugins_Image_Demangle_Pixel_AllScalars ( _GD0, image, 2 );
+ else cpPlugins_Image_Demangle_Pixel_AllScalars( _GD0, image, 3 );
+ else this->_Error( "No valid input image." );
}
// -------------------------------------------------------------------------
template< class _TImage >
-std::string fpaPlugins::ImageDijkstra::
+void fpaPlugins::ImageDijkstra::
_GD0( _TImage* image )
{
- typedef fpa::Image::Dijkstra< _TImage, _TImage > _TFilter;
- typedef typename _TFilter::TResult _TCost;
- typedef itk::FunctionBase< _TCost, _TCost > _TCostFunctor;
- typedef typename _TFilter::TMinimumSpanningTree _TMST;
-
- if( image == NULL )
- return( "fpaPlugins::ImageDijkstra: Invalid image type." );
+ typedef float _TPixel;
+ typedef itk::Image< _TPixel, _TImage::ImageDimension > _TOutImage;
+ typedef fpa::Image::Dijkstra< _TImage, _TOutImage > _TFilter;
+ typedef typename _TFilter::TResult _TCost;
+ typedef itk::FunctionBase< _TCost, _TCost > _TCostFunctor;
+ typedef typename _TFilter::TMinimumSpanningTree _TMST;
auto base_functor =
- this->GetInputData( "CostFunctor" )->GetITK< itk::LightObject >( );
+ this->GetInputData< itk::LightObject >( "CostFunctor" );
_TCostFunctor* functor = NULL;
if( base_functor != NULL )
{
functor = dynamic_cast< _TCostFunctor* >( base_functor );
if( functor == NULL )
- return( "fpaPlugins::ImageDijkstra: Given cost functor is invalid." );
+ this->_Error( "Given cost functor is invalid." );
} // fi
this->_ExecuteFilter( filter );
// Connect remaining output
- this->GetOutputData( "Output" )->SetITK( filter->GetOutput( ) );
- this->GetOutputData( "MST" )->SetITK( filter->GetMinimumSpanningTree( ) );
- return( "" );
+ this->GetOutput( "MST" )->SetITK( filter->GetMinimumSpanningTree( ) );
}
// eof - $RCSfile$