MeVisLab Toolbox Reference
ml::LineApplicator< DATATYPE > Class Template Reference

The LineApplicator class provides pure virtual functions used by the old applyFiltering functions from the KernelTools class to filter one row of an SubImage and writes it to an output also given by another SubImage. More...

#include <mlLineApplicator.h>

Inheritance diagram for ml::LineApplicator< DATATYPE >:
ml::KernelLineApplicatorBase< DATATYPE, KDATATYPE > ml::KernelLineApplicator< DATATYPE, KDATATYPE >

Public Member Functions

virtual void applyToLine (TSubImageWithCursor< DATATYPE > *, TSubImageWithCursor< DATATYPE > *, size_t)
 Method to be overloaded to implement an algorithm which filters a line of the input image. More...
 
virtual ~LineApplicator ()
 Virtual destructor. Currently it does nothing. More...
 
virtual ImageVector getNegativeExtent () const
 Returns the negative extent of a kernel used for filtering. More...
 
virtual ImageVector getPositiveExtent () const
 Returns the positive extent of a kernel used for filtering. More...
 

Detailed Description

template<typename DATATYPE>
class ml::LineApplicator< DATATYPE >

The LineApplicator class provides pure virtual functions used by the old applyFiltering functions from the KernelTools class to filter one row of an SubImage and writes it to an output also given by another SubImage.

The central method is

applyToLine(TSubImageWithCursor<DATATYPE> *inSubImg, TSubImageWithCursor<DATATYPE> *outSubImg, int numVox)

which applies the filter to a line of numVox voxels in the inSubImg and writes the result to outSubImg. Before doing that in both subimages the cursor position must be set adequately. This is usually done by the old applyFiltering functions from the KernelTools class.

To ensure correct boundary-handling the region accessed by the filter must be provided. This is done by the methods

getNegativeExtent () getPositiveExtent ()

For related code and more information see mlKernelExample.h, mlKernel.h, mlKernelBaseModule.h, mlKernelModule.h, mlKernelEditor.h, mlRankFilter.h, mlExtConvolutionFilter.h, mlKernelMacros, mlKernelTools.h and mlConvolutionFilter.h.

Definition at line 53 of file mlLineApplicator.h.

Constructor & Destructor Documentation

◆ ~LineApplicator()

template<typename DATATYPE >
virtual ml::LineApplicator< DATATYPE >::~LineApplicator ( )
inlinevirtual

Virtual destructor. Currently it does nothing.

Definition at line 68 of file mlLineApplicator.h.

Member Function Documentation

◆ applyToLine()

template<typename DATATYPE >
virtual void ml::LineApplicator< DATATYPE >::applyToLine ( TSubImageWithCursor< DATATYPE > *  ,
TSubImageWithCursor< DATATYPE > *  ,
size_t   
)
inlinevirtual

Method to be overloaded to implement an algorithm which filters a line of the input image.

Reimplemented in ml::KernelLineApplicator< DATATYPE, KDATATYPE >, and ml::KernelLineApplicatorBase< DATATYPE, KDATATYPE >.

Definition at line 62 of file mlLineApplicator.h.

◆ getNegativeExtent()

template<typename DATATYPE >
virtual ImageVector ml::LineApplicator< DATATYPE >::getNegativeExtent ( ) const
inlinevirtual

Returns the negative extent of a kernel used for filtering.

Reimplemented in ml::KernelLineApplicatorBase< DATATYPE, KDATATYPE >.

Definition at line 71 of file mlLineApplicator.h.

Referenced by ml::MLKernelToolsApplyFiltering().

◆ getPositiveExtent()

template<typename DATATYPE >
virtual ImageVector ml::LineApplicator< DATATYPE >::getPositiveExtent ( ) const
inlinevirtual

Returns the positive extent of a kernel used for filtering.

Reimplemented in ml::KernelLineApplicatorBase< DATATYPE, KDATATYPE >.

Definition at line 74 of file mlLineApplicator.h.

Referenced by ml::MLKernelToolsApplyFiltering().


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