2 #include <cpPlugins/Interface.h>
3 #include <cpPlugins/Workspace.h>
5 int main( int argc, char* argv[] )
10 << "Usage: " << argv[ 0 ]
11 << " plugins_library input_image(s) output_image" << std::endl;
18 cpPlugins::Interface interface;
21 interface.LoadPluginFile( argv[ 1 ] );
23 catch( std::exception& err )
26 << "Interface load failed on \"" << argv[ 1 ] << "\": "
34 cpPlugins::Workspace workspace;
35 workspace.SetInterface( &interface );
36 auto reader = workspace.CreateFilter( "IO", "ImageReader", "reader" );
37 auto writer = workspace.CreateFilter( "IO", "ImageWriter", "writer" );
38 workspace.Connect( "reader", "writer", "Output", "Input" );
41 auto reader_params = reader->GetParameters( );
42 for( int i = 2; i < argc - 1; ++i )
43 reader_params->AddToOpenFileNameList( "FileNames", argv[ i ] );
44 auto writer_params = writer->GetParameters( );
45 writer_params->SetSaveFileName( "FileName", argv[ argc - 1 ] );
48 std::string err = workspace.Execute( );
51 std::cout << "Error caught: " << err << std::endl;