8 #ifndef VIMAGECONVOLVER_HH 9 #define VIMAGECONVOLVER_HH 1 11 #include "gVariables.hh" 12 #include "gOptions.hh" 256 #define FUNCTION_IMAGE_CONVOLVER(CLASS) \ 257 static vImageConvolver *make_image_convolver() { return new CLASS(); }; 260 #define CLASS_IMAGE_CONVOLVER(NAME,CLASS) \ 261 class NAME##ImageConvolverCreator \ 264 NAME##ImageConvolverCreator() \ 265 { sAddonManager::GetInstance()->mp_listOfImageConvolvers[#NAME] = CLASS::make_image_convolver; } \ 267 static NAME##ImageConvolverCreator ImageConvolverCreator##NAME;
void SetVerbose(int a_verbose)
virtual int ConvolveTranspose(FLTNB *ap_outputImage)
int Initialize()
A public function used to initialize the module.
void SetImageDimensionsAndQuantification(oImageDimensionsAndQuantification *ap_ImageDimensionsAndQuantification)
virtual int ReadConfigurationFile(const string &a_fileOptions)=0
oImageDimensionsAndQuantification * mp_ImageDimensionsAndQuantification
virtual int BuildConvolutionKernel()=0
A private function used to build the convolution kernel specific to the child convolver.
virtual int ReadOptionsList(const string &a_listOptions)=0
int CheckParameters()
A public function used to check the parameters settings.
virtual void ShowHelp()=0
A function used to show help about the child module.
int ApplyConvolutionTranspose(FLTNB *ap_image)
virtual ~vImageConvolver()
The destructor of vImageConvolver.
vImageConvolver()
The constructor of vImageConvolver.
int ApplyConvolution(FLTNB *ap_image)
virtual int CheckSpecificParameters()=0
A private function used to check the parameters settings specific to the child convolver.
This class holds all the matrices in the image domain that can be used in the algorithm: image...
This class is designed to manage all dimensions and quantification related stuff. ...
virtual int Convolve(FLTNB *ap_outputImage)
void CopyToPaddedImage(FLTNB *ap_inputImage)
This abstract class is the generic image convolver class used by the oImageConvolverManager.