#ifndef __CPPLUGINS__PLUGINS__MACHETEFILTER__H__ #define __CPPLUGINS__PLUGINS__MACHETEFILTER__H__ #include #include #include #ifdef cpPlugins_Interface_QT4 #include #include #include #include #endif // cpPlugins_Interface_QT4 // Some forward declarations class vtkPlaneWidget; namespace cpPlugins { // Some forward declarations namespace Interface { class Image; class Mesh; } // ecapseman namespace BasicFilters { #ifdef cpPlugins_Interface_QT4 class MacheteFilter; /** */ class MacheteFilter_Dialog : public QDialog { Q_OBJECT; public: typedef QDialog Superclass; public: MacheteFilter_Dialog( QWidget* parent, MacheteFilter* filter, Qt::WindowFlags f = 0 ); virtual ~MacheteFilter_Dialog( ); public slots: virtual void accept( ); virtual void reject( ); protected: MacheteFilter* m_Filter; QLabel* m_Title; QGridLayout* m_MainLayout; QVBoxLayout* m_ToolsLayout; }; #endif // cpPlugins_Interface_QT4 /** */ class cpPluginsBasicFilters_EXPORT MacheteFilter : public cpPlugins::Interface::FilterObject { friend class MacheteFilter_Dialog; public: typedef MacheteFilter Self; typedef cpPlugins::Interface::FilterObject Superclass; typedef itk::SmartPointer< Self > Pointer; typedef itk::SmartPointer< const Self > ConstPointer; public: itkNewMacro( Self ); itkTypeMacro( MacheteFilter, FilterObject ); cpPlugins_Id_Macro( cpPlugins::BasicFilters::MacheteFilter, FilterObject ); public: virtual DialogResult ExecConfigurationDialog( QWidget* parent ); protected: MacheteFilter( ); virtual ~MacheteFilter( ); virtual std::string _GenerateData( ); std::string _FromImage( cpPlugins::Interface::Image* image ); std::string _FromMesh( cpPlugins::Interface::Mesh* mesh ); template< class I > inline std::string _RealImage( itk::DataObject* dobj ); private: // Purposely not implemented MacheteFilter( const Self& ); Self& operator=( const Self& ); protected: #ifdef cpPlugins_Interface_QT4 vtkPlaneWidget* m_PlaneWidget; MacheteFilter_Dialog* m_Dialog; #endif // cpPlugins_Interface_QT4 }; // --------------------------------------------------------------------- CPPLUGINS_INHERIT_PROVIDER( MacheteFilter ); } // ecapseman } // ecapseman #endif // __CPPLUGINS__PLUGINS__MACHETEFILTER__H__ // eof - $RCSfile$