1 #ifndef __CPPLUGINS__INTERFACE__PROCESSOBJECT__HXX__
2 #define __CPPLUGINS__INTERFACE__PROCESSOBJECT__HXX__
4 // -------------------------------------------------------------------------
6 T* cpPlugins::Interface::ProcessObject::
7 GetInputData( const std::string& id )
9 _TDataContainer::iterator i = this->m_Inputs.find( id );
10 if( i != this->m_Inputs.end( ) )
11 return( dynamic_cast< T* >( i->second->GetPointer( ) ) );
16 // -------------------------------------------------------------------------
18 const T* cpPlugins::Interface::ProcessObject::
19 GetInputData( const std::string& id ) const
21 _TDataContainer::const_iterator i = this->m_Inputs.find( id );
22 if( i != this->m_Inputs.end( ) )
23 return( dynamic_cast< const T* >( i->second->GetPointer( ) ) );
28 // -------------------------------------------------------------------------
30 T* cpPlugins::Interface::ProcessObject::
31 GetOutputData( const std::string& id )
33 _TDataContainer::iterator i = this->m_Outputs.find( id );
34 if( i != this->m_Outputs.end( ) )
35 return( dynamic_cast< T* >( i->second->GetPointer( ) ) );
40 // -------------------------------------------------------------------------
42 const T* cpPlugins::Interface::ProcessObject::
43 GetOutputData( const std::string& id ) const
45 _TDataContainer::const_iterator i = this->m_Outputs.find( id );
46 if( i != this->m_Outputs.end( ) )
47 return( dynamic_cast< const T* >( i->second->GetPointer( ) ) );
52 // -------------------------------------------------------------------------
54 void cpPlugins::Interface::ProcessObject::
55 _AddOutput( const std::string& id )
57 auto oIt = this->m_Outputs.find( id );
58 if( oIt == this->m_Outputs.end( ) )
60 this->m_Outputs[ id ] = new DataObject::Pointer( );
61 oIt = this->m_Outputs.find( id );
64 *( oIt->second ) = O::New( );
65 ( *( oIt->second ) )->SetSource( this );
69 // -------------------------------------------------------------------------
71 F* cpPlugins::Interface::ProcessObject::
74 F* filter = dynamic_cast< F* >( this->m_ITKObject.GetPointer( ) );
77 typename F::Pointer ptr = F::New( );
78 this->m_ITKObject = ptr;
79 filter = ptr.GetPointer( );
80 this->m_VTKObject = NULL;
86 // -------------------------------------------------------------------------
88 F* cpPlugins::Interface::ProcessObject::
91 F* filter = dynamic_cast< F* >( this->m_VTKObject.GetPointer( ) );
95 this->m_VTKObject = filter;
96 this->m_ITKObject = NULL;
102 #endif // __CPPLUGINS__INTERFACE__PROCESSOBJECT__HXX__