+++ /dev/null
-#include <iostream>
-#include <cpPlugins/Interface/Plugins.h>
-
-int main( int argc, char* argv[] )
-{
- // Manage inputs
- if( argc < 3 )
- {
- std::cerr
- << "Usage: " << argv[ 0 ]
- << " image_file(s) output_file" << std::endl;
- return( 1 );
-
- } // fi
-
- // Create interface and load library
- cpPlugins::Interface::Plugins::Pointer interface =
- cpPlugins::Interface::Plugins::New( );
- try
- {
- interface->LoadEnvironments( );
- interface->GuessPlugins( );
- }
- catch( std::exception& err )
- {
- std::cerr << "Error caught: " << err.what( ) << std::endl;
- return( 1 );
-
- } // yrt
-
- // Create filters
- auto reader = interface->CreateProcessObject( "IO", "ImageReader" );
- auto writer = interface->CreateProcessObject( "IO", "ImageWriter" );
- if( reader.IsNull( ) )
- {
- std::cerr
- << "Error caugh: Could not create a valid image reader."
- << std::endl;
- return( 1 );
-
- } // fi
- if( writer.IsNull( ) )
- {
- std::cerr
- << "Error caugh: Could not create a valid image writer."
- << std::endl;
- return( 1 );
-
- } // fi
-
- // Configure reader
- reader->PrintExecutionOn( );
- auto parameters = reader->GetParameters( );
- for( int i = 1; i < argc - 1; ++i )
- parameters->AddToOpenFileNameList( "FileNames", argv[ i ] );
-
- // Configure writer
- writer->PrintExecutionOn( );
- parameters = writer->GetParameters( );
- parameters->SetSaveFileName( "FileName", argv[ argc - 1 ] );
-
- // Connect filters
- writer->SetInput( "Input", reader->GetOutput( "Output" ) );
-
- // Execute reader
- try
- {
- writer->Update( );
- }
- catch( std::exception& err )
- {
- std::cerr << "Error caugth: " << err.what( ) << std::endl;
- return( 1 );
-
- } // yrt
-
- // Finish
- return( 0 );
-}
-
-// eof - $RCSfile$