]> Creatis software - cpPlugins.git/blob - plugins/VTKWidgets/LineWidget.h
6c83cc5b73cd85a7549295f76f726ffbe8695912
[cpPlugins.git] / plugins / VTKWidgets / LineWidget.h
1 #ifndef __cpPluginsVTKWidgets__LineWidget__h__
2 #define __cpPluginsVTKWidgets__LineWidget__h__
3
4 #include <cpPlugins_VTKWidgets_Export.h>
5 #include <cpPlugins/Pipeline/Widget.h>
6 #include <set>
7
8 // -------------------------------------------------------------------------
9 class vtkImageData;
10 class vtkProp;
11
12 // -------------------------------------------------------------------------
13 namespace cpPluginsVTKWidgets
14 {
15   /**
16    */
17   class cpPlugins_VTKWidgets_EXPORT LineWidget
18     : public cpPlugins::Pipeline::Widget
19   {
20     cpPluginsObject( LineWidget, cpPlugins::Pipeline::Widget, Widgets );
21
22   public:
23     virtual void Clear( ) override;
24     virtual void SetEnabled( bool v ) override;
25     virtual bool GetEnabled( ) const override;
26
27   protected:
28     typedef std::set< vtkProp* > TProps;
29     typedef std::map< vtkRenderWindowInteractor*, TProps > TValidProps;
30
31   protected:
32     TValidProps _GetValidActors( vtkObject* source );
33     void _GD_Image( vtkImageData* image );
34   };
35
36 } // ecapseman
37
38 #endif // __cpPluginsVTKWidgets__LineWidget__h__
39
40 // eof - $RCSfile$