- // Connect inputs
- TPlugins::TStringContainer input_names;
- plugins.GetActiveFilterInputsNames( input_names );
- for( auto iIt = input_names.begin( ); iIt != input_names.end( ); ++iIt )
- plugins.ConnectInputInActiveFilter( image_name, *iIt );
-
- // Configure
- TPlugins::TParameters* filter_params = plugins.GetActiveFilterParameters( );
- filter_params->SetReal( "LowerThresholdValue", lower );
- filter_params->SetReal( "UpperThresholdValue", upper );
- filter_params->SetUint( "InsideValue", 1 );
- filter_params->SetUint( "OutsideValue", 0 );
-
- // Execute
- TPlugins::TStringContainer output_names;
- try
- {
- if( !( plugins.UpdateActiveFilter( output_names, image_name ) ) )
+ // Connect inputs
+ TPlugins::TStringContainer input_names;
+ plugins.GetActiveFilterInputsNames( input_names );
+ for( auto iIt = input_names.begin( ); iIt != input_names.end( ); ++iIt )
+ plugins.ConnectInputInActiveFilter( image_name, *iIt );
+
+ // Configure
+ TPlugins::TParameters* filter_params = plugins.GetActiveFilterParameters( );
+ filter_params->SetReal( "LowerThresholdValue", lower[ i ] );
+ filter_params->SetReal( "UpperThresholdValue", upper[ i ] );
+ filter_params->SetUint( "InsideValue", i + 10 );
+ filter_params->SetUint( "OutsideValue", 0 );
+
+ // Configure outputs
+ TPlugins::TStringContainer output_names;
+ plugins.GetActiveFilterOutputsNames( output_names );
+
+ std::stringstream obj_name_str;
+ obj_name_str << "output_" << i;
+ plugins.SetOutputNameInActiveFilter(
+ obj_name_str.str( ),
+ *( output_names.begin( ) )
+ );
+
+ // Execute
+ output_names.clear( );
+ try