ITK  5.0.0
Insight Segmentation and Registration Toolkit
Public Types | Public Member Functions | Protected Types | Protected Member Functions | List of all members
itk::BackwardDifferenceOperator< TPixel, TDimension, TAllocator > Class Template Reference

#include <itkBackwardDifferenceOperator.h>

+ Inheritance diagram for itk::BackwardDifferenceOperator< TPixel, TDimension, TAllocator >:
+ Collaboration diagram for itk::BackwardDifferenceOperator< TPixel, TDimension, TAllocator >:

Detailed Description

template<typename TPixel, unsigned int TDimension = 2, typename TAllocator = NeighborhoodAllocator< TPixel >>
class itk::BackwardDifferenceOperator< TPixel, TDimension, TAllocator >

Operator whose inner product with a neighborhood returns a "half" derivative at the center of the neighborhood.

BackwardDifferenceOperator uses backward differences i.e. F(x) - F(x-1) to calculate a "half" derivative useful, among other things, in solving differential equations. It is a directional NeighborhoodOperator that should be applied to a Neighborhood using the inner product.

Wiki Examples:
Examples:
SphinxExamples/src/Core/Common/CreateABackwardDifferenceOperator/Code.cxx, and WikiExamples/Operators/BackwardDifferenceOperator.cxx.

Definition at line 46 of file itkBackwardDifferenceOperator.h.

Public Types

using PixelType = typename Superclass::PixelType
 
using Self = BackwardDifferenceOperator
 
using Superclass = NeighborhoodOperator< TPixel, TDimension, TAllocator >
 
- Public Types inherited from itk::NeighborhoodOperator< TPixel, TDimension, TAllocator >
using PixelRealType = typename NumericTraits< TPixel >::RealType
 
using PixelType = TPixel
 
using Self = NeighborhoodOperator
 
using SizeType = typename Superclass::SizeType
 
using SliceIteratorType = SliceIterator< TPixel, Self >
 
using Superclass = Neighborhood< TPixel, VDimension, TAllocator >
 
- Public Types inherited from itk::Neighborhood< TPixel, VDimension, TAllocator >
using AllocatorType = TAllocator
 
using ConstIterator = typename AllocatorType::const_iterator
 
using DimensionValueType = unsigned int
 
using Iterator = typename AllocatorType::iterator
 
using NeighborIndexType = SizeValueType
 
using OffsetType = Offset< VDimension >
 
using PixelType = TPixel
 
using RadiusType = ::itk::Size< VDimension >
 
using Self = Neighborhood
 
using SizeType = ::itk::Size< VDimension >
 
using SizeValueType = typename SizeType::SizeValueType
 
using SliceIteratorType = SliceIterator< TPixel, Self >
 

Public Member Functions

 BackwardDifferenceOperator ()=default
 
- Public Member Functions inherited from itk::NeighborhoodOperator< TPixel, TDimension, TAllocator >
virtual void CreateDirectional ()
 
virtual void CreateToRadius (const SizeType &)
 
virtual void CreateToRadius (const SizeValueType)
 
virtual void FlipAxes ()
 
unsigned long GetDirection () const
 
virtual const char * GetNameOfClass () const
 
 NeighborhoodOperator ()
 
 NeighborhoodOperator (const Self &orig)
 
void ScaleCoefficients (PixelRealType)
 
void SetDirection (const unsigned long &direction)
 
Selfoperator= (const Self &orig)
 
void PrintSelf (std::ostream &os, Indent i) const override
 
- Public Member Functions inherited from itk::Neighborhood< TPixel, VDimension, TAllocator >
NeighborIndexType GetCenterNeighborhoodIndex () const
 
TPixel GetCenterValue () const
 
virtual NeighborIndexType GetNeighborhoodIndex (const OffsetType &) const
 
OffsetType GetOffset (NeighborIndexType i) const
 
const SizeType GetRadius () const
 
SizeValueType GetRadius (DimensionValueType n) const
 
SizeValueType GetSize (DimensionValueType n) const
 
SizeType GetSize () const
 
std::slice GetSlice (unsigned int) const
 
OffsetValueType GetStride (DimensionValueType axis) const
 
 itkTypeMacroNoParent (Neighborhood)
 
 Neighborhood (const Self &other)
 
 Neighborhood (Self &&)=default
 
bool operator!= (const Self &other) const
 
Selfoperator= (const Self &other)
 
Selfoperator= (Self &&)=default
 
bool operator== (const Self &other) const
 
void Print (std::ostream &os) const
 
void SetRadius (const SizeType &)
 
void SetRadius (const SizeValueType)
 
NeighborIndexType Size () const
 
virtual ~Neighborhood ()=default
 
 Neighborhood ()
 
Iterator End ()
 
Iterator Begin ()
 
ConstIterator End () const
 
ConstIterator Begin () const
 
TPixel & operator[] (NeighborIndexType i)
 
const TPixel & operator[] (NeighborIndexType i) const
 
TPixel & GetElement (NeighborIndexType i)
 
void SetRadius (const SizeValueType *rad)
 
AllocatorTypeGetBufferReference ()
 
const AllocatorTypeGetBufferReference () const
 
TPixel & operator[] (const OffsetType &o)
 
const TPixel & operator[] (const OffsetType &o) const
 

Protected Types

using CoefficientVector = typename Superclass::CoefficientVector
 
- Protected Types inherited from itk::NeighborhoodOperator< TPixel, TDimension, TAllocator >
using CoefficientVector = std::vector< PixelRealType >
 

Protected Member Functions

CoefficientVector GenerateCoefficients () override
 
void Fill (const CoefficientVector &coeff) override
 
- Protected Member Functions inherited from itk::NeighborhoodOperator< TPixel, TDimension, TAllocator >
virtual void Fill (const CoefficientVector &)=0
 
virtual void FillCenteredDirectional (const CoefficientVector &)
 
void InitializeToZero ()
 
- Protected Member Functions inherited from itk::Neighborhood< TPixel, VDimension, TAllocator >
virtual void Allocate (NeighborIndexType i)
 
virtual void ComputeNeighborhoodOffsetTable ()
 
virtual void ComputeNeighborhoodStrideTable ()
 
void SetSize ()
 

Additional Inherited Members

- Static Public Attributes inherited from itk::Neighborhood< TPixel, VDimension, TAllocator >
static constexpr unsigned int NeighborhoodDimension = VDimension
 

Member Typedef Documentation

template<typename TPixel , unsigned int TDimension = 2, typename TAllocator = NeighborhoodAllocator< TPixel >>
using itk::BackwardDifferenceOperator< TPixel, TDimension, TAllocator >::CoefficientVector = typename Superclass::CoefficientVector
protected

Necessary to work around a compiler bug in VC++.

Definition at line 64 of file itkBackwardDifferenceOperator.h.

template<typename TPixel , unsigned int TDimension = 2, typename TAllocator = NeighborhoodAllocator< TPixel >>
using itk::BackwardDifferenceOperator< TPixel, TDimension, TAllocator >::PixelType = typename Superclass::PixelType

From Superclass

Definition at line 57 of file itkBackwardDifferenceOperator.h.

template<typename TPixel , unsigned int TDimension = 2, typename TAllocator = NeighborhoodAllocator< TPixel >>
using itk::BackwardDifferenceOperator< TPixel, TDimension, TAllocator >::Self = BackwardDifferenceOperator

Standard class type aliases.

Definition at line 53 of file itkBackwardDifferenceOperator.h.

template<typename TPixel , unsigned int TDimension = 2, typename TAllocator = NeighborhoodAllocator< TPixel >>
using itk::BackwardDifferenceOperator< TPixel, TDimension, TAllocator >::Superclass = NeighborhoodOperator< TPixel, TDimension, TAllocator >

Definition at line 54 of file itkBackwardDifferenceOperator.h.

Constructor & Destructor Documentation

template<typename TPixel , unsigned int TDimension = 2, typename TAllocator = NeighborhoodAllocator< TPixel >>
itk::BackwardDifferenceOperator< TPixel, TDimension, TAllocator >::BackwardDifferenceOperator ( )
default

Constructor.

Member Function Documentation

template<typename TPixel , unsigned int TDimension = 2, typename TAllocator = NeighborhoodAllocator< TPixel >>
void itk::BackwardDifferenceOperator< TPixel, TDimension, TAllocator >::Fill ( const CoefficientVector coeff)
inlineoverrideprotected

Arranges coefficients spatially in the memory buffer.

Definition at line 70 of file itkBackwardDifferenceOperator.h.

template<typename TPixel , unsigned int TDimension = 2, typename TAllocator = NeighborhoodAllocator< TPixel >>
CoefficientVector itk::BackwardDifferenceOperator< TPixel, TDimension, TAllocator >::GenerateCoefficients ( )
overrideprotectedvirtual

Calculates operator coefficients.

Implements itk::NeighborhoodOperator< TPixel, TDimension, TAllocator >.


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