ITK  6.0.0
Insight Toolkit
Public Types | Public Member Functions | Static Public Attributes | Protected Member Functions | Protected Attributes | Private Member Functions | Private Attributes | List of all members
itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter > Class Template Referenceabstract

#include <itkGPUFiniteDifferenceImageFilter.h>

Detailed Description

template<typename TInputImage, typename TOutputImage, typename TParentImageFilter = FiniteDifferenceImageFilter<TInputImage, TOutputImage>>
class itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >

Base class for GPU Finite Difference Image Filters.

See also
GPUDenseFiniteDifferenceImageFilter

Definition at line 40 of file itkGPUFiniteDifferenceImageFilter.h.

+ Inheritance diagram for itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >:
+ Collaboration diagram for itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >:

Public Types

using ConstPointer = SmartPointer< const Self >
 
using CPUSuperclass = TParentImageFilter
 
using FiniteDifferenceFunctionType = typename GPUFiniteDifferenceFunction< TOutputImage >::DifferenceFunctionType
 
using GPUSuperclass = GPUInPlaceImageFilter< TInputImage, TOutputImage, TParentImageFilter >
 
using InputImageType = TInputImage
 
using InputPixelType = typename TInputImage::PixelType
 
using InputPixelValueType = typename NumericTraits< InputPixelType >::ValueType
 
using NeighborhoodScalesType = typename FiniteDifferenceFunctionType::NeighborhoodScalesType
 
using OutputImageType = TOutputImage
 
using OutputPixelType = typename TOutputImage::PixelType
 
using OutputPixelValueType = typename NumericTraits< OutputPixelType >::ValueType
 
using PixelType = OutputPixelType
 
using Pointer = SmartPointer< Self >
 
using RadiusType = typename FiniteDifferenceFunctionType::RadiusType
 
using Self = GPUFiniteDifferenceImageFilter
 
using TimeStepType = typename FiniteDifferenceFunctionType::TimeStepType
 
- Public Types inherited from itk::GPUInPlaceImageFilter< TInputImage, TOutputImage, TParentImageFilter >
using ConstPointer = SmartPointer< const Self >
 
using CPUSuperclass = TParentImageFilter
 
using GPUSuperclass = GPUImageToImageFilter< TInputImage, TOutputImage, TParentImageFilter >
 
using InputImageConstPointer = typename InputImageType::ConstPointer
 
using InputImagePixelType = typename InputImageType::PixelType
 
using InputImagePointer = typename InputImageType::Pointer
 
using InputImageRegionType = typename InputImageType::RegionType
 
using InputImageType = TInputImage
 
using OutputImagePixelType = typename GPUSuperclass::OutputImagePixelType
 
using OutputImagePointer = typename GPUSuperclass::OutputImagePointer
 
using OutputImageRegionType = typename GPUSuperclass::OutputImageRegionType
 
using OutputImageType = typename GPUSuperclass::OutputImageType
 
using Pointer = SmartPointer< Self >
 
using Self = GPUInPlaceImageFilter
 
- Public Types inherited from itk::GPUImageToImageFilter< TInputImage, TOutputImage, TParentImageFilter >
using ConstPointer = SmartPointer< const Self >
 
using InputImageConstPointer = typename InputImageType::ConstPointer
 
using InputImagePixelType = typename InputImageType::PixelType
 
using InputImagePointer = typename InputImageType::Pointer
 
using InputImageRegionType = typename InputImageType::RegionType
 
using InputImageType = TInputImage
 
using Pointer = SmartPointer< Self >
 
using Self = GPUImageToImageFilter
 
using Superclass = TParentImageFilter
 

Public Member Functions

const FiniteDifferenceFunctionType::PointerGetDifferenceFunction () const override
 
const char * GetNameOfClass () const override
 
void SetStateToInitialized ()
 
void SetStateToUninitialized ()
 
void SetDifferenceFunction (FiniteDifferenceFunctionType *differenceFunction) override
 
virtual void SetState (GPUFiniteDifferenceFilterEnum _arg)
 
virtual const GPUFiniteDifferenceFilterEnumGetState () const
 
virtual const TimeProbeGetInitTime () const
 
virtual const TimeProbeGetComputeUpdateTime () const
 
virtual const TimeProbeGetApplyUpdateTime () const
 
virtual const TimeProbeGetSmoothFieldTime () const
 
- Public Member Functions inherited from itk::GPUInPlaceImageFilter< TInputImage, TOutputImage, TParentImageFilter >
const char * GetNameOfClass () const override
 
- Public Member Functions inherited from itk::GPUImageToImageFilter< TInputImage, TOutputImage, TParentImageFilter >
void GenerateData () override
 
virtual bool GetGPUEnabled () const
 
const char * GetNameOfClass () const override
 
virtual void GPUEnabledOn ()
 
virtual void GraftOutput (const DataObjectIdentifierType &key, typename itk::GPUTraits< TOutputImage >::Type *output)
 
virtual void GraftOutput (typename itk::GPUTraits< TOutputImage >::Type *output)
 
virtual void SetGPUEnabled (bool _arg)
 

Static Public Attributes

static constexpr unsigned int ImageDimension = OutputImageType::ImageDimension
 
- Static Public Attributes inherited from itk::GPUInPlaceImageFilter< TInputImage, TOutputImage, TParentImageFilter >
static constexpr unsigned int InputImageDimension = TInputImage::ImageDimension
 
static constexpr unsigned int OutputImageDimension = TOutputImage::ImageDimension
 
- Static Public Attributes inherited from itk::GPUImageToImageFilter< TInputImage, TOutputImage, TParentImageFilter >
static constexpr unsigned int InputImageDimension = TInputImage::ImageDimension
 
static constexpr unsigned int OutputImageDimension = TOutputImage::ImageDimension
 

Protected Member Functions

void AllocateUpdateBuffer () override=0
 
void CopyInputToOutput () override=0
 
void GenerateInputRequestedRegion () override
 
virtual void GPUApplyUpdate (const TimeStepType &dt)=0
 
virtual TimeStepType GPUCalculateChange ()=0
 
 GPUFiniteDifferenceImageFilter ()
 
void GPUGenerateData () override
 
bool Halt () override
 
void Initialize () override
 
void InitializeIteration () override
 
void PostProcessOutput () override
 
void PrintSelf (std::ostream &os, Indent indent) const override
 
TimeStepType ResolveTimeStep (const std::vector< TimeStepType > &timeStepList, const BooleanStdVectorType &valid) const override
 
bool ThreadedHalt (void *) override
 
 ~GPUFiniteDifferenceImageFilter () override
 
- Protected Member Functions inherited from itk::GPUInPlaceImageFilter< TInputImage, TOutputImage, TParentImageFilter >
void AllocateOutputs () override
 
 GPUInPlaceImageFilter ()
 
void PrintSelf (std::ostream &os, Indent indent) const override
 
 ~GPUInPlaceImageFilter () override
 
void ReleaseInputs () override
 
- Protected Member Functions inherited from itk::GPUImageToImageFilter< TInputImage, TOutputImage, TParentImageFilter >
 GPUImageToImageFilter ()
 
void GraftOutput (const DataObjectIdentifierType &key, DataObject *output) override
 
void GraftOutput (DataObject *output) override
 
void PrintSelf (std::ostream &os, Indent indent) const override
 
 ~GPUImageToImageFilter () override
 

Protected Attributes

TimeProbe m_ApplyUpdateTime
 
TimeProbe m_ComputeUpdateTime
 
TimeProbe m_InitTime
 
TimeProbe m_SmoothFieldTime {}
 
- Protected Attributes inherited from itk::GPUImageToImageFilter< TInputImage, TOutputImage, TParentImageFilter >
GPUKernelManager::Pointer m_GPUKernelManager {}
 

Private Member Functions

void InitializeFunctionCoefficients ()
 

Private Attributes

FiniteDifferenceFunctionType::Pointer m_DifferenceFunction {}
 
GPUFiniteDifferenceFilterEnum m_State {}
 
bool m_UseImageSpacing {}
 

Additional Inherited Members

- Static Public Member Functions inherited from itk::GPUImageToImageFilter< TInputImage, TOutputImage, TParentImageFilter >
static Pointer New ()
 

Member Typedef Documentation

◆ ConstPointer

template<typename TInputImage, typename TOutputImage, typename TParentImageFilter = FiniteDifferenceImageFilter<TInputImage, TOutputImage>>
using itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::ConstPointer = SmartPointer<const Self>

Definition at line 51 of file itkGPUFiniteDifferenceImageFilter.h.

◆ CPUSuperclass

template<typename TInputImage, typename TOutputImage, typename TParentImageFilter = FiniteDifferenceImageFilter<TInputImage, TOutputImage>>
using itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::CPUSuperclass = TParentImageFilter

Definition at line 49 of file itkGPUFiniteDifferenceImageFilter.h.

◆ FiniteDifferenceFunctionType

template<typename TInputImage, typename TOutputImage, typename TParentImageFilter = FiniteDifferenceImageFilter<TInputImage, TOutputImage>>
using itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::FiniteDifferenceFunctionType = typename GPUFiniteDifferenceFunction<TOutputImage>::DifferenceFunctionType

The value type of the time step. This is distinct from PixelType because PixelType may often be a vector value, while the TimeStep is a scalar value.

Definition at line 75 of file itkGPUFiniteDifferenceImageFilter.h.

◆ GPUSuperclass

template<typename TInputImage, typename TOutputImage, typename TParentImageFilter = FiniteDifferenceImageFilter<TInputImage, TOutputImage>>
using itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::GPUSuperclass = GPUInPlaceImageFilter<TInputImage, TOutputImage, TParentImageFilter>

Definition at line 48 of file itkGPUFiniteDifferenceImageFilter.h.

◆ InputImageType

template<typename TInputImage, typename TOutputImage, typename TParentImageFilter = FiniteDifferenceImageFilter<TInputImage, TOutputImage>>
using itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::InputImageType = TInputImage

Input and output image types.

Definition at line 57 of file itkGPUFiniteDifferenceImageFilter.h.

◆ InputPixelType

template<typename TInputImage, typename TOutputImage, typename TParentImageFilter = FiniteDifferenceImageFilter<TInputImage, TOutputImage>>
using itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::InputPixelType = typename TInputImage::PixelType

Definition at line 65 of file itkGPUFiniteDifferenceImageFilter.h.

◆ InputPixelValueType

template<typename TInputImage, typename TOutputImage, typename TParentImageFilter = FiniteDifferenceImageFilter<TInputImage, TOutputImage>>
using itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::InputPixelValueType = typename NumericTraits<InputPixelType>::ValueType

Definition at line 70 of file itkGPUFiniteDifferenceImageFilter.h.

◆ NeighborhoodScalesType

template<typename TInputImage, typename TOutputImage, typename TParentImageFilter = FiniteDifferenceImageFilter<TInputImage, TOutputImage>>
using itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::NeighborhoodScalesType = typename FiniteDifferenceFunctionType::NeighborhoodScalesType

Definition at line 78 of file itkGPUFiniteDifferenceImageFilter.h.

◆ OutputImageType

template<typename TInputImage, typename TOutputImage, typename TParentImageFilter = FiniteDifferenceImageFilter<TInputImage, TOutputImage>>
using itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::OutputImageType = TOutputImage

Definition at line 58 of file itkGPUFiniteDifferenceImageFilter.h.

◆ OutputPixelType

template<typename TInputImage, typename TOutputImage, typename TParentImageFilter = FiniteDifferenceImageFilter<TInputImage, TOutputImage>>
using itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::OutputPixelType = typename TOutputImage::PixelType

The pixel type of the output image will be used in computations.

Definition at line 64 of file itkGPUFiniteDifferenceImageFilter.h.

◆ OutputPixelValueType

template<typename TInputImage, typename TOutputImage, typename TParentImageFilter = FiniteDifferenceImageFilter<TInputImage, TOutputImage>>
using itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::OutputPixelValueType = typename NumericTraits<OutputPixelType>::ValueType

Extract value type in case the pixel is of vector type

Definition at line 69 of file itkGPUFiniteDifferenceImageFilter.h.

◆ PixelType

template<typename TInputImage, typename TOutputImage, typename TParentImageFilter = FiniteDifferenceImageFilter<TInputImage, TOutputImage>>
using itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::PixelType = OutputPixelType

Definition at line 66 of file itkGPUFiniteDifferenceImageFilter.h.

◆ Pointer

template<typename TInputImage, typename TOutputImage, typename TParentImageFilter = FiniteDifferenceImageFilter<TInputImage, TOutputImage>>
using itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::Pointer = SmartPointer<Self>

Definition at line 50 of file itkGPUFiniteDifferenceImageFilter.h.

◆ RadiusType

template<typename TInputImage, typename TOutputImage, typename TParentImageFilter = FiniteDifferenceImageFilter<TInputImage, TOutputImage>>
using itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::RadiusType = typename FiniteDifferenceFunctionType::RadiusType

Definition at line 77 of file itkGPUFiniteDifferenceImageFilter.h.

◆ Self

template<typename TInputImage, typename TOutputImage, typename TParentImageFilter = FiniteDifferenceImageFilter<TInputImage, TOutputImage>>
using itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::Self = GPUFiniteDifferenceImageFilter

Standard class type aliases.

Definition at line 47 of file itkGPUFiniteDifferenceImageFilter.h.

◆ TimeStepType

template<typename TInputImage, typename TOutputImage, typename TParentImageFilter = FiniteDifferenceImageFilter<TInputImage, TOutputImage>>
using itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::TimeStepType = typename FiniteDifferenceFunctionType::TimeStepType

Definition at line 76 of file itkGPUFiniteDifferenceImageFilter.h.

Constructor & Destructor Documentation

◆ GPUFiniteDifferenceImageFilter()

template<typename TInputImage, typename TOutputImage, typename TParentImageFilter = FiniteDifferenceImageFilter<TInputImage, TOutputImage>>
itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::GPUFiniteDifferenceImageFilter ( )
protected

◆ ~GPUFiniteDifferenceImageFilter()

template<typename TInputImage, typename TOutputImage, typename TParentImageFilter = FiniteDifferenceImageFilter<TInputImage, TOutputImage>>
itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::~GPUFiniteDifferenceImageFilter ( )
overrideprotected

Member Function Documentation

◆ AllocateUpdateBuffer()

template<typename TInputImage, typename TOutputImage, typename TParentImageFilter = FiniteDifferenceImageFilter<TInputImage, TOutputImage>>
void itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::AllocateUpdateBuffer ( )
overrideprotectedpure virtual

◆ CopyInputToOutput()

template<typename TInputImage, typename TOutputImage, typename TParentImageFilter = FiniteDifferenceImageFilter<TInputImage, TOutputImage>>
void itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::CopyInputToOutput ( )
overrideprotectedpure virtual

◆ GenerateInputRequestedRegion()

template<typename TInputImage, typename TOutputImage, typename TParentImageFilter = FiniteDifferenceImageFilter<TInputImage, TOutputImage>>
void itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::GenerateInputRequestedRegion ( )
overrideprotected

FiniteDifferenceImageFilter needs a larger input requested region than the output requested region. As such, we need to provide an implementation for GenerateInputRequestedRegion() in order to inform the pipeline execution model.

The filter will ask for a padded region to perform its neighborhood calculations. If no such region is available, the boundaries will be handled as described in the FiniteDifferenceFunction defined by the subclass.
See also
ProcessObject::GenerateInputRequestedRegion()

◆ GetApplyUpdateTime()

template<typename TInputImage, typename TOutputImage, typename TParentImageFilter = FiniteDifferenceImageFilter<TInputImage, TOutputImage>>
virtual const TimeProbe& itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::GetApplyUpdateTime ( ) const
virtual

Methods to get timers

◆ GetComputeUpdateTime()

template<typename TInputImage, typename TOutputImage, typename TParentImageFilter = FiniteDifferenceImageFilter<TInputImage, TOutputImage>>
virtual const TimeProbe& itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::GetComputeUpdateTime ( ) const
virtual

Methods to get timers

◆ GetDifferenceFunction()

template<typename TInputImage, typename TOutputImage, typename TParentImageFilter = FiniteDifferenceImageFilter<TInputImage, TOutputImage>>
const FiniteDifferenceFunctionType::Pointer& itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::GetDifferenceFunction ( ) const
inlineoverride

This method returns a pointer to a FiniteDifferenceFunction object that will be used by the filter to calculate updates at image pixels.

Returns
A FiniteDifferenceObject pointer.

Definition at line 84 of file itkGPUFiniteDifferenceImageFilter.h.

◆ GetInitTime()

template<typename TInputImage, typename TOutputImage, typename TParentImageFilter = FiniteDifferenceImageFilter<TInputImage, TOutputImage>>
virtual const TimeProbe& itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::GetInitTime ( ) const
virtual

Methods to get timers

◆ GetNameOfClass()

template<typename TInputImage, typename TOutputImage, typename TParentImageFilter = FiniteDifferenceImageFilter<TInputImage, TOutputImage>>
const char* itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::GetNameOfClass ( ) const
override

◆ GetSmoothFieldTime()

template<typename TInputImage, typename TOutputImage, typename TParentImageFilter = FiniteDifferenceImageFilter<TInputImage, TOutputImage>>
virtual const TimeProbe& itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::GetSmoothFieldTime ( ) const
virtual

Methods to get timers

◆ GetState()

template<typename TInputImage, typename TOutputImage, typename TParentImageFilter = FiniteDifferenceImageFilter<TInputImage, TOutputImage>>
virtual const GPUFiniteDifferenceFilterEnum& itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::GetState ( ) const
virtual

Set/Get the state of the filter.

◆ GPUApplyUpdate()

template<typename TInputImage, typename TOutputImage, typename TParentImageFilter = FiniteDifferenceImageFilter<TInputImage, TOutputImage>>
virtual void itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::GPUApplyUpdate ( const TimeStepType dt)
protectedpure virtual

This method is defined by a subclass to apply changes to the output from an update buffer and a time step value "dt".

Parameters
dtTime step value.

◆ GPUCalculateChange()

template<typename TInputImage, typename TOutputImage, typename TParentImageFilter = FiniteDifferenceImageFilter<TInputImage, TOutputImage>>
virtual TimeStepType itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::GPUCalculateChange ( )
protectedpure virtual

This method is defined by a subclass to populate an update buffer with changes for the pixels in the output. It returns a time step value to be used for the update.

Returns
A time step to use in updating the output with the changes calculated from this method.

Implemented in itk::GPUDenseFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >, and itk::GPUDenseFiniteDifferenceImageFilter< TDisplacementField, TDisplacementField, TParentImageFilter >.

◆ GPUGenerateData()

template<typename TInputImage, typename TOutputImage, typename TParentImageFilter = FiniteDifferenceImageFilter<TInputImage, TOutputImage>>
void itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::GPUGenerateData ( )
overrideprotectedvirtual

This is the default, high-level algorithm for calculating finite difference solutions. It calls virtual methods in its subclasses to implement the major steps of the algorithm.

Reimplemented from itk::GPUImageToImageFilter< TInputImage, TOutputImage, TParentImageFilter >.

◆ Halt()

template<typename TInputImage, typename TOutputImage, typename TParentImageFilter = FiniteDifferenceImageFilter<TInputImage, TOutputImage>>
bool itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::Halt ( )
overrideprotected

This method returns true when the current iterative solution of the equation has met the criteria to stop solving. Defined by a subclass.

◆ Initialize()

template<typename TInputImage, typename TOutputImage, typename TParentImageFilter = FiniteDifferenceImageFilter<TInputImage, TOutputImage>>
void itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::Initialize ( )
inlineoverrideprotected

This method is optionally defined by a subclass and is called before the loop of iterations of calculate_change & update. It does the global initialization, i.e. in the SparseFieldLevelSetImageFilter, initialize the list of layers.

Definition at line 223 of file itkGPUFiniteDifferenceImageFilter.h.

◆ InitializeFunctionCoefficients()

template<typename TInputImage, typename TOutputImage, typename TParentImageFilter = FiniteDifferenceImageFilter<TInputImage, TOutputImage>>
void itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::InitializeFunctionCoefficients ( )
private

Initialize the values of the Function coefficients. This function will also take care of checking whether the image spacing should be taken into account or not.

◆ InitializeIteration()

template<typename TInputImage, typename TOutputImage, typename TParentImageFilter = FiniteDifferenceImageFilter<TInputImage, TOutputImage>>
void itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::InitializeIteration ( )
inlineoverrideprotected

This method is optionally defined by a subclass and is called immediately prior to each iterative CalculateChange-ApplyUpdate cycle. It can be used to set global variables needed for the next iteration (ie. average gradient magnitude of the image in anisotropic diffusion functions), or otherwise prepare for the next iteration.

Definition at line 233 of file itkGPUFiniteDifferenceImageFilter.h.

◆ PostProcessOutput()

template<typename TInputImage, typename TOutputImage, typename TParentImageFilter = FiniteDifferenceImageFilter<TInputImage, TOutputImage>>
void itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::PostProcessOutput ( )
inlineoverrideprotected

This method is called after the solution has been generated to allow subclasses to apply some further processing to the output.

Definition at line 256 of file itkGPUFiniteDifferenceImageFilter.h.

◆ PrintSelf()

template<typename TInputImage, typename TOutputImage, typename TParentImageFilter = FiniteDifferenceImageFilter<TInputImage, TOutputImage>>
void itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::PrintSelf ( std::ostream &  os,
Indent  indent 
) const
overrideprotected

◆ ResolveTimeStep()

template<typename TInputImage, typename TOutputImage, typename TParentImageFilter = FiniteDifferenceImageFilter<TInputImage, TOutputImage>>
TimeStepType itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::ResolveTimeStep ( const std::vector< TimeStepType > &  timeStepList,
const BooleanStdVectorType valid 
) const
overrideprotected

Virtual method for resolving a single time step from a set of time steps returned from processing threads.

Returns
Time step (dt) for the iteration update based on a list of time steps generated from the threaded calculated change method (one for each region processed).
Parameters
timeStepListThe set of time changes compiled from all the threaded calls to ThreadedGenerateData.
validThe set of flags indicating which of "timeStepList" elements are valid.

The default is to return the minimum value in the list.

◆ SetDifferenceFunction()

template<typename TInputImage, typename TOutputImage, typename TParentImageFilter = FiniteDifferenceImageFilter<TInputImage, TOutputImage>>
void itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::SetDifferenceFunction ( FiniteDifferenceFunctionType differenceFunction)
inlineoverride

This method sets the pointer to a FiniteDifferenceFunction object that will be used by the filter to calculate updates at image pixels.

Returns
A FiniteDifferenceObject pointer.

Definition at line 93 of file itkGPUFiniteDifferenceImageFilter.h.

Referenced by itk::GPUGradientAnisotropicDiffusionImageFilter< TInputImage, TOutputImage, TParentImageFilter >::GPUGradientAnisotropicDiffusionImageFilter().

◆ SetState()

template<typename TInputImage, typename TOutputImage, typename TParentImageFilter = FiniteDifferenceImageFilter<TInputImage, TOutputImage>>
virtual void itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::SetState ( GPUFiniteDifferenceFilterEnum  _arg)
virtual

Set/Get the state of the filter.

◆ SetStateToInitialized()

template<typename TInputImage, typename TOutputImage, typename TParentImageFilter = FiniteDifferenceImageFilter<TInputImage, TOutputImage>>
void itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::SetStateToInitialized ( )
inline

Set the state of the filter to INITIALIZED

Definition at line 114 of file itkGPUFiniteDifferenceImageFilter.h.

◆ SetStateToUninitialized()

template<typename TInputImage, typename TOutputImage, typename TParentImageFilter = FiniteDifferenceImageFilter<TInputImage, TOutputImage>>
void itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::SetStateToUninitialized ( )
inline

Set the state of the filter to UNINITIALIZED

Definition at line 121 of file itkGPUFiniteDifferenceImageFilter.h.

◆ ThreadedHalt()

template<typename TInputImage, typename TOutputImage, typename TParentImageFilter = FiniteDifferenceImageFilter<TInputImage, TOutputImage>>
bool itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::ThreadedHalt ( void *  )
inlineoverrideprotected

This method is similar to Halt(), and its default implementation in this class is simply to call Halt(). However, this method takes as a parameter a void pointer to the MultiThreaderBase::WorkUnitInfo structure. If you override this method instead of overriding Halt, you will be able to get the current thread ID and handle the Halt method accordingly. This is useful if you are doing a lot of processing in Halt that you don't want parallelized. Notice that ThreadedHalt is only called by the multithreaded filters, so you still should implement Halt, just in case a non-threaded filter is used.

Definition at line 212 of file itkGPUFiniteDifferenceImageFilter.h.

Member Data Documentation

◆ ImageDimension

template<typename TInputImage, typename TOutputImage, typename TParentImageFilter = FiniteDifferenceImageFilter<TInputImage, TOutputImage>>
constexpr unsigned int itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::ImageDimension = OutputImageType::ImageDimension
staticconstexpr

Dimensionality of input and output data is assumed to be the same.

Definition at line 61 of file itkGPUFiniteDifferenceImageFilter.h.

◆ m_ApplyUpdateTime

template<typename TInputImage, typename TOutputImage, typename TParentImageFilter = FiniteDifferenceImageFilter<TInputImage, TOutputImage>>
TimeProbe itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::m_ApplyUpdateTime
protected

Definition at line 260 of file itkGPUFiniteDifferenceImageFilter.h.

◆ m_ComputeUpdateTime

template<typename TInputImage, typename TOutputImage, typename TParentImageFilter = FiniteDifferenceImageFilter<TInputImage, TOutputImage>>
TimeProbe itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::m_ComputeUpdateTime
protected

Definition at line 260 of file itkGPUFiniteDifferenceImageFilter.h.

◆ m_DifferenceFunction

template<typename TInputImage, typename TOutputImage, typename TParentImageFilter = FiniteDifferenceImageFilter<TInputImage, TOutputImage>>
FiniteDifferenceFunctionType::Pointer itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::m_DifferenceFunction {}
private

The function that will be used in calculating updates for each pixel.

Definition at line 270 of file itkGPUFiniteDifferenceImageFilter.h.

◆ m_InitTime

template<typename TInputImage, typename TOutputImage, typename TParentImageFilter = FiniteDifferenceImageFilter<TInputImage, TOutputImage>>
TimeProbe itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::m_InitTime
protected

Timers for statistics

Definition at line 260 of file itkGPUFiniteDifferenceImageFilter.h.

◆ m_SmoothFieldTime

template<typename TInputImage, typename TOutputImage, typename TParentImageFilter = FiniteDifferenceImageFilter<TInputImage, TOutputImage>>
TimeProbe itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::m_SmoothFieldTime {}
protected

Definition at line 260 of file itkGPUFiniteDifferenceImageFilter.h.

◆ m_State

template<typename TInputImage, typename TOutputImage, typename TParentImageFilter = FiniteDifferenceImageFilter<TInputImage, TOutputImage>>
GPUFiniteDifferenceFilterEnum itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::m_State {}
private

State that the filter is in, i.e. UNINITIALIZED or INITIALIZED

Definition at line 277 of file itkGPUFiniteDifferenceImageFilter.h.

◆ m_UseImageSpacing

template<typename TInputImage, typename TOutputImage, typename TParentImageFilter = FiniteDifferenceImageFilter<TInputImage, TOutputImage>>
bool itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::m_UseImageSpacing {}
private

Control whether derivatives use spacing of the input image in its calculation.

Definition at line 274 of file itkGPUFiniteDifferenceImageFilter.h.


The documentation for this class was generated from the following file: