go home Home | Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Data Structures | File List | Namespace Members | Data Fields | Globals | Related Pages
itkGPUShrinkImageFilter.h
Go to the documentation of this file.
1/*=========================================================================
2 *
3 * Copyright UMC Utrecht and contributors
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 * http://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 __itkGPUShrinkImageFilter_h
19#define __itkGPUShrinkImageFilter_h
20
21#include "itkShrinkImageFilter.h"
22
24#include "itkGPUImage.h"
25#include "itkVersion.h"
26
27namespace itk
28{
30itkGPUKernelClassMacro( GPUShrinkImageFilterKernel );
31
43template< typename TInputImage, typename TOutputImage >
44class ITK_EXPORT GPUShrinkImageFilter :
45 public GPUImageToImageFilter< TInputImage, TOutputImage,
46 ShrinkImageFilter< TInputImage, TOutputImage > >
47{
48public:
49
52 typedef ShrinkImageFilter< TInputImage, TOutputImage > CPUSuperclass;
55 typedef SmartPointer< const Self > ConstPointer;
56
58 itkNewMacro( Self );
59
62
66
68 typedef TInputImage InputImageType;
69 typedef typename InputImageType::Pointer InputImagePointer;
70 typedef typename InputImageType::ConstPointer InputImageConstPointer;
71 typedef typename InputImageType::RegionType InputImageRegionType;
72 typedef typename InputImageType::PixelType InputImagePixelType;
73
74 typedef typename CPUSuperclass::ShrinkFactorsType ShrinkFactorsType;
75 typedef typename CPUSuperclass::OutputIndexType OutputIndexType;
76 typedef typename CPUSuperclass::InputIndexType InputIndexType;
77 typedef typename CPUSuperclass::OutputOffsetType OutputOffsetType;
78
80 itkStaticConstMacro( InputImageDimension, unsigned int,
81 TInputImage::ImageDimension );
82 itkStaticConstMacro( OutputImageDimension, unsigned int,
83 TOutputImage::ImageDimension );
84
85protected:
86
89 void PrintSelf( std::ostream & os, Indent indent ) const override;
90
91 virtual void GPUGenerateData();
92
93private:
94
95 GPUShrinkImageFilter( const Self & ); // purposely not implemented
96 void operator=( const Self & ); // purposely not implemented
97
100};
101
102} // end namespace itk
103
104#ifndef ITK_MANUAL_INSTANTIATION
105#include "itkGPUShrinkImageFilter.hxx"
106#endif
107
108#endif /* __itkGPUShrinkImageFilter_h */
class to abstract the behaviour of the GPU filters.
Superclass::OutputImageRegionType OutputImageRegionType
Superclass::OutputImagePixelType OutputImagePixelType
GPU version of ShrinkImageFilter.
InputImageType::RegionType InputImageRegionType
CPUSuperclass::InputIndexType InputIndexType
ShrinkImageFilter< TInputImage, TOutputImage > CPUSuperclass
void PrintSelf(std::ostream &os, Indent indent) const override
GPUSuperclass::OutputImagePixelType OutputImagePixelType
itkStaticConstMacro(OutputImageDimension, unsigned int, TOutputImage::ImageDimension)
CPUSuperclass::ShrinkFactorsType ShrinkFactorsType
InputImageType::PixelType InputImagePixelType
InputImageType::Pointer InputImagePointer
virtual void GPUGenerateData()
GPUSuperclass::OutputImageRegionType OutputImageRegionType
InputImageType::ConstPointer InputImageConstPointer
void operator=(const Self &)
itkStaticConstMacro(InputImageDimension, unsigned int, TInputImage::ImageDimension)
CPUSuperclass::OutputIndexType OutputIndexType
GPUShrinkImageFilter(const Self &)
SmartPointer< const Self > ConstPointer
GPUImageToImageFilter< TInputImage, TOutputImage, CPUSuperclass > GPUSuperclass
CPUSuperclass::OutputOffsetType OutputOffsetType
itkGPUKernelClassMacro(GPUBSplineTransformKernel)


Generated on 1667476801 for elastix by doxygen 1.9.4 elastix logo