JoinBoundingBoxes( )
: Superclass( )
{
- this->_ConfigureInput( "Input0", true, false );
- this->_ConfigureInput( "Input1", false, false );
- this->_ConfigureInput( "Input2", false, false );
- this->_ConfigureInput( "Input3", false, false );
- this->_ConfigureInput( "Input4", false, false );
- this->_ConfigureInput( "Input5", false, false );
+ this->_ConfigureInput( "Inputs", true, true );
this->_ConfigureOutput< cpPlugins::DataObjects::BoundingBox >( "Output" );
}
{
typedef cpPlugins::BaseObjects::DataObject _TDO;
typedef cpPlugins::DataObjects::BoundingBox _TBB;
- _TDO* dobjs[ 5 ];
-
- auto do0 = dynamic_cast< _TDO* >( this->GetInput( "Input0" ) );
- dobjs[ 0 ] = dynamic_cast< _TDO* >( this->GetInput( "Input1" ) );
- dobjs[ 1 ] = dynamic_cast< _TDO* >( this->GetInput( "Input2" ) );
- dobjs[ 2 ] = dynamic_cast< _TDO* >( this->GetInput( "Input3" ) );
- dobjs[ 3 ] = dynamic_cast< _TDO* >( this->GetInput( "Input4" ) );
- dobjs[ 4 ] = dynamic_cast< _TDO* >( this->GetInput( "Input5" ) );
- auto out = dynamic_cast< _TBB* >( this->GetOutput( "Output" ) );
- out->SetDataObject( do0 );
- for( unsigned int d = 0; d < 5; ++d )
+ auto out = dynamic_cast< _TBB* >( this->GetOutput( "Output" ) );
+ unsigned int nInputs = this->GetInputSize( "Inputs" );
+ for( unsigned int i = 0; i < nInputs; ++i )
{
- if( dobjs[ d ] != NULL )
+ auto in = dynamic_cast< _TDO* >( this->GetInput( "Inputs", i ) );
+ if( i > 0 )
{
_TBB::Pointer bb = _TBB::New( );
- bb->SetDataObject( dobjs[ d ] );
+ bb->SetDataObject( in );
out->Blend( bb );
-
- } // fi
+ }
+ else
+ out->SetDataObject( in );
} // rof
}