ITK
5.4.0
Insight Toolkit
ITK
Modules
Filtering
GPUAnisotropicSmoothing
include
itkGPUScalarAnisotropicDiffusionFunction.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 itkGPUScalarAnisotropicDiffusionFunction_h
19
#define itkGPUScalarAnisotropicDiffusionFunction_h
20
21
#include "
itkGPUAnisotropicDiffusionFunction.h
"
22
23
namespace
itk
24
{
35
itkGPUKernelClassMacro
(GPUScalarAnisotropicDiffusionFunctionKernel);
36
37
template
<
typename
TImage>
38
class
ITK_TEMPLATE_EXPORT
GPUScalarAnisotropicDiffusionFunction
:
public
GPUAnisotropicDiffusionFunction
<TImage>
39
{
40
public
:
41
ITK_DISALLOW_COPY_AND_MOVE(
GPUScalarAnisotropicDiffusionFunction
);
42
44
using
Self
=
GPUScalarAnisotropicDiffusionFunction
;
45
using
Superclass
=
GPUAnisotropicDiffusionFunction<TImage>
;
46
using
Pointer
=
SmartPointer<Self>
;
47
using
ConstPointer
=
SmartPointer<const Self>
;
48
49
itkTypeMacro(
GPUScalarAnisotropicDiffusionFunction
,
GPUAnisotropicDiffusionFunction
);
50
52
static
constexpr
unsigned
int
ImageDimension = Superclass::ImageDimension;
53
55
using
typename
Superclass::ImageType
;
56
using
typename
Superclass::PixelType
;
57
using
typename
Superclass::PixelRealType
;
58
using
typename
Superclass::RadiusType
;
59
using
typename
Superclass::NeighborhoodType
;
60
using
typename
Superclass::TimeStepType
;
61
63
itkGetOpenCLSourceFromKernelMacro(GPUScalarAnisotropicDiffusionFunctionKernel);
64
66
void
67
GPUCalculateAverageGradientMagnitudeSquared(TImage *)
override
;
68
69
protected
:
70
GPUScalarAnisotropicDiffusionFunction
();
71
~
GPUScalarAnisotropicDiffusionFunction
()
override
=
default
;
72
};
73
}
// end namespace itk
74
75
#ifndef ITK_MANUAL_INSTANTIATION
76
# include "itkGPUScalarAnisotropicDiffusionFunction.hxx"
77
#endif
78
79
#endif
itk::FiniteDifferenceFunction< TImage >::RadiusType
typename ConstNeighborhoodIterator< TImage >::RadiusType RadiusType
Definition:
itkFiniteDifferenceFunction.h:97
itk::GPUAnisotropicDiffusionFunction
Definition:
itkGPUAnisotropicDiffusionFunction.h:38
itkGPUAnisotropicDiffusionFunction.h
itk::FiniteDifferenceFunction< TImage >::PixelRealType
double PixelRealType
Definition:
itkFiniteDifferenceFunction.h:84
itk::SmartPointer< Self >
itk::FiniteDifferenceFunction< TImage >::ImageType
TImage ImageType
Definition:
itkFiniteDifferenceFunction.h:82
itk::LightObject
Light weight base class for most itk classes.
Definition:
itkLightObject.h:55
itk::GPUFiniteDifferenceFunction< TImage >
itk::FiniteDifferenceFunction< TImage >::PixelType
typename ImageType::PixelType PixelType
Definition:
itkFiniteDifferenceFunction.h:83
itk::GPUScalarAnisotropicDiffusionFunction
Definition:
itkGPUScalarAnisotropicDiffusionFunction.h:38
itk::itkGPUKernelClassMacro
itkGPUKernelClassMacro(GPUImageOpsKernel)
itk
The "itk" namespace contains all Insight Segmentation and Registration Toolkit (ITK) classes....
Definition:
itkAnnulusOperator.h:24
itk::ConstNeighborhoodIterator
Const version of NeighborhoodIterator, defining iteration of a local N-dimensional neighborhood of pi...
Definition:
itkConstNeighborhoodIterator.h:51
itk::FiniteDifferenceFunction< TImage >::TimeStepType
double TimeStepType
Definition:
itkFiniteDifferenceFunction.h:90
Generated on
unknown
for ITK by
1.8.16