ITK  6.0.0
Insight Toolkit
itkVectorAnisotropicDiffusionFunction.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 itkVectorAnisotropicDiffusionFunction_h
19#define itkVectorAnisotropicDiffusionFunction_h
20
22#include "itkVector.h"
23
24namespace itk
25{
52template <typename TImage>
53class ITK_TEMPLATE_EXPORT VectorAnisotropicDiffusionFunction : public AnisotropicDiffusionFunction<TImage>
54{
55public:
56 ITK_DISALLOW_COPY_AND_MOVE(VectorAnisotropicDiffusionFunction);
57
63
65 itkOverrideGetNameOfClassMacro(VectorAnisotropicDiffusionFunction);
66
68 using typename Superclass::ImageType;
69 using typename Superclass::PixelType;
70 using typename Superclass::TimeStepType;
71 using typename Superclass::RadiusType;
72 using typename Superclass::NeighborhoodType;
73
75 static constexpr unsigned int ImageDimension = Superclass::ImageDimension;
76 static constexpr unsigned int VectorDimension = PixelType::Dimension;
77
79 void
81
82protected:
85 void
86 PrintSelf(std::ostream & os, Indent indent) const override
87 {
88 Superclass::PrintSelf(os, indent);
89 }
90};
91} // end namespace itk
92
93#ifndef ITK_MANUAL_INSTANTIATION
94# include "itkVectorAnisotropicDiffusionFunction.hxx"
95#endif
96
97#endif
Const version of NeighborhoodIterator, defining iteration of a local N-dimensional neighborhood of pi...
typename ConstNeighborhoodIterator< TImage >::RadiusType RadiusType
Control indentation during Print() invocation.
Definition: itkIndent.h:50
Light weight base class for most itk classes.
~VectorAnisotropicDiffusionFunction() override=default
void CalculateAverageGradientMagnitudeSquared(TImage *) override
void PrintSelf(std::ostream &os, Indent indent) const override
The "itk" namespace contains all Insight Segmentation and Registration Toolkit (ITK) classes....