Main Page   Class Overview   Pixels   Images   Geometry   Quick Index  

HxImgFtorRecNgb2d Class Template Reference

Instantiation of generic algorithm for recursive neighborhood operations on 2D images. More...

#include <HxImgFtorRecNgb2d.h>

Inheritance diagram for HxImgFtorRecNgb2d::

HxImgFtorI2Cast< ImgSigT, KerImgSigT > HxImgFtorI2 HxImgFunctor List of all members.

Public Types

typedef HxImgFtorRecNgbKey KeyType
 The key type of this class. More...

typedef ImgSigT::DataPtrType DataPtrType
 The data pointer type of the source image. More...

typedef KerImgSigT::DataPtrType KerDataPtrType
 The data pointer type of the kernel image. More...


Public Methods

 HxImgFtorRecNgb2d ()
 Constructor. More...

virtual ~HxImgFtorRecNgb2d ()
 Destructor. More...


Protected Methods

virtual void doIt (DataPtrType imgPtr, KerDataPtrType kerPtr, HxSizes imgSize, HxSizes kerSize, HxTagList &tags, HxImgFtorDescription *=0)
 Calls recNgb, recNgbKx, or recNgbKy to do the actual work based on the "dimension" tag. More...

virtual void recNgb (DataPtrType imgPtr, KerDataPtrType kerPtr, HxSizes imgSize, HxSizes kerSize, HxTagList &tags)
virtual void recNgbKx (DataPtrType imgPtr, KerDataPtrType kerPtr, HxSizes imgSize, HxSizes kerSize, HxTagList &tags)
virtual void recNgbKy (DataPtrType imgPtr, KerDataPtrType kerPtr, HxSizes imgSize, HxSizes kerSize, HxTagList &tags)

Detailed Description

template<class ImgSigT, class KerImgSigT, class PixOpT, class RedOpT>
class HxImgFtorRecNgb2d< ImgSigT, KerImgSigT, PixOpT, RedOpT >

Instantiation of generic algorithm for recursive neighborhood operations on 2D images.


Member Typedef Documentation

template<class ImgSigT, class KerImgSigT, class PixOpT, class RedOpT>
typedef HxImgFtorRecNgbKey HxImgFtorRecNgb2d::KeyType
 

The key type of this class.

Reimplemented from HxImgFtorI2Cast.

template<class ImgSigT, class KerImgSigT, class PixOpT, class RedOpT>
typedef ImgSigT::DataPtrType HxImgFtorRecNgb2d::DataPtrType
 

The data pointer type of the source image.

template<class ImgSigT, class KerImgSigT, class PixOpT, class RedOpT>
typedef KerImgSigT::DataPtrType HxImgFtorRecNgb2d::KerDataPtrType
 

The data pointer type of the kernel image.


Constructor & Destructor Documentation

template<class ImgSigT, class KerImgSigT, class PixOpT, class RedOpT>
HxImgFtorRecNgb2d< ImgSigT, KerImgSigT, PixOpT, RedOpT >::HxImgFtorRecNgb2d  
 

Constructor.

00027         : HxImgFtorI2Cast<ImgSigT, KerImgSigT>(
00028             HxImgFtorRecNgbKey(
00029                 HxClassName<ImgSigT>(), HxClassName<KerImgSigT>(), 
00030                 HxClassName<PixOpT>(), HxClassName<RedOpT>()))
00031 {
00032 #ifdef CD_TRACE
00033     HxEnvironment::instance()->outputStream()
00034         << "HxImgFtorRecNgb2d::HxImgFtorRecNgb2d()" << STD_ENDL;
00035 #endif
00036 }

template<class ImgSigT, class KerImgSigT, class PixOpT, class RedOpT>
HxImgFtorRecNgb2d< ImgSigT, KerImgSigT, PixOpT, RedOpT >::~HxImgFtorRecNgb2d   [virtual]
 

Destructor.

00040 {
00041 #ifdef CD_TRACE
00042     HxEnvironment::instance()->outputStream()
00043         << "HxImgFtorRecNgb2d::~HxImgFtorRecNgb2d()" << STD_ENDL;
00044 #endif
00045 }


Member Function Documentation

template<class ImgSigT, class KerImgSigT, class PixOpT, class RedOpT>
void HxImgFtorRecNgb2d< ImgSigT, KerImgSigT, PixOpT, RedOpT >::doIt DataPtrType    imgPtr,
KerDataPtrType    kerPtr,
HxSizes    imgSize,
HxSizes    kerSize,
HxTagList   tags,
HxImgFtorDescription   = 0
[protected, virtual]
 

Calls recNgb, recNgbKx, or recNgbKy to do the actual work based on the "dimension" tag.

00432 {
00433     int dimension = HxGetTag(tags, "dimension", 0);
00434 
00435     switch(dimension)
00436     {
00437     case 0  :
00438         recNgb(imgPtr, kerPtr, imgSize, kerSize, tags);
00439         break;
00440     case 1  :
00441         recNgbKx(imgPtr, kerPtr, imgSize, kerSize, tags);
00442         break;
00443     case 2  :
00444         recNgbKy(imgPtr, kerPtr, imgSize, kerSize, tags);
00445         break;
00446     default :
00447         HxEnvironment::instance()->errorStream()
00448             << "Recursive generalized convolution (2d image, 1d kernel): "
00449             << "cannot execute convolution in dimension " << dimension
00450             << STD_ENDL;
00451         HxEnvironment::instance()->flush();
00452     }
00453 }


The documentation for this class was generated from the following files:
Generated on Tue Jan 8 13:59:30 2002 for C++Reference by doxygen1.2.12 written by Dimitri van Heesch, © 1997-2001