// Qt stuff
#include <QMainWindow>
+#include <QWidget>
// vtk stuff
#include <vtkOrientationMarkerWidget.h>
// Plugins interface
#include <cpPlugins/Interface/Interface.h>
#include <cpPlugins/Interface/ProcessObject.h>
+#include <cpPlugins/Interface/Image.h>
#include <cpPlugins/Interface/DataObject.h>
-
-// Local stuff
-#include "InteractorStyleImage.h"
-#include "VolumeActors.h"
-
-
-/*
- #include <itkImage.h>
- #include <itkImageToVTKImageFilter.h>
-
- #include <cpm/DataStructures/QuadEdgeMesh.h>
-
- #include <cpm/VTK/MeshMapper.h>
- #include <cpm/Algorithms/QuadEdge/MeshPlaneCutterFilter.h>
-*/
+#include <cpPlugins/Extensions/Visualization/MPRWithDifferentWindows.h>
// -------------------------------------------------------------------------
namespace Ui
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 cpPlugins::Extensions::Visualization::MPRWithDifferentWindows TMPR;
typedef std::map< std::string, std::string > TStringMap;
void _LoadApplicationPreferences( );
bool _LoadPlugins( );
bool _CheckClassesInPlugins( const TStringMap& classes );
- TPluginData* _LoadImage(
+ void _AddPluginActions(
+ const TStringMap& classes, QMenu* menu, const char* method
+ );
+ TPluginImage* _LoadImage(
const std::string& image_type, const std::string& image_dim
);
void _UpdateEnabledFlags( );
+ bool _ParametersDialog( const TParameters& parameters );
+
/* TODO
- bool _ParametersDialog( TParameters& parameters );
template< class I >
*/
-
/*
void _SliceMesh( int axis );
static void _SliceEventCallback(
void _triggered_actionOpenSegmentedImage( );
void _triggered_actionSwitchMode( );
+ void _triggered_actionSegmentImage( );
+ void _triggered_actionFilterSegmentation( );
+ void _triggered_actionProcessMesh( );
+
/* TODO
void triggered_aOpenSegmentedImage( );
void triggered_aFilterSegmentedImage( );
std::string m_LastOpenedFile;
// Real data
- TPluginData* m_InputImage;
- TPluginData* m_SegmentedImage;
-
- /* TODO
- // Inputs
- TImage::Pointer m_Image;
- TImage::Pointer m_Segmentation;
- TMesh::Pointer m_Mesh;
- TVTKImage::Pointer m_VTKImage;
- TVTKImage::Pointer m_VTKSegmentation;
- */
+ TPluginImage* m_InputImage;
+ TPluginImage* m_SegmentedImage;
// Visualization stuff
- vtkSmartPointer< vtkRenderer > m_3DRenderer;
- vtkSmartPointer< vtkRenderer > m_XPlaneRenderer;
- vtkSmartPointer< vtkRenderer > m_YPlaneRenderer;
- vtkSmartPointer< vtkRenderer > m_ZPlaneRenderer;
- vtkSmartPointer< vtkRenderer > m_AuxRenderer;
- vtkSmartPointer< idms::VolumeActors > m_ImageActors;
- vtkSmartPointer< idms::InteractorStyleImage > m_XStyle;
- vtkSmartPointer< idms::InteractorStyleImage > m_YStyle;
- vtkSmartPointer< idms::InteractorStyleImage > m_ZStyle;
- vtkSmartPointer< vtkOrientationMarkerWidget > m_3DOrientationWidget;
+ TMPR* m_MPR;
- /*
- TTriangulation::Pointer m_Mesh;
- vtkSmartPointer< TTriangulationMapper > m_MeshMapper;
- vtkSmartPointer< vtkActor > m_MeshActor;
- TCutter::Pointer m_ZCutter;
- */
+ // Active plugin
+ TPlugin* m_ActivePlugin;
+ QWidget* m_ActiveParameters;
};
#endif // __MAINWND__H__