ITK 6.0.0
Insight Toolkit
 
Loading...
Searching...
No Matches
itkBinaryErodeImageFilter.h
Go to the documentation of this file.
1/*=========================================================================
2 *
3 * Copyright NumFOCUS
4 *
5 * Licensed under the Apache License, Version 2.0 (the "License");
6 * you may not use this file except in compliance with the License.
7 * You may obtain a copy of the License at
8 *
9 * https://www.apache.org/licenses/LICENSE-2.0.txt
10 *
11 * Unless required by applicable law or agreed to in writing, software
12 * distributed under the License is distributed on an "AS IS" BASIS,
13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 * See the License for the specific language governing permissions and
15 * limitations under the License.
16 *
17 *=========================================================================*/
18#ifndef itkBinaryErodeImageFilter_h
19#define itkBinaryErodeImageFilter_h
20
21#include <vector>
22#include <queue>
25
26namespace itk
27{
63template <typename TInputImage, typename TOutputImage, typename TKernel>
64class ITK_TEMPLATE_EXPORT BinaryErodeImageFilter
65 : public BinaryMorphologyImageFilter<TInputImage, TOutputImage, TKernel>
66{
67public:
68 ITK_DISALLOW_COPY_AND_MOVE(BinaryErodeImageFilter);
69
71 static constexpr unsigned int InputImageDimension = TInputImage::ImageDimension;
72 static constexpr unsigned int OutputImageDimension = TOutputImage::ImageDimension;
73
75 static constexpr unsigned int KernelDimension = TKernel::NeighborhoodDimension;
76
78 using InputImageType = TInputImage;
79 using OutputImageType = TOutputImage;
80 using KernelType = TKernel;
81
85
88
90 itkNewMacro(Self);
91
93 itkOverrideGetNameOfClassMacro(BinaryErodeImageFilter);
94
96 using KernelIteratorType = typename KernelType::ConstIterator;
97
99 using InputPixelType = typename InputImageType::PixelType;
100 using OutputPixelType = typename OutputImageType::PixelType;
102 using OffsetType = typename InputImageType::OffsetType;
103 using IndexType = typename InputImageType::IndexType;
104
105 using InputImageRegionType = typename InputImageType::RegionType;
106 using OutputImageRegionType = typename OutputImageType::RegionType;
107 using InputSizeType = typename InputImageType::SizeType;
108
112 void
114 {
115 this->SetForegroundValue(value);
116 }
117
121 InputPixelType
123 {
124 return this->GetForegroundValue();
125 }
126
127protected:
129 ~BinaryErodeImageFilter() override = default;
130 void
131 PrintSelf(std::ostream & os, Indent indent) const override;
132
133 void
134 GenerateData() override;
135
136 // type inherited from the superclass
138};
139} // end namespace itk
140
141#ifndef ITK_MANUAL_INSTANTIATION
142# include "itkBinaryErodeImageFilter.hxx"
143#endif
144
145#endif
~BinaryErodeImageFilter() override=default
typename InputImageType::OffsetType OffsetType
static constexpr unsigned int InputImageDimension
void PrintSelf(std::ostream &os, Indent indent) const override
typename OutputImageType::PixelType OutputPixelType
typename KernelType::ConstIterator KernelIteratorType
static constexpr unsigned int KernelDimension
typename InputImageType::SizeType InputSizeType
typename InputImageType::RegionType InputImageRegionType
typename NumericTraits< InputPixelType >::RealType InputRealType
static constexpr unsigned int OutputImageDimension
void SetErodeValue(const InputPixelType &value)
void GenerateData() override
BinaryMorphologyImageFilter< InputImageType, OutputImageType, KernelType > Superclass
typename InputImageType::PixelType InputPixelType
typename OutputImageType::RegionType OutputImageRegionType
SmartPointer< const Self > ConstPointer
typename InputImageType::IndexType IndexType
virtual InputPixelType GetForegroundValue() const
virtual void SetForegroundValue(InputPixelType _arg)
Control indentation during Print() invocation.
Definition itkIndent.h:50
Implements transparent reference counting.
The "itk" namespace contains all Insight Segmentation and Registration Toolkit (ITK) classes....