X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=appli%2FImageMPR%2FImageMPR.h;h=5d2ac7240ae187b93c77c4df3ae362980e7b53ae;hb=7e29f3aec097ba1bff1894fed6eb1094276c5b72;hp=1b568051e9f8f5b06f76fa5a8c5698a3b1ede21e;hpb=1d735deae0ae5e8bff643a59370a03c961ef780c;p=cpPlugins.git diff --git a/appli/ImageMPR/ImageMPR.h b/appli/ImageMPR/ImageMPR.h index 1b56805..5d2ac72 100644 --- a/appli/ImageMPR/ImageMPR.h +++ b/appli/ImageMPR/ImageMPR.h @@ -1,11 +1,11 @@ #ifndef __IMAGEMPR__H__ #define __IMAGEMPR__H__ -// Standard stuff #include -#include +#include // Qt stuff +#include #include // vtk stuff @@ -13,8 +13,8 @@ #include // Plugins interface -#include -#include +#include +#include #include #include @@ -24,63 +24,51 @@ namespace Ui class ImageMPR; } -// ------------------------------------------------------------------------- /** */ class ImageMPR - : public QMainWindow + : public QMainWindow, + public cpPlugins::Interface::BaseApplication { Q_OBJECT; public: - // Plugins types - typedef cpPlugins::Interface::Interface TPluginsInterface; - typedef cpPlugins::Interface::Object TPluginObject; - typedef cpPlugins::Interface::DataObject TPluginData; - typedef cpPlugins::Interface::Image TPluginImage; - typedef cpPlugins::Interface::Mesh TPluginMesh; - typedef cpPlugins::Interface::ProcessObject TPluginFilter; - typedef cpPlugins::Interface::Parameters TParameters; - - typedef std::set< std::string > TStringContainer; + typedef ImageMPR Self; + typedef QMainWindow Superclass; + typedef cpExtensions::Visualization::MPRObjects TMPRObjects; + typedef cpPlugins::Interface::Plugins TPlugins; + typedef cpPlugins::Interface::DataObject TDataObject; + typedef cpPlugins::Interface::Image TImage; + typedef cpPlugins::Interface::Mesh TMesh; public: explicit ImageMPR( QWidget* parent = 0 ); virtual ~ImageMPR( ); + virtual void UpdateActualFilter( ); + protected: - bool _LoadPlugins( const std::string& filename ); + void _AssociatePluginsToMenu( ); private slots: - void _triggered_actionOpenPlugins( ); - void _triggered_actionOpenInputImage( ); - void _triggered_actionOpenSegmentation( ); - void _triggered_actionOpenInputPolyData( ); - void _triggered_actionImageToImage( ); - void _triggered_actionImageToMesh( ); + void _aOpenImage( ); + void _aOpenDICOMSeries( ); + void _aOpenSegmentation( ); + void _aOpenPolyData( ); + void _aSaveImage( ); + void _aSavePolyData( ); + void _aUndo( ); + void _aRedo( ); + void _aLoadPlugins( ); + void _aShowPlugins( ); + + void _execPlugin( ); private: Ui::ImageMPR* m_UI; - - // Plugins objects - TPluginsInterface m_Plugins; - - // Needed object from plugins - std::string m_ImageReaderClass; - std::string m_ImageWriterClass; - std::string m_MeshReaderClass; - std::string m_MeshWriterClass; - TStringContainer m_ImageToImageFilters; - TStringContainer m_ImageToMeshFilters; - - // Real data - TPluginImage::Pointer m_InputImage; - TPluginImage::Pointer m_InputSegmentation; - TPluginMesh::Pointer m_InputMesh; - - // Visualization stuff - vtkSmartPointer< TMPRObjects > m_MPRObjects; + TPlugins m_Plugins; + std::string m_ActiveFilterMainInput; /* TODO vtkSmartPointer< vtkOrientationMarkerWidget > m_3DOrientationWidget;