1 #ifndef __CPPLUGINS__PROCESSOBJECT__HXX__
2 #define __CPPLUGINS__PROCESSOBJECT__HXX__
4 // -------------------------------------------------------------------------
5 template< class _TType >
6 _TType* cpPlugins::ProcessObject::
7 GetInputData( const std::string& name )
9 auto in = this->GetInput( name );
12 auto i = in->GetITK< _TType >( );
13 auto v = in->GetVTK< _TType >( );
14 if ( i != NULL ) return( i );
15 else if( v != NULL ) return( v );
22 // -------------------------------------------------------------------------
23 template< class _TType >
24 _TType* cpPlugins::ProcessObject::
25 GetOutputData( const std::string& name )
27 auto out = this->GetOutput( name );
30 auto i = out->GetITK< _TType >( );
31 auto v = out->GetVTK< _TType >( );
32 if ( i != NULL ) return( i );
33 else if( v != NULL ) return( v );
40 // -------------------------------------------------------------------------
42 void cpPlugins::ProcessObject::
43 _AddOutput( const std::string& name )
45 auto i = this->m_Outputs.find( name );
46 if( i == this->m_Outputs.end( ) )
48 typename O::Pointer o = O::New( );
50 this->m_Outputs[ name ] = o;
56 // -------------------------------------------------------------------------
58 F* cpPlugins::ProcessObject::
61 F* filter = this->GetITK< F >( );
64 typename F::Pointer filter_ptr = F::New( );
65 this->m_ITKObject = filter_ptr;
66 this->m_VTKObject = NULL;
67 filter = filter_ptr.GetPointer( );
74 // -------------------------------------------------------------------------
76 F* cpPlugins::ProcessObject::
79 F* filter = this->GetVTK< F >( );
82 vtkSmartPointer< F > filter_ptr = vtkSmartPointer< F >::New( );
83 this->m_ITKObject = NULL;
84 this->m_VTKObject = filter_ptr;
85 filter = filter_ptr.GetPointer( );
92 #endif // __CPPLUGINS__PROCESSOBJECT__HXX__