From 8f7701d0e6e7e15eb820a77041e0ed11debc19d8 Mon Sep 17 00:00:00 2001 From: Leonardo Florez-Valencia Date: Fri, 15 Apr 2016 15:00:47 -0500 Subject: [PATCH] ... --- lib/Airways/fpa2Airways/Converter.h | 25 ++++++-- lib/Airways/fpa2Airways/Converter.hxx | 84 +++++++++++++++++++++++++++ 2 files changed, 103 insertions(+), 6 deletions(-) create mode 100644 lib/Airways/fpa2Airways/Converter.hxx diff --git a/lib/Airways/fpa2Airways/Converter.h b/lib/Airways/fpa2Airways/Converter.h index da2f214..13e31b2 100644 --- a/lib/Airways/fpa2Airways/Converter.h +++ b/lib/Airways/fpa2Airways/Converter.h @@ -1,5 +1,5 @@ -#ifndef __FPA2AIRWAYS__CONVERTER__H__ -#define __FPA2AIRWAYS__CONVERTER__H__ +#ifndef __AIRWAYS__FPA2AIRWAYS__CONVERTER__H__ +#define __AIRWAYS__FPA2AIRWAYS__CONVERTER__H__ #include #include @@ -12,13 +12,26 @@ namespace fpa2Airways class Converter : public itk::ProcessObject { + public: + typedef Converter Self; + typedef itk::ProcessObject Superclass; + typedef itk::SmartPointer< Self > Pointer; + typedef itk::SmartPointer< const Self > ConstPointer; + + typedef _TSkeleton TSkeleton; + typedef _TAirways TAirways; + typedef itk::SimpleDataObjectDecorator< _TAirways* > TOutput; + public: itkNewMacro( Self ); itkTypeMacro( Converter, itk::ProcessObject ); public: - SetInput( TSkeleton ); - TAirways GetOutput( ); + void SetInput( const TSkeleton* sk ); + TSkeleton* GetInput( ); + const TSkeleton* GetInput( ) const; + TAirways* GetOutput( ); + const TAirways* GetOutput( ) const; protected: Converter( ); @@ -35,9 +48,9 @@ namespace fpa2Airways } // ecapseman #ifndef ITK_MANUAL_INSTANTIATION -#include +#include #endif // ITK_MANUAL_INSTANTIATION -#endif // __FPA2AIRWAYS__CONVERTER__H__ +#endif // __AIRWAYS__FPA2AIRWAYS__CONVERTER__H__ // eof - $RCSfile$ diff --git a/lib/Airways/fpa2Airways/Converter.hxx b/lib/Airways/fpa2Airways/Converter.hxx new file mode 100644 index 0000000..e3a564e --- /dev/null +++ b/lib/Airways/fpa2Airways/Converter.hxx @@ -0,0 +1,84 @@ +#ifndef __AIRWAYS__FPA2AIRWAYS__CONVERTER__HXX__ +#define __AIRWAYS__FPA2AIRWAYS__CONVERTER__HXX__ + +// ------------------------------------------------------------------------- +template< class _TSkeleton, class _TAirways > +void fpa2Airways::Converter< _TSkeleton, _TAirways >:: +SetInput( const _TSkeleton* sk ) +{ + this->itk::ProcessObject::SetNthInput( 0, const_cast< _TSkeleton* >( sk ) ); +} + +// ------------------------------------------------------------------------- +template< class _TSkeleton, class _TAirways > +_TSkeleton* fpa2Airways::Converter< _TSkeleton, _TAirways >:: +GetInput( ) +{ + return( + dynamic_cast< _TSkeleton* >( this->itk::ProcessObject::GetInput( 0 ) ) + ); +} + +// ------------------------------------------------------------------------- +template< class _TSkeleton, class _TAirways > +const _TSkeleton* fpa2Airways::Converter< _TSkeleton, _TAirways >:: +GetInput( ) const +{ + return( + dynamic_cast< const _TSkeleton* >( + this->itk::ProcessObject::GetInput( 0 ) + ) + ); +} + +// ------------------------------------------------------------------------- +template< class _TSkeleton, class _TAirways > +_TAirways* fpa2Airways::Converter< _TSkeleton, _TAirways >:: +GetOutput( ) +{ + auto o = dynamic_cast< _TAirways* >( + this->itk::ProcessObject::GetOutput( 0 ) + ); + return( o->Get( ) ); +} + +// ------------------------------------------------------------------------- +template< class _TSkeleton, class _TAirways > +const _TAirways* fpa2Airways::Converter< _TSkeleton, _TAirways >:: +GetOutput( ) const +{ + auto o = dynamic_cast< const _TAirways* >( + this->itk::ProcessObject::GetOutput( 0 ) + ); + return( o->Get( ) ); +} + +// ------------------------------------------------------------------------- +template< class _TSkeleton, class _TAirways > +fpa2Airways::Converter< _TSkeleton, _TAirways >:: +Converter( ) + : Superclass( ) +{ + this->SetNumberOfRequiredInputs( 1 ); + this->SetNumberOfRequiredOutputs( 1 ); + typename TOutput::Pointer o = TOutput::New( ); + this->itk::ProcessObject::SetNthOutput( 0, o.GetPointer( ) ); +} + +// ------------------------------------------------------------------------- +template< class _TSkeleton, class _TAirways > +fpa2Airways::Converter< _TSkeleton, _TAirways >:: +~Converter( ) +{ +} + +// ------------------------------------------------------------------------- +template< class _TSkeleton, class _TAirways > +void fpa2Airways::Converter< _TSkeleton, _TAirways >:: +GenerateData( ) +{ +} + +#endif // __AIRWAYS__FPA2AIRWAYS__CONVERTER__HXX__ + +// eof - $RCSfile$ -- 2.45.1