+++ /dev/null
-#include <cpPluginsIO/ImageWriter.h>
-#include <cpPlugins/Image.h>
-#include <cpPlugins_Instances/ImagesIO.h>
-
-// -------------------------------------------------------------------------
-cpPluginsIO::ImageWriter::
-ImageWriter( )
- : Superclass( )
-{
- this->_AddInput( "Input" );
- this->m_Parameters.Clear( );
- this->m_Parameters.ConfigureAsSaveFileName( "FileName" );
- this->m_Parameters.SetAcceptedFileExtensions(
- "FileName",
- "Image files (*.bmp *.png *.jpg *.jpeg *.dcm *.mhd *.nhdr *.nrrd *.tiff)"
- );
-}
-
-// -------------------------------------------------------------------------
-cpPluginsIO::ImageWriter::
-~ImageWriter( )
-{
-}
-
-// -------------------------------------------------------------------------
-void cpPluginsIO::ImageWriter::
-_GenerateData( )
-{
- auto image = this->GetInputData< itk::DataObject >( "Input" );
- cpPlugins_Image_Demangle_Dim ( _GD0, image, 2 );
- else cpPlugins_Image_Demangle_Dim( _GD0, image, 3 );
- else this->_Error( "No valid input image dimension" );
-}
-
-// -------------------------------------------------------------------------
-template< class _TImage >
-void cpPluginsIO::ImageWriter::
-_GD0( _TImage* image )
-{
- static const unsigned int D = _TImage::ImageDimension;
- cpPlugins_Image_Demangle_Pixel_AllScalars ( _GD1, image, D );
- else cpPlugins_Image_Demangle_ColorPixel_AllScalars( _GD1, image, RGB, D );
- else cpPlugins_Image_Demangle_ColorPixel_AllScalars( _GD1, image, RGBA, D );
-}
-
-// -------------------------------------------------------------------------
-template< class _TImage >
-void cpPluginsIO::ImageWriter::
-_GD1( _TImage* image )
-{
- typedef itk::ImageFileWriter< _TImage > _TFilter;
- auto f = this->_CreateITK< _TFilter >( );
- f->SetFileName( this->m_Parameters.GetSaveFileName( "FileName" ) );
- f->SetInput( image );
- try
- {
- f->Update( );
- }
- catch( itk::ExceptionObject& err )
- {
- this->_Error( err.GetDescription( ) );
-
- } // yrt
-}
-
-// eof - $RCSfile$