1 // -------------------------------------------------------------------------
2 // @author Leonardo Florez-Valencia (florez-l@javeriana.edu.co)
3 // -------------------------------------------------------------------------
5 #ifndef __cpExtensions__Algorithms__PolyLineParametricPathWriter__h__
6 #define __cpExtensions__Algorithms__PolyLineParametricPathWriter__h__
8 #include <itkProcessObject.h>
11 // -------------------------------------------------------------------------
12 namespace cpExtensions
18 template< class _TPolyLine, class _TImage = itk::Image< unsigned char, _TPolyLine::PathDimension > >
19 class PolyLineParametricPathWriter
20 : public itk::ProcessObject
24 typedef PolyLineParametricPathWriter Self;
25 typedef itk::ProcessObject Superclass;
26 typedef itk::SmartPointer< Self > Pointer;
27 typedef itk::SmartPointer< const Self > ConstPointer;
31 itkTypeMacro( PolyLineParametricPathWriter, itk::ProcessObject );
33 itkGetConstMacro( FileName, std::string );
34 itkGetConstMacro( NumberOfPoints, long );
36 itkSetMacro( FileName, std::string );
37 itkSetMacro( NumberOfPoints, long );
40 void SetInput( const _TPolyLine* input );
41 const _TPolyLine* GetInput( );
43 void SetImage( const _TImage* image );
44 const _TImage* GetImage( );
46 virtual void Update( );
49 PolyLineParametricPathWriter( );
50 virtual ~PolyLineParametricPathWriter( );
52 virtual void GenerateData( ) override;
55 // Purposely not implemented
56 PolyLineParametricPathWriter( const Self& );
57 void operator=( const Self& );
60 std::string m_FileName;
61 long m_NumberOfPoints;
68 #ifndef ITK_MANUAL_INSTANTIATION
69 # include <cpExtensions/Algorithms/PolyLineParametricPathWriter.hxx>
70 #endif // ITK_MANUAL_INSTANTIATION
72 #endif // __cpExtensions__Algorithms__PolyLineParametricPathWriter__h__