Medical Imaging Interaction Toolkit  2016.11.0
Medical Imaging Interaction Toolkit
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
mitkPickingTool.h
Go to the documentation of this file.
1 /*===================================================================
2 
3 The Medical Imaging Interaction Toolkit (MITK)
4 
5 Copyright (c) German Cancer Research Center,
6 Division of Medical and Biological Informatics.
7 All rights reserved.
8 
9 This software is distributed WITHOUT ANY WARRANTY; without
10 even the implied warranty of MERCHANTABILITY or FITNESS FOR
11 A PARTICULAR PURPOSE.
12 
13 See LICENSE.txt or http://www.mitk.org for details.
14 
15 ===================================================================*/
16 
17 #ifndef mitkPickingTool_h_Included
18 #define mitkPickingTool_h_Included
19 
20 #include "itkImage.h"
22 #include "mitkCommon.h"
23 #include "mitkDataStorage.h"
24 #include "mitkPointSet.h"
27 
28 namespace us
29 {
30  class ModuleResource;
31 }
32 
33 namespace mitk
34 {
48  {
49  public:
51  itkFactorylessNewMacro(Self) itkCloneMacro(Self)
52 
53  virtual const char **GetXPM() const override;
54  virtual const char *GetName() const override;
55  us::ModuleResource GetIconResource() const override;
56 
57  virtual void Activated() override;
58  virtual void Deactivated() override;
59 
60  virtual DataNode::Pointer GetPointSetNode();
61 
62  mitk::DataNode *GetReferenceData();
63  mitk::DataNode *GetWorkingData();
65 
66  void ConfirmSegmentation();
67 
68  protected:
69  PickingTool(); // purposely hidden
70  virtual ~PickingTool();
71 
72  // Callback for point add event of PointSet
73  void OnPointAdded();
74 
75  // Observer id
77 
79 
80  // itk regrowing
81  template <typename TPixel, unsigned int VImageDimension>
82  void StartRegionGrowing(itk::Image<TPixel, VImageDimension> *itkImage,
83  mitk::BaseGeometry *imageGeometry,
84  mitk::PointSet::PointType seedPoint);
85 
86  // seed point
90 
92  };
93 
94 } // namespace
95 
96 #endif
mitk::DataNode::Pointer m_ResultNode
SinglePointDataInteractor::Pointer m_SeedPointInteractor
Data management class that handles 'was created by' relations.
#define MITKSEGMENTATION_EXPORT
DataCollection - Class to facilitate loading/accessing structured data.
static mitk::DataStorage::Pointer GetDataStorage()
DataNode::Pointer m_PointSetNode
#define mitkClassMacro(className, SuperClassName)
Definition: mitkCommon.h:44
Superclass for tool that create a new segmentation without user interaction in render windows...
Extracts a single region from a segmentation image and creates a new image with same geometry of the ...
PointSet::Pointer m_PointSet
static std::string GetName(std::string fileName, std::string suffix)
DataNode * m_WorkingData
BaseGeometry Describes the geometry of a data object.
Class for nodes of the DataTree.
Definition: mitkDataNode.h:66
Super-class that provides the functionality of a StateMachine to DataInteractors. ...