]> Creatis software - cpPlugins.git/blob - appli/ImageMPR/ImageMPR.h
Garbage collector added
[cpPlugins.git] / appli / ImageMPR / ImageMPR.h
1 #ifndef __IMAGEMPR__H__
2 #define __IMAGEMPR__H__
3
4 // Standard stuff
5 #include <map>
6 #include <string>
7
8 // Qt stuff
9 #include <QMainWindow>
10
11 // vtk stuff
12 #include <vtkSmartPointer.h>
13
14 // Plugins interface
15 #include <cpPlugins/Interface/Interface.h>
16 #include <cpPlugins/Interface/ProcessObject.h>
17 #include <cpPlugins/Interface/Image.h>
18 #include <cpPlugins/Interface/DataObject.h>
19 #include <cpPlugins/Extensions/Visualization/MPRWithDifferentWindows.h>
20
21 // -------------------------------------------------------------------------
22 namespace Ui
23 {
24   class ImageMPR;
25 }
26
27 // -------------------------------------------------------------------------
28 /**
29  */
30 class ImageMPR
31   : public QMainWindow
32 {
33   Q_OBJECT;
34
35 public:
36   // Plugins types
37   typedef cpPlugins::Interface::Interface     TPluginsInterface;
38   typedef cpPlugins::Interface::Object        TPluginObject;
39   typedef cpPlugins::Interface::DataObject    TPluginData;
40   typedef cpPlugins::Interface::Image         TPluginImage;
41   typedef cpPlugins::Interface::ProcessObject TPlugin;
42   typedef TPlugin::TParameters                TParameters;
43
44   typedef std::map< std::string, std::string > TStringMap;
45   typedef cpPlugins::Extensions::Visualization::MPRWithDifferentWindows TMPR;
46
47 public:
48   explicit ImageMPR( QWidget* parent = 0 );
49   virtual ~ImageMPR( );
50
51 private slots:
52   void _triggered_actionOpenPlugins( );
53   void _triggered_actionOpenInputImage( );
54
55 private:
56   Ui::ImageMPR* m_UI;
57
58   // Plugins objects
59   TPluginsInterface m_Plugins;
60
61   // Needed object from plugins
62   TStringMap m_BaseClasses;
63
64   // Real data
65   TPluginImage::Pointer m_InputImage;
66
67   // Visualization stuff
68   TMPR* m_MPR;
69
70   /* TODO
71      vtkSmartPointer< vtkOrientationMarkerWidget > m_3DOrientationWidget;
72   */
73 };
74
75 #endif // __IMAGEMPR__H__
76
77 // eof - $RCSfile$