auto od = orig->GetOutput( *oIt );
for( auto iIt = inputs.begin( ); iIt != inputs.end( ); ++iIt )
{
- auto id = dest->GetInput( *iIt );
- if( od != NULL && od == id )
+ unsigned int nInputs = dest->GetInputSize( *iIt );
+ for( unsigned int k = 0; k < nInputs; ++k )
{
- tinyxml2::XMLElement* e_conn = doc->NewElement( "Connection" );
- tinyxml2::XMLElement* e_orig = doc->NewElement( "Origin" );
- tinyxml2::XMLElement* e_dest = doc->NewElement( "Destination" );
- e_orig->SetAttribute( "Filter", orig->GetName( ) );
- e_orig->SetAttribute( "Name", oIt->c_str( ) );
- e_dest->SetAttribute( "Filter", dest->GetName( ) );
- e_dest->SetAttribute( "Name", iIt->c_str( ) );
- e_conn->LinkEndChild( e_orig );
- e_conn->LinkEndChild( e_dest );
- root->LinkEndChild( e_conn );
-
- } // fi
+ auto id = dest->GetInput( *iIt, k );
+ if( od != NULL && od == id )
+ {
+ tinyxml2::XMLElement* e_conn = doc->NewElement( "Connection" );
+ tinyxml2::XMLElement* e_orig = doc->NewElement( "Origin" );
+ tinyxml2::XMLElement* e_dest = doc->NewElement( "Destination" );
+ e_orig->SetAttribute( "Filter", orig->GetName( ) );
+ e_orig->SetAttribute( "Name", oIt->c_str( ) );
+ e_dest->SetAttribute( "Filter", dest->GetName( ) );
+ e_dest->SetAttribute( "Name", iIt->c_str( ) );
+ e_conn->LinkEndChild( e_orig );
+ e_conn->LinkEndChild( e_dest );
+ root->LinkEndChild( e_conn );
+
+ } // fi
+
+ } // rof
} // rof