#include #include #include #include #include int main( int argc, char* argv[] ) { if( argc < 5 ) { std::cerr << "Usage: " << argv[ 0 ] << " plugins_file" << " input_mesh" << " dimensions pixel_type" << std::endl; return( 1 ); } // fi std::string plugins_file = argv[ 1 ]; std::string input_mesh_file = argv[ 2 ]; std::string dimensions = argv[ 3 ]; std::string pixel_type = argv[ 4 ]; // Create interface typedef cpPlugins::Interface::Interface TInterface; typedef TInterface::TClasses TClasses; TInterface plugins; plugins.Load( plugins_file ); // Create objects typedef cpPlugins::Interface::ProcessObject TProcessObject; typedef TProcessObject::TParameters TParameters; cpPlugins::Interface::ProcessObject* reader; reader = dynamic_cast< TProcessObject* >( plugins.CreateObject( "cpPlugins::Plugins::MeshReader" ) ); if( reader == NULL ) { std::cerr << "No suitable reader found in plugins." << std::endl; return( 1 ); } // fi // Configure reader TParameters reader_params = reader->GetDefaultParameters( ); reader_params[ "FileName" ].second = input_mesh_file; reader_params[ "PixelType" ].second = pixel_type; reader_params[ "MeshDimension" ].second = dimensions; reader->SetParameters( reader_params ); // Execute reader std::string msg = reader->Update( ); if( msg != "" ) std::cerr << "ERROR: " << msg << std::endl; // Free memory delete reader; return( 0 ); } // eof - $RCSfile$