1 #ifndef __IMAGEMPR__H__
2 #define __IMAGEMPR__H__
12 #include <vtkRenderer.h>
13 #include <vtkSmartPointer.h>
14 #include <cpExtensions/Visualization/MPRActors.h>
17 #include <cpPlugins/Interface/Interface.h>
18 #include <cpPlugins/Interface/ProcessObject.h>
19 #include <cpPlugins/Interface/Image.h>
20 #include <cpPlugins/Interface/Mesh.h>
22 // -------------------------------------------------------------------------
28 // -------------------------------------------------------------------------
38 typedef cpPlugins::Interface::Interface TPluginsInterface;
39 typedef cpPlugins::Interface::Object TPluginObject;
40 typedef cpPlugins::Interface::DataObject TPluginData;
41 typedef cpPlugins::Interface::Image TPluginImage;
42 typedef cpPlugins::Interface::Mesh TPluginMesh;
43 typedef cpPlugins::Interface::ProcessObject TPluginFilter;
44 typedef cpPlugins::Interface::Parameters TParameters;
46 typedef std::set< std::string > TStringContainer;
47 typedef cpExtensions::Visualization::MPRActors TMPRActors;
50 explicit ImageMPR( QWidget* parent = 0 );
54 bool _LoadPlugins( const std::string& filename );
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
82 vtkSmartPointer< TMPRActors > m_MPRActors;
83 vtkSmartPointer< vtkRenderer > m_Renderers[ 4 ];
84 vtkSmartPointer< vtkPolyDataMapper > m_InputMeshMapper;
85 vtkSmartPointer< vtkActor > m_InputMeshActor;
88 vtkSmartPointer< vtkOrientationMarkerWidget > m_3DOrientationWidget;
92 #endif // __IMAGEMPR__H__