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

HxMfGenConv Class Reference

Class definition of method frame for generalized convolution operations. More...

#include <HxMfGenConv.h>

List of all members.

Public Methods

 HxMfGenConv (HxImageData *source, HxImageData *kernel, HxImageRep::ResultPrecision resPrec, bool is1dConv=false)
 Constructor. More...

 HxMfGenConv (HxImageData *source, HxImageData *kernel, HxImageData *kernel2, HxImageRep::ResultPrecision resPrec, bool is1dConv=false)
 Constructor. More...

 HxMfGenConv (HxImageData *source, HxImageData *kernel, HxImageData *kernel2, HxImageData *kernel3, HxImageRep::ResultPrecision resPrec, bool is1dConv=false)
 Constructor. More...

 ~HxMfGenConv ()
 Destructor. More...

HxImageDatasource () const
 The source image of the frame. More...

HxImageDatakernel () const
 The kernel image of the frame. More...

HxImageDatakernel2 () const
 The second kernel image of the frame. More...

HxImageDatakernel3 () const
 The third kernel image of the frame. More...

HxImageDataresult () const
 The result image of the frame. More...

bool preOpIsOk () const
 Indicates whether initialization was OK. More...


Detailed Description

Class definition of method frame for generalized convolution operations.

The method frame tries to satisfy the general rules set out for generalized convolutions. If this is not possible, preOpOk() will return false.

If is1dConv is false, the kernel should have the same dimensionality as the image, otherwise preOpOk() will return false.

If necessary the type of the kernel will be converted according to the following rules:

1) The kernel type signature must be equal or broader than the source type signature.
2a) If the kernel has an integral pixel type its pixel precision will be that of int.
2b) If the kernel has a real pixel type its pixel precision will be that of double.

The type of the result image will be set according to the specified precision:

Note that the actual convolution will be performed in the precision of the kernel type after conversion. After that, the result is written to the output image


Constructor & Destructor Documentation

HxMfGenConv::HxMfGenConv HxImageData   source,
HxImageData   kernel,
HxImageRep::ResultPrecision    resPrec,
bool    is1dConv = false
 

Constructor.

00021     :   _preOpIsOk(true), _source(source), 
00022         _kernel(kernel), _tmpKernel(0), _kernel2(0), _tmpKernel2(0),
00023         _kernel3(0), _tmpKernel3(0)
00024 {
00025     initMethodFrame(resPrec, is1dConv);
00026 }

HxMfGenConv::HxMfGenConv HxImageData   source,
HxImageData   kernel,
HxImageData   kernel2,
HxImageRep::ResultPrecision    resPrec,
bool    is1dConv = false
 

Constructor.

00031     :   _preOpIsOk(true), _source(source), 
00032         _kernel(kernel), _tmpKernel(0), _kernel2(kernel2), _tmpKernel2(0),
00033         _kernel3(0), _tmpKernel3(0)
00034 {
00035     initMethodFrame(resPrec, is1dConv);
00036 }

HxMfGenConv::HxMfGenConv HxImageData   source,
HxImageData   kernel,
HxImageData   kernel2,
HxImageData   kernel3,
HxImageRep::ResultPrecision    resPrec,
bool    is1dConv = false
 

Constructor.

00042     :   _preOpIsOk(true), _source(source), 
00043         _kernel(kernel), _tmpKernel(0), _kernel2(kernel2), _tmpKernel2(0),
00044         _kernel3(kernel3), _tmpKernel3(0)
00045 {
00046     initMethodFrame(resPrec, is1dConv);
00047 }

HxMfGenConv::~HxMfGenConv  
 

Destructor.

00050 {
00051     if (_tmpKernel) 
00052         delete _tmpKernel;
00053     if (_tmpKernel2) 
00054         delete _tmpKernel2;
00055     if (_tmpKernel3) 
00056         delete _tmpKernel3;
00057 }


Member Function Documentation

HxImageData * HxMfGenConv::source   const
 

The source image of the frame.

00061 { 
00062     return _source; 
00063 }

HxImageData * HxMfGenConv::kernel   const
 

The kernel image of the frame.

00067 { 
00068     return _kernel; 
00069 }

HxImageData * HxMfGenConv::kernel2   const
 

The second kernel image of the frame.

00073 { 
00074     return _kernel2; 
00075 }

HxImageData * HxMfGenConv::kernel3   const
 

The third kernel image of the frame.

00079 { 
00080     return _kernel3; 
00081 }

HxImageData * HxMfGenConv::result   const
 

The result image of the frame.

00085 {
00086     return _result; 
00087 }

bool HxMfGenConv::preOpIsOk   const [inline]
 

Indicates whether initialization was OK.

00120 {
00121     return _preOpIsOk;
00122 }


The documentation for this class was generated from the following files:
Generated on Tue Feb 3 14:19:05 2004 for C++Reference by doxygen1.2.12 written by Dimitri van Heesch, © 1997-2001