ITK  5.0.0
Insight Segmentation and Registration Toolkit
itkFastMarchingAndShapeDetectionLevelSetSegmentationModule.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Insight Segmentation & Registration Toolkit
4  Module: itkFastMarchingAndShapeDetectionLevelSetSegmentationModule.h
5  Language: C++
6  Date: $Date$
7  Version: $Revision$
8 
9  Copyright (c) Insight Software Consortium. All rights reserved.
10  See ITKCopyright.txt or http://www.itk.org/HTML/Copyright.htm for details.
11 
12  This software is distributed WITHOUT ANY WARRANTY; without even
13  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
14  PURPOSE. See the above copyright notices for more information.
15 
16 =========================================================================*/
17 #ifndef itkFastMarchingAndShapeDetectionLevelSetSegmentationModule_h
18 #define itkFastMarchingAndShapeDetectionLevelSetSegmentationModule_h
19 
24 
25 namespace itk
26 {
27 
37 template <unsigned int NDimension>
39  public SinglePhaseLevelSetSegmentationModule<NDimension>
40 {
41 public:
42  ITK_DISALLOW_COPY_AND_ASSIGN(FastMarchingAndShapeDetectionLevelSetSegmentationModule);
43 
49 
51  itkNewMacro(Self);
52 
55 
57  static constexpr unsigned int Dimension = NDimension;
58 
61  using SpatialObjectType = typename Superclass::SpatialObjectType;
62  using SpatialObjectPointer = typename Superclass::SpatialObjectPointer;
63 
65  using OutputPixelType = typename Superclass::OutputPixelType;
66  using InputImageType = typename Superclass::InputImageType;
67  using FeatureImageType = typename Superclass::FeatureImageType;
68  using OutputImageType = typename Superclass::OutputImageType;
69  using FeatureSpatialObjectType = typename Superclass::FeatureSpatialObjectType;
70  using OutputSpatialObjectType = typename Superclass::OutputSpatialObjectType;
71 
74 
78  virtual void SetStoppingValue( double d )
79  { m_FastMarchingModule->SetStoppingValue( d ); }
80  virtual double GetStoppingValue() const
81  { return m_FastMarchingModule->GetStoppingValue(); }
83 
85  virtual void SetDistanceFromSeeds( double d )
86  { m_FastMarchingModule->SetDistanceFromSeeds( d ); }
87  virtual double GetDistanceFromSeeds() const
88  { return m_FastMarchingModule->GetDistanceFromSeeds(); }
90 
91 protected:
94  void PrintSelf(std::ostream& os, Indent indent) const override;
95 
98  void GenerateData () override;
99 
104 };
105 
106 } // end namespace itk
107 
108 #ifndef ITK_MANUAL_INSTANTIATION
109 # include "itkFastMarchingAndShapeDetectionLevelSetSegmentationModule.hxx"
110 #endif
111 
112 #endif
Light weight base class for most itk classes.
Class applies a single-phase level set segmentation method.
Representation of a Landmark based on the spatial object classes.
Class applies a fast marching segmentation method.
Control indentation during Print() invocation.
Definition: itkIndent.h:49
This class applies the ShapeDetectionLevelSet segmentation method.