#ifndef __CPPLUGINS__INTERFACE__PROCESSOBJECT__HXX__ #define __CPPLUGINS__INTERFACE__PROCESSOBJECT__HXX__ // ------------------------------------------------------------------------- template< class O > void cpPlugins::Interface::ProcessObject:: _MakeOutput( unsigned int idx ) { if( idx >= this->m_Outputs.size( ) ) return; this->m_Outputs[ idx ] = O::New( ); this->m_Outputs[ idx ]->SetSource( this ); } // ------------------------------------------------------------------------- template< class T > T* cpPlugins::Interface::ProcessObject:: _Input( unsigned int idx ) { if( idx < this->m_Inputs.size( ) ) return( dynamic_cast< T* >( this->m_Inputs[ idx ].GetPointer( ) ) ); else return( NULL ); } // ------------------------------------------------------------------------- template< class T > const T* cpPlugins::Interface::ProcessObject:: _Input( unsigned int idx ) const { if( idx < this->m_Inputs.size( ) ) return( dynamic_cast< const T* >( this->m_Inputs[ idx ].GetPointer( ) ) ); else return( NULL ); } // ------------------------------------------------------------------------- template< class T > T* cpPlugins::Interface::ProcessObject:: _Output( unsigned int idx ) { if( idx < this->m_Outputs.size( ) ) return( dynamic_cast< T* >( this->m_Outputs[ idx ].GetPointer( ) ) ); else return( NULL ); } // ------------------------------------------------------------------------- template< class T > const T* cpPlugins::Interface::ProcessObject:: _Output( unsigned int idx ) const { if( idx < this->m_Outputs.size( ) ) return( dynamic_cast< const T* >( this->m_Outputs[ idx ].GetPointer( ) ) ); else return( NULL ); } #endif // __CPPLUGINS__INTERFACE__PROCESSOBJECT__HXX__ // eof - $RCSfile$