ITK
5.0.0
Insight Segmentation and Registration Toolkit
|
#include <itkGPUFiniteDifferenceFunction.h>
This is a base class of GPU finite difference function. Note that unlike most GPU classes, derived class of GPUFiniteDifferenceFunction does not have corresponding CPU class as its parent but only has CPU class FiniteDifferenceFunction as its base class. Therefore, only members of FiniteDifferenceFunction are reused by its derived GPU classes.
Definition at line 47 of file itkGPUFiniteDifferenceFunction.h.
Public Member Functions | |
virtual const char * | GetNameOfClass () const |
virtual void | GPUAllocateMetricData (unsigned int) |
virtual void | GPUComputeUpdate (const typename TImageType::Pointer output, typename TImageType::Pointer update, void *gd)=0 |
virtual void | GPUReleaseMetricData () |
virtual PixelType | ComputeUpdate (const NeighborhoodType &, void *, const FloatOffsetType &) override |
Public Member Functions inherited from itk::FiniteDifferenceFunction< TImageType > | |
virtual TimeStepType | ComputeGlobalTimeStep (void *GlobalData) const =0 |
const NeighborhoodScalesType | ComputeNeighborhoodScales () const |
virtual void * | GetGlobalDataPointer () const =0 |
const RadiusType & | GetRadius () const |
void | GetScaleCoefficients (PixelRealType vals[ImageDimension]) const |
virtual void | InitializeIteration () |
virtual void | ReleaseGlobalDataPointer (void *GlobalData) const =0 |
void | SetRadius (const RadiusType &r) |
void | SetScaleCoefficients (PixelRealType vals[ImageDimension]) |
Public Member Functions inherited from itk::LightObject | |
virtual Pointer | CreateAnother () const |
virtual void | Delete () |
virtual int | GetReferenceCount () const |
itkCloneMacro (Self) | |
void | Print (std::ostream &os, Indent indent=0) const |
virtual void | Register () const |
virtual void | SetReferenceCount (int) |
virtual void | UnRegister () const noexcept |
Static Public Attributes | |
static constexpr unsigned int | ImageDimension = ImageType::ImageDimension |
Static Public Attributes inherited from itk::FiniteDifferenceFunction< TImageType > | |
static constexpr unsigned int | ImageDimension = ImageType::ImageDimension |
Protected Member Functions | |
GPUFiniteDifferenceFunction () | |
~GPUFiniteDifferenceFunction () override | |
Protected Member Functions inherited from itk::FiniteDifferenceFunction< TImageType > | |
FiniteDifferenceFunction () | |
void | PrintSelf (std::ostream &os, Indent indent) const override |
~FiniteDifferenceFunction () override=default | |
Protected Member Functions inherited from itk::LightObject | |
virtual LightObject::Pointer | InternalClone () const |
LightObject () | |
virtual void | PrintHeader (std::ostream &os, Indent indent) const |
virtual void | PrintTrailer (std::ostream &os, Indent indent) const |
virtual | ~LightObject () |
Protected Attributes | |
int | m_ComputeUpdateGPUKernelHandle |
GPUKernelManager::Pointer | m_GPUKernelManager |
Protected Attributes inherited from itk::FiniteDifferenceFunction< TImageType > | |
RadiusType | m_Radius |
PixelRealType | m_ScaleCoefficients [ImageDimension] |
Protected Attributes inherited from itk::LightObject | |
std::atomic< int > | m_ReferenceCount |
Additional Inherited Members | |
Static Public Member Functions inherited from itk::LightObject | |
static void | BreakOnError () |
static Pointer | New () |
using itk::GPUFiniteDifferenceFunction< TImageType >::ConstPointer = SmartPointer< const Self > |
Definition at line 57 of file itkGPUFiniteDifferenceFunction.h.
using itk::GPUFiniteDifferenceFunction< TImageType >::DefaultBoundaryConditionType = typename Superclass::DefaultBoundaryConditionType |
The default boundary condition for finite difference functions that is used unless overridden in the Evaluate() method.
Definition at line 75 of file itkGPUFiniteDifferenceFunction.h.
using itk::GPUFiniteDifferenceFunction< TImageType >::DifferenceFunctionType = Superclass |
Definition at line 55 of file itkGPUFiniteDifferenceFunction.h.
using itk::GPUFiniteDifferenceFunction< TImageType >::FloatOffsetType = typename Superclass::FloatOffsetType |
A floating point offset from an image grid location. Used for interpolation among grid values in a neighborhood.
Definition at line 85 of file itkGPUFiniteDifferenceFunction.h.
using itk::GPUFiniteDifferenceFunction< TImageType >::ImageType = typename Superclass::ImageType |
Extract some parameters from the image type
Definition at line 63 of file itkGPUFiniteDifferenceFunction.h.
using itk::GPUFiniteDifferenceFunction< TImageType >::NeighborhoodType = typename Superclass::NeighborhoodType |
Neighborhood type
Definition at line 81 of file itkGPUFiniteDifferenceFunction.h.
using itk::GPUFiniteDifferenceFunction< TImageType >::PixelRealType = typename Superclass::PixelRealType |
Definition at line 65 of file itkGPUFiniteDifferenceFunction.h.
using itk::GPUFiniteDifferenceFunction< TImageType >::PixelType = typename Superclass::PixelType |
Definition at line 64 of file itkGPUFiniteDifferenceFunction.h.
using itk::GPUFiniteDifferenceFunction< TImageType >::Pointer = SmartPointer< Self > |
Definition at line 56 of file itkGPUFiniteDifferenceFunction.h.
using itk::GPUFiniteDifferenceFunction< TImageType >::RadiusType = typename Superclass::RadiusType |
Neighborhood radius type
Definition at line 78 of file itkGPUFiniteDifferenceFunction.h.
using itk::GPUFiniteDifferenceFunction< TImageType >::Self = GPUFiniteDifferenceFunction |
Standard class type aliases.
Definition at line 53 of file itkGPUFiniteDifferenceFunction.h.
using itk::GPUFiniteDifferenceFunction< TImageType >::Superclass = FiniteDifferenceFunction< TImageType > |
Definition at line 54 of file itkGPUFiniteDifferenceFunction.h.
using itk::GPUFiniteDifferenceFunction< TImageType >::TimeStepType = typename Superclass::TimeStepType |
Define the TimeStepType to always be double.
Definition at line 71 of file itkGPUFiniteDifferenceFunction.h.
|
inlineprotected |
Definition at line 114 of file itkGPUFiniteDifferenceFunction.h.
|
inlineoverrideprotected |
Definition at line 117 of file itkGPUFiniteDifferenceFunction.h.
|
inlineoverridevirtual |
Empty implementation - this will not be used by GPU filters
Implements itk::FiniteDifferenceFunction< TImageType >.
Definition at line 89 of file itkGPUFiniteDifferenceFunction.h.
|
virtual |
Run-time type information (and related methods)
Reimplemented from itk::FiniteDifferenceFunction< TImageType >.
Reimplemented in itk::GPUDemonsRegistrationFunction< TFixedImage, TMovingImage, TDisplacementField >, itk::GPUGradientNDAnisotropicDiffusionFunction< TImage >, itk::GPUPDEDeformableRegistrationFunction< TFixedImage, TMovingImage, TDisplacementField >, itk::GPUAnisotropicDiffusionFunction< TImage >, and itk::GPUScalarAnisotropicDiffusionFunction< TImage >.
|
inlinevirtual |
Allocate GPU buffers for computing metric statitics
Reimplemented in itk::GPUDemonsRegistrationFunction< TFixedImage, TMovingImage, TDisplacementField >.
Definition at line 107 of file itkGPUFiniteDifferenceFunction.h.
|
pure virtual |
GPU function to compute update buffer
Implemented in itk::GPUGradientNDAnisotropicDiffusionFunction< TImage >.
|
inlinevirtual |
Release GPU buffers for computing metric statitics
Reimplemented in itk::GPUDemonsRegistrationFunction< TFixedImage, TMovingImage, TDisplacementField >.
Definition at line 111 of file itkGPUFiniteDifferenceFunction.h.
|
static |
Save image dimension.
Definition at line 68 of file itkGPUFiniteDifferenceFunction.h.
|
protected |
GPU kernel handle for GPUComputeUpdate()
Definition at line 123 of file itkGPUFiniteDifferenceFunction.h.
|
protected |
GPU kernel manager for GPUFiniteDifferenceFunction class
Definition at line 120 of file itkGPUFiniteDifferenceFunction.h.
Referenced by itk::GPUFiniteDifferenceFunction< TDisplacementField >::GPUFiniteDifferenceFunction().