ITK 6.0.0
Insight Toolkit
 
Loading...
Searching...
No Matches
itkBinaryReconstructionLabelMapFilter.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 itkBinaryReconstructionLabelMapFilter_h
19#define itkBinaryReconstructionLabelMapFilter_h
20
23
24namespace itk
25{
44template <typename TImage,
45 typename TMarkerImage,
46 typename TAttributeAccessor =
48class ITK_TEMPLATE_EXPORT BinaryReconstructionLabelMapFilter : public InPlaceLabelMapFilter<TImage>
49{
50public:
51 ITK_DISALLOW_COPY_AND_MOVE(BinaryReconstructionLabelMapFilter);
52
58
60 using ImageType = TImage;
61 using ImagePointer = typename ImageType::Pointer;
62 using ImageConstPointer = typename ImageType::ConstPointer;
63 using PixelType = typename ImageType::PixelType;
64 using IndexType = typename ImageType::IndexType;
65 using LabelObjectType = typename ImageType::LabelObjectType;
66
67 using MarkerImageType = TMarkerImage;
68 using MarkerImagePointer = typename MarkerImageType::Pointer;
69 using MarkerImageConstPointer = typename MarkerImageType::ConstPointer;
70 using MarkerImagePixelType = typename MarkerImageType::PixelType;
71
72 using AttributeAccessorType = TAttributeAccessor;
73
75 static constexpr unsigned int ImageDimension = TImage::ImageDimension;
76
78 itkNewMacro(Self);
79
81 itkOverrideGetNameOfClassMacro(BinaryReconstructionLabelMapFilter);
82
83 /* itkConceptMacro(InputEqualityComparableCheck,
84 (Concept::EqualityComparable<PixelType>));
85 itkConceptMacro(IntConvertibleToInputCheck,
86 (Concept::Convertible<int, PixelType>));
87 itkConceptMacro(InputOStreamWritableCheck,
88 (Concept::OStreamWritable<PixelType>));*/
89
94
96 void
97 SetInput1(TImage * input)
98 {
99 this->SetInput(input);
100 }
101
103 void
104 SetInput2(TMarkerImage * input)
105 {
106 this->SetMarkerImage(input);
107 }
108
113 itkSetMacro(ForegroundValue, MarkerImagePixelType);
114 itkGetConstMacro(ForegroundValue, MarkerImagePixelType);
116
117protected:
120
121 void
123
124 void
125 PrintSelf(std::ostream & os, Indent indent) const override;
126
127private:
129
130}; // end of class
131
132} // end namespace itk
133
134#ifndef ITK_MANUAL_INSTANTIATION
135# include "itkBinaryReconstructionLabelMapFilter.hxx"
136#endif
137
138#endif
typename Functor::AttributeLabelObjectAccessor< typename LabelMapType::LabelObjectType > AttributeAccessorType
~BinaryReconstructionLabelMapFilter() override=default
void PrintSelf(std::ostream &os, Indent indent) const override
itkSetInputMacro(MarkerImage, MarkerImageType)
void ThreadedProcessLabelObject(LabelObjectType *labelObject) override
itkGetInputMacro(MarkerImage, MarkerImageType)
virtual void SetInput(const InputImageType *input)
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....