go home Home | Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Data Structures | File List | Namespace Members | Data Fields | Globals | Related Pages
itkGPUInPlaceImageFilter.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/*=========================================================================
19 *
20 * Copyright Insight Software Consortium
21 *
22 * Licensed under the Apache License, Version 2.0 (the "License");
23 * you may not use this file except in compliance with the License.
24 * You may obtain a copy of the License at
25 *
26 * http://www.apache.org/licenses/LICENSE-2.0.txt
27 *
28 * Unless required by applicable law or agreed to in writing, software
29 * distributed under the License is distributed on an "AS IS" BASIS,
30 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
31 * See the License for the specific language governing permissions and
32 * limitations under the License.
33 *
34 *=========================================================================*/
35#ifndef itkGPUInPlaceImageFilter_h
36#define itkGPUInPlaceImageFilter_h
37
38#include "itkInPlaceImageFilter.h"
40
41namespace itk
42{
59template <typename TInputImage,
60 typename TOutputImage = TInputImage,
61 typename TParentImageFilter = InPlaceImageFilter<TInputImage, TOutputImage>>
62class ITK_TEMPLATE_EXPORT ITKOpenCL_EXPORT GPUInPlaceImageFilter
63 : public GPUImageToImageFilter<TInputImage, TOutputImage, TParentImageFilter>
64{
65public:
67
71 using CPUSuperclass = TParentImageFilter;
72 using Pointer = SmartPointer<Self>;
73 using ConstPointer = SmartPointer<const Self>;
74
77
80 using OutputImagePointer = typename GPUSuperclass::OutputImagePointer;
81 using OutputImageRegionType = typename GPUSuperclass::OutputImageRegionType;
82 using OutputImagePixelType = typename GPUSuperclass::OutputImagePixelType;
83
85 itkStaticConstMacro(InputImageDimension, unsigned int, TInputImage::ImageDimension);
86 itkStaticConstMacro(OutputImageDimension, unsigned int, TOutputImage::ImageDimension);
87
89 using InputImageType = TInputImage;
90 using InputImagePointer = typename InputImageType::Pointer;
91 using InputImageConstPointer = typename InputImageType::ConstPointer;
92 using InputImageRegionType = typename InputImageType::RegionType;
93 using InputImagePixelType = typename InputImageType::PixelType;
94
95protected:
97 ~GPUInPlaceImageFilter() override = default;
98
99 void
100 PrintSelf(std::ostream & os, Indent indent) const override;
101
114 void
115 AllocateOutputs() override;
116
126 void
127 ReleaseInputs() override;
128};
129
130} // end namespace itk
131
132#ifndef ITK_MANUAL_INSTANTIATION
133# include "itkGPUInPlaceImageFilter.hxx"
134#endif
135
136#endif
class to abstract the behaviour of the GPU filters.
Base class for GPU filters that take an image as input and overwrite that image as the output.
typename GPUSuperclass::OutputImagePixelType OutputImagePixelType
~GPUInPlaceImageFilter() override=default
void ReleaseInputs() override
void PrintSelf(std::ostream &os, Indent indent) const override
void AllocateOutputs() override
typename GPUSuperclass::OutputImageType OutputImageType
typename GPUSuperclass::OutputImagePointer OutputImagePointer
typename InputImageType::PixelType InputImagePixelType
typename InputImageType::Pointer InputImagePointer
itkStaticConstMacro(InputImageDimension, unsigned int, TInputImage::ImageDimension)
typename InputImageType::RegionType InputImageRegionType
typename InputImageType::ConstPointer InputImageConstPointer
itkStaticConstMacro(OutputImageDimension, unsigned int, TOutputImage::ImageDimension)
SmartPointer< const Self > ConstPointer
typename GPUSuperclass::OutputImageRegionType OutputImageRegionType
ITK_DISALLOW_COPY_AND_MOVE(GPUInPlaceImageFilter)
#define ITKOpenCL_EXPORT


Generated on 2023-01-13 for elastix by doxygen 1.9.6 elastix logo