#ifndef __CPPLUGINSWIDGETS__SEEDWIDGET__H__ #define __CPPLUGINSWIDGETS__SEEDWIDGET__H__ #include #include #include #include #include #include #include namespace cpPluginsWidgets { /** */ class cpPluginsWidgets_EXPORT SeedWidget : public cpPlugins::BaseWidget { cpPluginsObject; public: typedef SeedWidget Self; typedef cpPlugins::BaseWidget Superclass; typedef itk::SmartPointer< Self > Pointer; typedef itk::SmartPointer< const Self > ConstPointer; public: itkNewMacro( Self ); itkTypeMacro( SeedWidget, cpPlugins::BaseWidget ); cpPlugins_Id_Macro( SeedWidget, Widgets ); struct WidgetData { vtkSmartPointer< cpExtensions::Interaction::SeedWidget > Widget; vtkSmartPointer< vtkImageActorPointPlacer > Placer; vtkSmartPointer< vtkPointHandleRepresentation3D > Handle; vtkSmartPointer< vtkSeedRepresentation > Seed; void Configure( cpPluginsWidgets::SeedWidget* parent, vtkRenderWindowInteractor* interactor, vtkImageActor* actor ); void On( ); void Off( ); }; protected: SeedWidget( ); virtual ~SeedWidget( ); virtual void _GenerateData( ) ITK_OVERRIDE; private: // Purposely not implemented SeedWidget( const Self& ); Self& operator=( const Self& ); protected: bool m_Configured; std::vector< WidgetData > m_Widgets; unsigned int m_InitialNumberOfSeeds; }; } // ecapseman #endif // __CPPLUGINSWIDGETS__SEEDWIDGET__H__ // eof - $RCSfile$