-#include <plugins/Plugins/SkeletonFilter.h>
+#include <Plugins/SkeletonFilter.h>
#include <cpPlugins/DataObjects/Image.h>
+#include <cpPlugins/DataObjects/Image_Demanglers.h>
#include <cpPlugins/DataObjects/Skeleton.h>
+
#include <fpa/Image/SkeletonFilter.h>
-#include <fpa/Image/SkeletonFilter.hxx>
-#include <itkSimpleDataObjectDecorator.hxx>
+#include <itkImage.h>
+
+/* TODO
+ #include <fpa/Image/SkeletonFilter.hxx>
+ #include <itkSimpleDataObjectDecorator.hxx>
+*/
// -------------------------------------------------------------------------
fpaPlugins::SkeletonFilter::
_GenerateData( )
{
auto o = this->GetInputData( "DistanceMap" );
- cpPlugins_Demangle_ImageScalars_Dims( o, _GD0 );
- else this->_Error( "Invalid input image." );
+ cpPlugins_Demangle_Image_RealPixels_AllDims_1( o, _GD0 )
+ this->_Error( "Invalid input image." );
}
// -------------------------------------------------------------------------
void fpaPlugins::SkeletonFilter::
_GD0( _TDistanceMap* dmap )
{
- auto cmap = this->GetInputData< _TDistanceMap >( "CostMap" );
- if( cmap != NULL )
- this->_GD1( dmap, cmap );
- else
- this->_Error( "Temporary error: invalid cost map." );
+ auto o = this->GetInputData( "CostMap" );
+ cpPlugins_Demangle_Image_RealPixels_2( o, _GD1, _TDistanceMap::ImageDimension, dmap )
+ this->_Error( "Invalid input image." );
}
// -------------------------------------------------------------------------
-template< class _TDistanceMap, class _TCostMap >
+template< class _TCostMap, class _TDistanceMap >
void fpaPlugins::SkeletonFilter::
-_GD1( _TDistanceMap* dmap, _TCostMap* cmap )
+_GD1( _TCostMap* cmap, _TDistanceMap* dmap )
{
typedef fpa::Image::SkeletonFilter< _TDistanceMap, _TCostMap > _TFilter;
typedef typename _TFilter::TMST _TMST;
this->GetOutput( "Skeleton" )->SetITK( filter->GetSkeleton( ) );
this->GetOutput( "Marks" )->SetITK( filter->GetMarks( ) );
-
/* TODO
auto ep = filter->GetEndPoints( );
auto bi = filter->GetBifurcations( );