Horus Doc || C++ Reference || Class Overview   Pixels   Images   Detector   Geometry   Registry || Doxygen's quick Index  

HxImgFtorNgb2dExtra Class Template Reference

Instantiation of generic algorithm for neighborhood operations on 2D images with an extra image. More...

#include <HxImgFtorNgb2dExtra.h>

Inheritance diagram for HxImgFtorNgb2dExtra::

HxImgFtorI3Cast< DstImgSigT, SrcImgSigT, ExtraImgSigT > HxImgFtorI3 HxImgFunctor List of all members.

Public Types

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


Public Methods

 HxImgFtorNgb2dExtra ()
 Constructor. More...

virtual ~HxImgFtorNgb2dExtra ()
 Destructor. More...

virtual bool probeOp (HxTagList &tags) const
 Probe for border size. More...


Protected Methods

virtual void doIt (Img1DataPtrType dstPtr, Img2DataPtrType srcPtr, Img3DataPtrType extraPtr, HxSizes dstSize, HxSizes srcSize, HxSizes extraSize, HxTagList &tags, HxImgFtorDescription *description=0)
 Do it. More...


Detailed Description

template<class DstImgSigT, class SrcImgSigT, class ExtraImgSigT, class NgbT>
class HxImgFtorNgb2dExtra< DstImgSigT, SrcImgSigT, ExtraImgSigT, NgbT >

Instantiation of generic algorithm for neighborhood operations on 2D images with an extra image.

Template parameters:


Member Typedef Documentation

template<class DstImgSigT, class SrcImgSigT, class ExtraImgSigT, class NgbT>
typedef HxImgFtorNgbExtraKey HxImgFtorNgb2dExtra::KeyType
 

The key type of this class.

Reimplemented from HxImgFtorI3Cast.


Constructor & Destructor Documentation

template<class DstImgSigT, class SrcImgSigT, class ExtraImgSigT, class NgbT>
HxImgFtorNgb2dExtra< DstImgSigT, SrcImgSigT, ExtraImgSigT, NgbT >::HxImgFtorNgb2dExtra   [inline]
 

Constructor.

template<class DstImgSigT, class SrcImgSigT, class ExtraImgSigT, class NgbT>
HxImgFtorNgb2dExtra< DstImgSigT, SrcImgSigT, ExtraImgSigT, NgbT >::~HxImgFtorNgb2dExtra   [virtual]
 

Destructor.

00037 {
00038 }


Member Function Documentation

template<class DstImgSigT, class SrcImgSigT, class ExtraImgSigT, class NgbT>
bool HxImgFtorNgb2dExtra< DstImgSigT, SrcImgSigT, ExtraImgSigT, NgbT >::probeOp HxTagList   tags const [virtual]
 

Probe for border size.

Reimplemented from HxImgFunctor.

00044 {
00045     NgbT ngb(tags);
00046     HxSizes borderSize = ngb.size() / HxSizes(2,2,2);
00047     HxAddTag<HxSizes>(tags, "borderSize", borderSize);
00048     return true;
00049 }

template<class DstImgSigT, class SrcImgSigT, class ExtraImgSigT, class NgbT>
void HxImgFtorNgb2dExtra< DstImgSigT, SrcImgSigT, ExtraImgSigT, NgbT >::doIt Img1DataPtrType    dstPtr,
Img2DataPtrType    srcPtr,
Img3DataPtrType    extraPtr,
HxSizes    dstSize,
HxSizes    srcSize,
HxSizes    extraSize,
HxTagList   tags,
HxImgFtorDescription   description = 0
[protected, virtual]
 

Do it.

Parameters:
dstPtr  Output image: IS = dstSize, IBS = 0
srcPtr  Input image: IS = srcSize, IBS = taglist(borderSize)
extraPtr  Extra image: IS = extraSize, IBS = taglist(borderSize)
Calls HxFuncNgbOp2dExtraDispatch to dispatch the actual work.

Reimplemented from HxImgFtorI3Cast.

00058 {
00059     NgbT ngb(tags);
00060 
00061     if (description) {
00062         HxString v(typename NgbT::IteratorCategory().toString());
00063         v += ", ";
00064         v += typename NgbT::PhaseCategory().toString();
00065         description->setVariation(v);
00066     }
00067 
00068     HxFuncNgbOp2dExtraDispatch(dstPtr, srcPtr, extraPtr, dstSize, ngb);
00069 }


The documentation for this class was generated from the following files:
Generated on Mon Jan 27 15:49:03 2003 for C++Reference by doxygen1.2.12 written by Dimitri van Heesch, © 1997-2001