ITK  5.4.0
Insight Toolkit
itkGPUBoxImageFilter.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 itkGPUBoxImageFilter_h
19#define itkGPUBoxImageFilter_h
20
22#include "itkCastImageFilter.h"
23#include "itkBoxImageFilter.h"
24
25namespace itk
26{
39template <typename TInputImage,
40 typename TOutputImage,
41 typename TParentImageFilter = BoxImageFilter<TInputImage, TOutputImage>>
42class ITK_TEMPLATE_EXPORT GPUBoxImageFilter
43 : public GPUImageToImageFilter<TInputImage, TOutputImage, TParentImageFilter>
44{
45public:
46 ITK_DISALLOW_COPY_AND_MOVE(GPUBoxImageFilter);
47
51 using CPUSuperclass = TParentImageFilter;
54
56 itkNewMacro(Self);
57
59 itkOverrideGetNameOfClassMacro(GPUBoxImageFilter);
60
62 using InputImageType = TInputImage;
66 using OffsetType = typename CPUSuperclass::OffsetType;
67 using InputPixelType = typename TInputImage::PixelType;
68
69 using OutputImageType = TOutputImage;
70 using OutputPixelType = typename OutputImageType::PixelType;
71
75
76protected:
77 GPUBoxImageFilter() = default;
78 ~GPUBoxImageFilter() override = default;
79
80 void
81 PrintSelf(std::ostream & os, Indent indent) const override
82 {
83 GPUSuperclass::PrintSelf(os, indent);
84 }
85};
86} // namespace itk
87
88#endif
typename TInputImage::RegionType RegionType
typename TInputImage::SizeType SizeType
typename TInputImage::PixelType InputPixelType
typename TInputImage::SizeType RadiusType
typename TInputImage::SizeValueType RadiusValueType
typename TInputImage::IndexType IndexType
typename TOutputImage::PixelType OutputPixelType
typename TInputImage::OffsetType OffsetType
A base class for all the GPU filters working on a box neighborhood.
TParentImageFilter CPUSuperclass
~GPUBoxImageFilter() override=default
void PrintSelf(std::ostream &os, Indent indent) const override
class to abstract the behaviour of the GPU filters.
Base class for all process objects that output image data.
TOutputImage OutputImageType
Control indentation during Print() invocation.
Definition: itkIndent.h:50
The "itk" namespace contains all Insight Segmentation and Registration Toolkit (ITK) classes....
unsigned long SizeValueType
Definition: itkIntTypes.h:83