1 // -------------------------------------------------------------------------
2 // @author Leonardo Florez-Valencia (florez-l@javeriana.edu.co)
3 // -------------------------------------------------------------------------
5 #ifndef __cpExtensions__Algorithms__SkeletonWriter__h__
6 #define __cpExtensions__Algorithms__SkeletonWriter__h__
8 #include <cpExtensions/Config.h>
9 #include <itkProcessObject.h>
11 // -------------------------------------------------------------------------
12 namespace cpExtensions
18 template< class _TSkeleton >
20 : public itk::ProcessObject
24 typedef SkeletonWriter Self;
25 typedef itk::ProcessObject Superclass;
26 typedef itk::SmartPointer< Self > Pointer;
27 typedef itk::SmartPointer< const Self > ConstPointer;
29 typedef _TSkeleton TSkeleton;
33 itkTypeMacro( SkeletonWriter, itk::ImageSource );
35 itkGetConstMacro( FileName, std::string );
36 itkSetMacro( FileName, std::string );
39 const TSkeleton* GetInput( ) const;
40 void SetInput( const TSkeleton* skeleton );
41 virtual void Update( ) cpExtensions_OVERRIDE;
45 virtual ~SkeletonWriter( );
47 virtual void GenerateData( ) cpExtensions_OVERRIDE;
50 // Purposely not implemented
51 SkeletonWriter( const Self& );
52 void operator=( const Self& );
55 std::string m_FileName;
62 // -------------------------------------------------------------------------
63 #ifndef ITK_MANUAL_INSTANTIATION
64 # include <cpExtensions/Algorithms/SkeletonWriter.hxx>
65 #endif // ITK_MANUAL_INSTANTIATION
67 #endif // __cpExtensions__Algorithms__SkeletonWriter__h__