1 #ifndef __cpPluginsExtensions__Simple3DCurve__h__
2 #define __cpPluginsExtensions__Simple3DCurve__h__
4 #include <cpPluginsExtensions_Export.h>
5 #include <cpPlugins/BaseObjects/DataObject.h>
6 #include <vtkSmartPointer.h>
7 #include <cpPluginsExtensions/Simple3DCurve_Demanglers.h>
9 // -------------------------------------------------------------------------
10 class vtkPolyDataAlgorithm;
12 // -------------------------------------------------------------------------
13 namespace cpPluginsExtensions
17 class cpPluginsExtensions_EXPORT Simple3DCurve
18 : public cpPlugins::BaseObjects::DataObject
21 typedef Simple3DCurve Self;
22 typedef cpPlugins::BaseObjects::DataObject Superclass;
23 typedef itk::SmartPointer< Self > Pointer;
24 typedef itk::SmartPointer< const Self > ConstPointer;
29 Simple3DCurve, cpPlugins::BaseObjects::DataObject
31 cpPlugins_Id_Macro( Simple3DCurve, Object );
32 cpPlugins_Compatibility_Macro;
35 virtual void SetITK( itk::LightObject* o ) cpPlugins_OVERRIDE;
36 virtual void SetVTK( vtkObjectBase* o ) cpPlugins_OVERRIDE;
40 virtual ~Simple3DCurve( );
42 template< class _TSimple3DCurve >
43 inline void _ITK_2_VTK( _TSimple3DCurve* curve );
46 // Purposely not implemented
47 Simple3DCurve( const Self& );
48 Self& operator=( const Self& );
51 vtkSmartPointer< vtkPolyDataAlgorithm > m_ITKvVTK;
56 #endif // __cpPluginsExtensions__Simple3DCurve__h__