1 #ifndef __IMAGEMPR__H__
2 #define __IMAGEMPR__H__
12 #include <vtkSmartPointer.h>
15 #include <cpPlugins/Interface/Interface.h>
16 #include <cpPlugins/Interface/ProcessObject.h>
17 #include <cpPlugins/Interface/Image.h>
18 #include <cpPlugins/Interface/Mesh.h>
19 #include <cpPlugins/Extensions/Visualization/MPRWithDifferentWindows.h>
21 // -------------------------------------------------------------------------
27 // -------------------------------------------------------------------------
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::Mesh TPluginMesh;
42 typedef cpPlugins::Interface::ProcessObject TPluginFilter;
43 typedef cpPlugins::Interface::Parameters TParameters;
45 typedef std::set< std::string > TStringContainer;
46 typedef cpPlugins::Extensions::Visualization::MPRWithDifferentWindows TMPR;
49 explicit ImageMPR( QWidget* parent = 0 );
53 bool _LoadPlugins( const std::string& filename );
54 bool _ParametersDialog( TPluginFilter* filter );
57 void _triggered_actionOpenPlugins( );
58 void _triggered_actionOpenInputImage( );
59 void _triggered_actionOpenInputPolyData( );
60 void _triggered_actionImageToImage( );
61 void _triggered_actionImageToMesh( );
67 TPluginsInterface m_Plugins;
69 // Needed object from plugins
70 std::string m_ImageReaderClass;
71 std::string m_ImageWriterClass;
72 std::string m_MeshReaderClass;
73 std::string m_MeshWriterClass;
74 TStringContainer m_ImageToImageFilters;
75 TStringContainer m_ImageToMeshFilters;
78 TPluginImage::Pointer m_InputImage;
79 TPluginMesh::Pointer m_InputMesh;
81 // Visualization stuff
83 vtkSmartPointer< vtkPolyDataMapper > m_InputMeshMapper;
84 vtkSmartPointer< vtkActor > m_InputMeshActor;
86 QWidget* m_ParametersDlg;
89 vtkSmartPointer< vtkOrientationMarkerWidget > m_3DOrientationWidget;
93 #endif // __IMAGEMPR__H__