X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;ds=sidebyside;f=appli%2FImageMPR%2FImageMPR.h;h=5d2ac7240ae187b93c77c4df3ae362980e7b53ae;hb=7e29f3aec097ba1bff1894fed6eb1094276c5b72;hp=3a834ae6ee1c6bb1f453e457964d14e088680fbc;hpb=02010627b7276dc77962719b3e5be13c2a5b4605;p=cpPlugins.git diff --git a/appli/ImageMPR/ImageMPR.h b/appli/ImageMPR/ImageMPR.h index 3a834ae..5d2ac72 100644 --- a/appli/ImageMPR/ImageMPR.h +++ b/appli/ImageMPR/ImageMPR.h @@ -1,42 +1,22 @@ #ifndef __IMAGEMPR__H__ #define __IMAGEMPR__H__ -// Standard stuff #include -#include +#include // Qt stuff +#include #include // vtk stuff -#include #include +#include // Plugins interface -#include -#include +#include +#include #include -#include -#include -#include - - -/* - #include - -// Local stuff -#include "InteractorStyleImage.h" -#include "VolumeActors.h" - - - #include - #include - - #include - - #include - #include -*/ +#include // ------------------------------------------------------------------------- namespace Ui @@ -44,69 +24,55 @@ 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::ProcessObject TPlugin; - typedef TPlugin::TParameters TParameters; - - typedef std::map< std::string, std::string > TStringMap; - typedef cpPlugins::Extensions::Visualization::MPRActors TMPRActors; - typedef cpPlugins::Extensions::Visualization::ImageInteractorStyle TStyle; + 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: + void _AssociatePluginsToMenu( ); + private slots: - void _triggered_actionOpenPlugins( ); - void _triggered_actionOpenInputImage( ); + 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 - TStringMap m_BaseClasses; - - // Real data - TPluginImage* m_InputImage; - - // Visualization stuff - vtkSmartPointer< vtkRenderer > m_3DRenderer; - vtkSmartPointer< vtkRenderer > m_XPlaneRenderer; - vtkSmartPointer< vtkRenderer > m_YPlaneRenderer; - vtkSmartPointer< vtkRenderer > m_ZPlaneRenderer; - vtkSmartPointer< TMPRActors > m_MPRActors; - vtkSmartPointer< TStyle > m_XStyle; - vtkSmartPointer< TStyle > m_YStyle; - vtkSmartPointer< TStyle > m_ZStyle; + TPlugins m_Plugins; + std::string m_ActiveFilterMainInput; /* TODO - vtkSmartPointer< idms::VolumeActors > m_ImageActors; vtkSmartPointer< vtkOrientationMarkerWidget > m_3DOrientationWidget; */ - - /* - TTriangulation::Pointer m_Mesh; - vtkSmartPointer< TTriangulationMapper > m_MeshMapper; - vtkSmartPointer< vtkActor > m_MeshActor; - TCutter::Pointer m_ZCutter; - */ }; #endif // __IMAGEMPR__H__