ITK 6.0.0
Insight Toolkit
 
Loading...
Searching...
No Matches
itkUnconstrainedRegionBasedLevelSetFunctionSharedData.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 itkUnconstrainedRegionBasedLevelSetFunctionSharedData_h
19#define itkUnconstrainedRegionBasedLevelSetFunctionSharedData_h
20
22
23namespace itk
24{
54template <typename TInputImage, typename TFeatureImage, typename TSingleData>
56 : public RegionBasedLevelSetFunctionSharedData<TInputImage, TFeatureImage, TSingleData>
57{
58public:
60
65
66 static constexpr unsigned int ImageDimension = TFeatureImage::ImageDimension;
67
69 itkNewMacro(Self);
70
72
73 using InputImageType = TInputImage;
74 using typename Superclass::InputImagePointer;
76 using typename Superclass::InputPixelType;
77 using typename Superclass::InputRegionType;
78 using typename Superclass::InputSizeType;
79 using typename Superclass::InputSizeValueType;
80 using typename Superclass::InputSpacingType;
81 using typename Superclass::InputIndexType;
83 using typename Superclass::InputPointType;
84
85 using FeatureImageType = TFeatureImage;
88 using typename Superclass::FeaturePixelType;
89 using typename Superclass::FeatureRegionType;
90 using typename Superclass::FeatureSizeType;
92 using typename Superclass::FeatureSpacingType;
93 using typename Superclass::FeatureIndexType;
94 using typename Superclass::FeaturePointType;
95
96 using typename Superclass::ListPixelType;
97 using typename Superclass::ListImageType;
98 using typename Superclass::ListImagePointer;
100 using typename Superclass::ListRegionType;
101 using typename Superclass::ListSizeType;
102 using typename Superclass::ListSizeValueType;
103 using typename Superclass::ListSpacingType;
104 using typename Superclass::ListIndexType;
105 using typename Superclass::ListIndexValueType;
106 using typename Superclass::ListPointType;
107 using typename Superclass::ListIteratorType;
108
109 using typename Superclass::CentroidVectorType;
110 using typename Superclass::SampleType;
111 using typename Superclass::TreeGeneratorType;
112 using typename Superclass::TreePointer;
113 using typename Superclass::TreeType;
114 using typename Superclass::KdTreePointer;
115
116 using LevelSetDataType = TSingleData;
117 using typename Superclass::LevelSetDataPointer;
120
121 void
123 {
125
126 for (unsigned int i = 0; i < this->m_FunctionCount; ++i)
127 {
128 L.push_back(i);
129 }
130 this->m_NearestNeighborListImage->FillBuffer(L);
131 }
132
133protected:
138};
139} // end namespace itk
140
141#endif
itk::Statistics::ListSample< CentroidVectorType > SampleType
typename LevelSetDataPointerVector::iterator LevelSetDataPointerVectorIterator
ImageRegionIteratorWithIndex< ListImageType > ListIteratorType
Image< ListPixelType, Self::ImageDimension > ListImageType
itk::Statistics::KdTreeGenerator< SampleType > TreeGeneratorType
Implements transparent reference counting.
RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData > Superclass
The "itk" namespace contains all Insight Segmentation and Registration Toolkit (ITK) classes....