1 #ifndef __CPPLUGINS__PLUGINS__MACHETEFILTER__H__
2 #define __CPPLUGINS__PLUGINS__MACHETEFILTER__H__
4 #include <cpPlugins/BasicFilters/cpPluginsBasicFilters_Export.h>
5 #include <cpPlugins/Interface/BaseProcessObjects.h>
7 #include <cpPlugins/Interface/Config.h>
9 #ifdef cpPlugins_Interface_QT4
11 #include <QGridLayout>
13 #include <QVBoxLayout>
14 #endif // cpPlugins_Interface_QT4
16 // Some forward declarations
21 // Some forward declarations
29 namespace BasicFilters
31 #ifdef cpPlugins_Interface_QT4
36 class MacheteFilter_Dialog
43 QWidget* parent, MacheteFilter* filter, Qt::WindowFlags f = 0
45 virtual ~MacheteFilter_Dialog( );
52 MacheteFilter* m_Filter;
54 QGridLayout* m_MainLayout;
55 QVBoxLayout* m_ToolsLayout;
57 #endif // cpPlugins_Interface_QT4
61 class cpPluginsBasicFilters_EXPORT MacheteFilter
62 : public cpPlugins::Interface::FilterObject
64 friend class MacheteFilter_Dialog;
67 typedef MacheteFilter Self;
68 typedef cpPlugins::Interface::FilterObject Superclass;
69 typedef itk::SmartPointer< Self > Pointer;
70 typedef itk::SmartPointer< const Self > ConstPointer;
74 itkTypeMacro( MacheteFilter, FilterObject );
76 cpPlugins::BasicFilters::MacheteFilter, "FilterObject"
80 virtual DialogResult ExecConfigurationDialog( QWidget* parent );
84 virtual ~MacheteFilter( );
86 virtual std::string _GenerateData( );
88 std::string _FromImage( cpPlugins::Interface::Image* image );
89 std::string _FromMesh( cpPlugins::Interface::Mesh* mesh );
92 inline std::string _RealImage( itk::DataObject* dobj );
95 // Purposely not implemented
96 MacheteFilter( const Self& );
97 Self& operator=( const Self& );
100 #ifdef cpPlugins_Interface_QT4
101 vtkPlaneWidget* m_PlaneWidget;
102 MacheteFilter_Dialog* m_Dialog;
103 #endif // cpPlugins_Interface_QT4
106 // ---------------------------------------------------------------------
107 CPPLUGINS_INHERIT_PROVIDER( MacheteFilter );
113 #endif // __CPPLUGINS__PLUGINS__MACHETEFILTER__H__