Computer Assited Medical Intervention Tool Kit  version 5.0
ConnectedComponents.h
Go to the documentation of this file.
1 /*****************************************************************************
2  * $CAMITK_LICENCE_BEGIN$
3  *
4  * CamiTK - Computer Assisted Medical Intervention ToolKit
5  * (c) 2001-2021 Univ. Grenoble Alpes, CNRS, Grenoble INP, TIMC, 38000 Grenoble, France
6  *
7  * Visit http://camitk.imag.fr for more information
8  *
9  * This file is part of CamiTK.
10  *
11  * CamiTK is free software: you can redistribute it and/or modify
12  * it under the terms of the GNU Lesser General Public License version 3
13  * only, as published by the Free Software Foundation.
14  *
15  * CamiTK is distributed in the hope that it will be useful,
16  * but WITHOUT ANY WARRANTY; without even the implied warranty of
17  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18  * GNU Lesser General Public License version 3 for more details.
19  *
20  * You should have received a copy of the GNU Lesser General Public License
21  * version 3 along with CamiTK. If not, see <http://www.gnu.org/licenses/>.
22  *
23  * $CAMITK_LICENCE_END$
24  ****************************************************************************/
25 #ifndef CONNECTEDCOMPONENTS_H
26 #define CONNECTEDCOMPONENTS_H
27 
28 #include <QObject>
29 #include <Action.h>
30 #include <ImageComponent.h>
31 #include <ActionWidget.h>
32 
33 #include "ITKFilterAPI.h"
34 
44  Q_OBJECT
45 
46 public:
49 
51  virtual ~ConnectedComponents() = default;
52 
54  virtual QWidget* getWidget();
55 
56 public slots:
63 
64 private:
66  virtual void process(camitk::ImageComponent*);
67 
68  vtkSmartPointer<vtkImageData> implementProcess(vtkSmartPointer<vtkImageData> img);
69 
70  template <class InputPixelType, class OutputPixelType, const int dim>
71  vtkSmartPointer<vtkImageData> itkProcess(vtkSmartPointer<vtkImageData> img);
72 };
73 #endif // CONNECTEDCOMPONENTS_H
ConnectedComponents::process
virtual void process(camitk::ImageComponent *)
helper method to simplify the target component processing
Definition: ConnectedComponents.cpp:81
ConnectedComponents::ConnectedComponents
ConnectedComponents(camitk::ActionExtension *)
Default Constructor.
Definition: ConnectedComponents.cpp:41
camitk::Action::setFamily
void setFamily(QString family)
the name of the family in which this action is associated
Definition: Action.cpp:136
camitk::Action::SUCCESS
@ SUCCESS
everything went according to plan
Definition: Action.h:248
ITKFilterAPI.h
ConnectedComponents::getWidget
virtual QWidget * getWidget()
Required to reset the computed threshold value.
Definition: ConnectedComponents.cpp:58
camitk::ActionWidget
Build a default widget for a given action using its Qt properties. It should be good enough in most o...
Definition: ActionWidget.h:96
camitk::Action::ApplyStatus
ApplyStatus
Definition: Action.h:247
camitk::Action::setName
void setName(QString name)
Definition: Action.cpp:120
ConnectedComponents.h
CAMITK_INFO
#define CAMITK_INFO(MSG)
Log for info verbosity (the second most verbose one) The msg will appear only if the user asked for I...
Definition: Log.h:261
camitk::Action::setComponent
void setComponent(QString component)
the name of the component class that can be used by this action
Definition: Action.cpp:131
camitk::ItkProgressObserver::Pointer
itk::SmartPointer< Self > Pointer
Definition: ItkProgressObserver.h:96
camitk::Action::actionWidget
QWidget * actionWidget
the action widget
Definition: Action.h:480
camitk::ImageComponent
The manager of the Image Volume data. An image volume data has no concrete 3D representation,...
Definition: ImageComponent.h:77
camitk::Action::getTargets
const ComponentList getTargets() const
the currently selected and valid (regarding the component property) components, for which this action...
Definition: Action.cpp:166
Action.h
itkImageToVTKImageFilter.h
camitk::Property
This class describes a property that can be used in components and actions or any class that needs to...
Definition: Property.h:303
ConnectedComponents::itkProcess
vtkSmartPointer< vtkImageData > itkProcess(vtkSmartPointer< vtkImageData > img)
Definition: ConnectedComponents.cpp:97
ActionWidget.h
camitk::Action::addTag
void addTag(QString tag)
add a tag to the tags list of this action
Definition: Action.cpp:141
Log.h
camitk::Action
Action class is an abstract class that enables you to build a action (generally on a component)....
Definition: Action.h:231
Property.h
camitk::Action::apply
virtual camitk::Action::ApplyStatus apply()=0
This method is called when the action has to be applied on the target list (get the target lists usin...
ConnectedComponents::apply
virtual camitk::Action::ApplyStatus apply()
this method is automatically called when the action is triggered.
Definition: ConnectedComponents.cpp:66
camitk::Action::setDescription
void setDescription(QString description)
the description of the action
Definition: Action.cpp:126
camitk::Component::getName
QString getName() const override
get the name to be displayed
Definition: sdk/libraries/core/component/Component.h:907
itk::ImageToVTKImageFilter
Converts an ITK image into a VTK image and plugs a itk data pipeline to a VTK datapipeline.
Definition: itkImageToVTKImageFilter.h:81
camitk::Action::addParameter
virtual bool addParameter(Property *)
Add a new parameter to the action, using the CamiTK property class.
Definition: Action.cpp:440
camitk::ActionWidget::update
void update()
update display (target and property controller)
Definition: ActionWidget.cpp:171
ITKFILTER_API
#define ITKFILTER_API
Definition: ITKFilterAPI.h:8
camitk::ActionExtension
This class describes what is a generic Action extension. To add a ActionExtension to CamiTK core,...
Definition: ActionExtension.h:80
camitk::ImageComponent::getImageData
vtkSmartPointer< vtkImageData > getImageData() const override
get the image volume managed by this Component
Definition: ImageComponent.h:123
ConnectedComponents
Perform a connected component analysis on the ImageComponent.
Definition: ConnectedComponents.h:43
camitk::Property::setReadOnly
void setReadOnly(bool)
set this property as read-only
Definition: Property.cpp:82
ConnectedComponents::implementProcess
vtkSmartPointer< vtkImageData > implementProcess(vtkSmartPointer< vtkImageData > img)
itkVTKImageToImageFilter.h
camitk::Action::getWidget
virtual QWidget * getWidget()
This method has to be redefined in your Action only if:
Definition: Action.cpp:185
camitk::refresh
void refresh()
refresh the display
itk::VTKImageToImageFilter
Converts a VTK image into an ITK image and plugs a vtk data pipeline to an ITK datapipeline.
Definition: itkVTKImageToImageFilter.h:58
ItkProgressObserver.h
ImageComponent.h
camitk::Component
A Component represents something that could be included in the explorer view, the interactive 3D view...
Definition: sdk/libraries/core/component/Component.h:302
Application.h
camitk
Definition: Action.cpp:35