Loading...
Searching...
No Matches
itkGPUBSplineInterpolateImageFunction.h
Go to the documentation of this file.
/*=========================================================================
*
* Copyright UMC Utrecht and contributors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0.txt
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*
*=========================================================================*/
#ifndef itkGPUBSplineInterpolateImageFunction_h
#define itkGPUBSplineInterpolateImageFunction_h
#include "itkGPUInterpolateImageFunction.h"
#include "itkGPUDataManager.h"
#include "itkGPUImage.h"
#include "itkBSplineInterpolateImageFunction.h"
#include "itkVersion.h"
namespace itk
{
itkGPUKernelClassMacro(GPUBSplineInterpolateImageFunctionKernel);
template <typename TInputImage, typename TCoordRep = float, typename TCoefficientType = float>
class ITK_EXPORT GPUBSplineInterpolateImageFunction
: public GPUInterpolateImageFunction<TInputImage,
TCoordRep,
BSplineInterpolateImageFunction<TInputImage, TCoordRep, TCoefficientType>>
{
public:
ITK_DISALLOW_COPY_AND_MOVE(GPUBSplineInterpolateImageFunction);
using Self = GPUBSplineInterpolateImageFunction;
using GPUSuperclass =
GPUInterpolateImageFunction<TInputImage,
TCoordRep,
BSplineInterpolateImageFunction<TInputImage, TCoordRep, TCoefficientType>>;
using CPUSuperclass =
BSplineInterpolateImageFunction<TInputImage,
TCoordRep,
BSplineInterpolateImageFunction<TInputImage, TCoordRep, TCoefficientType>>;
using Superclass = GPUSuperclass;
using Pointer = SmartPointer<Self>;
using ConstPointer = SmartPointer<const Self>;
itkTypeMacro(GPUBSplineInterpolateImageFunction, GPUSuperclass);
itkNewMacro(Self);
itkStaticConstMacro(InputImageDimension, unsigned int, TInputImage::ImageDimension);
using GPUCoefficientImageType = GPUImage<TCoefficientType, InputImageDimension>;
using GPUCoefficientImagePointer = typename GPUCoefficientImageType::Pointer;
using GPUDataManagerPointer = typename GPUDataManager::Pointer;
void
SetInputImage(const TInputImage * inputData) override;
const GPUCoefficientImagePointer
GetGPUCoefficients() const;
const GPUDataManagerPointer
GetGPUCoefficientsImageBase() const;
protected:
GPUBSplineInterpolateImageFunction();
~GPUBSplineInterpolateImageFunction() override = default;
void
PrintSelf(std::ostream & os, Indent indent) const override;
bool
GetSourceCode(std::string & source) const override;
private:
GPUCoefficientImagePointer m_GPUCoefficients{};
GPUDataManagerPointer m_GPUCoefficientsImageBase{};
std::vector<std::string> m_Sources{};
};
} // end namespace itk
#ifndef ITK_MANUAL_INSTANTIATION
# include "itkGPUBSplineInterpolateImageFunction.hxx"
#endif
#endif /* itkGPUBSplineInterpolateImageFunction_h */
itk::GPUBSplineInterpolateImageFunction< InputImageType, InterpolatorPrecisionType >::m_GPUCoefficientsImageBase
GPUDataManagerPointer m_GPUCoefficientsImageBase
Definition itkGPUBSplineInterpolateImageFunction.h:105
itk::GPUBSplineInterpolateImageFunction::GPUBSplineInterpolateImageFunction
GPUBSplineInterpolateImageFunction()
itk::GPUBSplineInterpolateImageFunction::GetSourceCode
bool GetSourceCode(std::string &source) const override
itk::GPUBSplineInterpolateImageFunction::GetGPUCoefficients
const GPUCoefficientImagePointer GetGPUCoefficients() const
itk::GPUBSplineInterpolateImageFunction< InputImageType, InterpolatorPrecisionType >::m_Sources
std::vector< std::string > m_Sources
Definition itkGPUBSplineInterpolateImageFunction.h:107
itk::GPUBSplineInterpolateImageFunction::ITK_DISALLOW_COPY_AND_MOVE
ITK_DISALLOW_COPY_AND_MOVE(GPUBSplineInterpolateImageFunction)
itk::GPUBSplineInterpolateImageFunction::Pointer
SmartPointer< Self > Pointer
Definition itkGPUBSplineInterpolateImageFunction.h:64
itk::GPUBSplineInterpolateImageFunction::Self
GPUBSplineInterpolateImageFunction Self
Definition itkGPUBSplineInterpolateImageFunction.h:54
itk::GPUBSplineInterpolateImageFunction::~GPUBSplineInterpolateImageFunction
~GPUBSplineInterpolateImageFunction() override=default
itk::GPUBSplineInterpolateImageFunction::itkStaticConstMacro
itkStaticConstMacro(InputImageDimension, unsigned int, TInputImage::ImageDimension)
itk::GPUBSplineInterpolateImageFunction::GetGPUCoefficientsImageBase
const GPUDataManagerPointer GetGPUCoefficientsImageBase() const
itk::GPUBSplineInterpolateImageFunction::GPUSuperclass
GPUInterpolateImageFunction< TInputImage, TCoordRep, BSplineInterpolateImageFunction< TInputImage, TCoordRep, TCoefficientType > > GPUSuperclass
Definition itkGPUBSplineInterpolateImageFunction.h:55
itk::GPUBSplineInterpolateImageFunction::SetInputImage
void SetInputImage(const TInputImage *inputData) override
itk::GPUBSplineInterpolateImageFunction::GPUCoefficientImageType
GPUImage< TCoefficientType, InputImageDimension > GPUCoefficientImageType
Definition itkGPUBSplineInterpolateImageFunction.h:76
itk::GPUBSplineInterpolateImageFunction::GPUCoefficientImagePointer
typename GPUCoefficientImageType::Pointer GPUCoefficientImagePointer
Definition itkGPUBSplineInterpolateImageFunction.h:77
itk::GPUBSplineInterpolateImageFunction::PrintSelf
void PrintSelf(std::ostream &os, Indent indent) const override
itk::GPUBSplineInterpolateImageFunction::CPUSuperclass
BSplineInterpolateImageFunction< TInputImage, TCoordRep, BSplineInterpolateImageFunction< TInputImage, TCoordRep, TCoefficientType > > CPUSuperclass
Definition itkGPUBSplineInterpolateImageFunction.h:59
itk::GPUBSplineInterpolateImageFunction::ConstPointer
SmartPointer< const Self > ConstPointer
Definition itkGPUBSplineInterpolateImageFunction.h:65
itk::GPUBSplineInterpolateImageFunction< InputImageType, InterpolatorPrecisionType >::m_GPUCoefficients
GPUCoefficientImagePointer m_GPUCoefficients
Definition itkGPUBSplineInterpolateImageFunction.h:104
itk::GPUBSplineInterpolateImageFunction::GPUDataManagerPointer
typename GPUDataManager::Pointer GPUDataManagerPointer
Definition itkGPUBSplineInterpolateImageFunction.h:78
itk::GPUBSplineInterpolateImageFunction::Superclass
GPUSuperclass Superclass
Definition itkGPUBSplineInterpolateImageFunction.h:63
itk::GPUDataManager::Pointer
SmartPointer< Self > Pointer
Definition itkGPUDataManager.h:74
itk::GPUImage
Templated n-dimensional image class for the GPU.
Definition itkGPUImage.h:64
itk::GPUImage< TCoefficientType, InputImageDimension >::Pointer
SmartPointer< Self > Pointer
Definition itkGPUImage.h:70
itk::GPUInterpolateImageFunction< TInputImage, float, BSplineInterpolateImageFunction< TInputImage, float, float > >::GPUInterpolateImageFunction
GPUInterpolateImageFunction()
itkGPUDataManager.h
itkGPUImage.h
itkGPUInterpolateImageFunction.h
itk
Definition itkAdvancedImageToImageMetric.h:43
itk::itkGPUKernelClassMacro
itkGPUKernelClassMacro(GPUBSplineTransformKernel)

Generated on 1768596610 for elastix by 1.15.0 |