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

HxImgFtorNgb2dExtra2 Class Template Reference

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

#include <HxImgFtorNgb2dExtra2.h>

Inheritance diagram for HxImgFtorNgb2dExtra2::

HxImgFtorI4Cast< DstImgSigT, SrcImgSigT, ExtraImgSigT, ExtraImg2SigT > HxImgFtorI4 HxImgFunctor List of all members.

Public Types

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


Public Methods

 HxImgFtorNgb2dExtra2 ()
 Constructor. More...

virtual ~HxImgFtorNgb2dExtra2 ()
 Destructor. More...

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


Protected Methods

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


Detailed Description

template<class DstImgSigT, class SrcImgSigT, class ExtraImgSigT, class ExtraImg2SigT, class NgbT>
class HxImgFtorNgb2dExtra2< DstImgSigT, SrcImgSigT, ExtraImgSigT, ExtraImg2SigT, NgbT >

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

Template parameters:


Member Typedef Documentation

template<class DstImgSigT, class SrcImgSigT, class ExtraImgSigT, class ExtraImg2SigT, class NgbT>
typedef HxImgFtorNgbExtra2Key HxImgFtorNgb2dExtra2::KeyType
 

The key type of this class.

Reimplemented from HxImgFtorI4Cast.


Constructor & Destructor Documentation

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

Constructor.

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

Destructor.

00043 {
00044 }


Member Function Documentation

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

Probe for border size.

Reimplemented from HxImgFunctor.

00051 {
00052     NgbT ngb(tags);
00053     HxSizes borderSize = ngb.size() / HxSizes(2,2,2);
00054     HxAddTag<HxSizes>(tags, "borderSize", borderSize);
00055     return true;
00056 }

template<class DstImgSigT, class SrcImgSigT, class ExtraImgSigT, class ExtraImg2SigT, class NgbT>
void HxImgFtorNgb2dExtra2< DstImgSigT, SrcImgSigT, ExtraImgSigT, ExtraImg2SigT, NgbT >::doIt Img1DataPtrType    dstPtr,
Img2DataPtrType    srcPtr,
Img3DataPtrType    extraPtr,
Img4DataPtrType    extra2Ptr,
HxSizes    dstSize,
HxSizes    srcSize,
HxSizes    extraSize,
HxSizes    extra2Size,
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)
extra2Ptr  Extra image: IS = extra2Size, IBS = taglist(borderSize)
Calls HxFuncNgbOp2dExtra2Dispatch to dispatch the actual work.

Reimplemented from HxImgFtorI4Cast.

00067 {
00068     NgbT ngb(tags);
00069 
00070     if (description) {
00071         HxString v(typename NgbT::IteratorCategory().toString());
00072         v += ", ";
00073         v += typename NgbT::PhaseCategory().toString();
00074         description->setVariation(v);
00075     }
00076 
00077     HxFuncNgbOp2dExtra2Dispatch(dstPtr, srcPtr, extraPtr, extra2Ptr, dstSize, ngb);
00078 }


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