2 #include <cpPlugins/Interface/Loader.h>
4 int main( int argc, char* argv[] )
9 << "Usage: " << argv[ 0 ]
10 << " input_file(s) output_file" << std::endl;
16 cpPlugins::Interface::Loader loader;
19 loader.RegisterFromDirectory( "." );
21 catch( std::exception& err )
23 std::cerr << "Error caught: " << err.what( ) << std::endl;
28 // Try to get any errors
32 auto reader = loader.CreateFilter( "IO", "ImageReader", "reader" );
33 auto writer = loader.CreateFilter( "IO", "ImageWriter", "writer" );
35 // Configure parameters
36 auto reader_params = reader->GetParameters( );
37 auto writer_params = writer->GetParameters( );
38 for( int i = 1; i < argc - 1; ++i )
39 reader_params->AddToOpenFileNameList( "FileNames", argv[ i ] );
40 writer_params->SetSaveFileName( "FileName", argv[ argc - 1 ] );
43 writer->SetInput( "Input", reader->GetOutput( "Output" ) );
46 reader->PrintExecutionOn( );
47 writer->PrintExecutionOn( );
50 catch( std::exception& err )
52 std::cerr << "Error caught: " << err.what( ) << std::endl;
57 // Close connection to loaded plugins file
58 loader.UnRegisterAll( );