1 #ifndef __CPPLUGINSWIDGETS__SEEDWIDGET__H__
2 #define __CPPLUGINSWIDGETS__SEEDWIDGET__H__
4 #include <cpPluginsWidgets_Export.h>
5 #include <cpPlugins/BaseObjects/Widget.h>
7 // -------------------------------------------------------------------------
8 class vtkPointHandleRepresentation3D;
10 class vtkSeedRepresentation;
11 namespace cpExtensions
15 class ImageSlicePointPlacer;
18 namespace Visualization
20 class WindowLevelImageActor;
24 // -------------------------------------------------------------------------
25 namespace cpPluginsWidgets
29 class cpPluginsWidgets_EXPORT SeedWidget
30 : public cpPlugins::BaseObjects::Widget
32 cpPluginsObject( SeedWidget, cpPlugins::BaseObjects::Widget, Widgets );
35 typedef vtkPointHandleRepresentation3D THandleRep;
36 typedef vtkSeedRepresentation TSeedRep;
37 typedef cpExtensions::Interaction::SeedWidget TWidget;
38 typedef cpExtensions::Interaction::ImageSlicePointPlacer TPlacer;
39 typedef cpExtensions::Visualization::WindowLevelImageActor TImageActor;
42 virtual void Clear( ) cpPlugins_OVERRIDE;
43 virtual void SetEnabled( bool v ) cpPlugins_OVERRIDE;
44 virtual bool GetEnabled( ) const cpPlugins_OVERRIDE;
53 static TCallback* New( );
55 vtkObject* caller, unsigned long id, void* data
57 void SetSeeds( vtkPolyData* seeds );
61 virtual ~TCallback( );
65 std::set< TWidget* > m_Widgets;
69 inline void _GD0_Image( vtkImageData* image );
72 std::map< vtkRenderWindowInteractor*, vtkSmartPointer< TWidget > > m_Widgets;
73 vtkSmartPointer< TCallback > m_Command;
78 #endif // __CPPLUGINSWIDGETS__SEEDWIDGET__H__