ITK  6.0.0
Insight Toolkit
itkDefaultImageToImageMetricTraitsv4.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 itkDefaultImageToImageMetricTraitsv4_h
19#define itkDefaultImageToImageMetricTraitsv4_h
20
21#include "itkImage.h"
22#include "itkCovariantVector.h"
26
27namespace itk
28{
41template <typename TFixedImageType, typename TMovingImageType, typename TVirtualImageType, typename TCoordRep = double>
43{
44public:
47
48 using FixedImageType = TFixedImageType;
49 using MovingImageType = TMovingImageType;
50 using VirtualImageType = TVirtualImageType;
51
52 using FixedImagePixelType = typename FixedImageType::PixelType;
53 using MovingImagePixelType = typename MovingImageType::PixelType;
54
56
57 /* Image dimension accessors */
58 using ImageDimensionType = unsigned int;
59 static constexpr ImageDimensionType FixedImageDimension = FixedImageType::ImageDimension;
60 static constexpr ImageDimensionType MovingImageDimension = MovingImageType::ImageDimension;
61 static constexpr ImageDimensionType VirtualImageDimension = VirtualImageType::ImageDimension;
62
65
67
71
74
79
81
85
87
93
100
105
109#ifdef ITK_USE_CONCEPT_CHECKING
110 itkConceptMacro(OnlyDefinedForFloatingPointTypes0, (itk::Concept::IsFloatingPoint<FixedRealType>));
111 itkConceptMacro(OnlyDefinedForFloatingPointTypes1, (itk::Concept::IsFloatingPoint<MovingRealType>));
112#endif // ITK_USE_CONCEPT_CHECKING
113};
114} // end namespace itk
117//#ifndef ITK_MANUAL_INSTANTIATION
118//#include "itkDefaultImageToImageMetricTraitsv4.hxx"
119//#endif
120
121#endif
Calculate the derivative by central differencing.
A templated class holding a n-Dimensional covariant vector.
Traits class used to by ConvertPixels to convert blocks of pixels.
A simple structure holding type information for ImageToImageMetricv4 classes.
typename NumericTraits< FixedImagePixelType >::RealType FixedRealType
typename NumericTraits< MovingImagePixelType >::RealType MovingRealType
CovariantVector< CoordinateRepresentationType, Self::FixedImageDimension > FixedImageGradientType
CovariantVector< CoordinateRepresentationType, Self::MovingImageDimension > MovingImageGradientType
static constexpr ImageDimensionType VirtualImageDimension
typename MovingImageType::PixelType MovingImagePixelType
CovariantVector< CoordinateRepresentationType, Self::VirtualImageDimension > VirtualImageGradientType
static constexpr ImageDimensionType MovingImageDimension
static constexpr ImageDimensionType FixedImageDimension
Computes the gradient of an image by convolution with the first derivative of a Gaussian.
Evaluates a function of an image at specified position.
Base class for filters that take an image as input and produce an image as output.
Templated n-dimensional image class.
Definition: itkImage.h:89
#define itkConceptMacro(name, concept)
The "itk" namespace contains all Insight Segmentation and Registration Toolkit (ITK) classes....