eLynx SDK
v3.3.0 C++ image processing API reference |
00001 //============================================================================ 00002 // IImagePSF.h Image.Component package 00003 //============================================================================ 00004 // Usage : interface for image Point Spread Function 00005 // the PSF is used in deconvolution processing 00006 //---------------------------------------------------------------------------- 00007 // Copyright (C) 2006 by eLynx project 00008 // 00009 // This library is free software; you can redistribute it and/or 00010 // modify it under the terms of the GNU Library General Public 00011 // License as published by the Free Software Foundation; either 00012 // version 2 of the License, or (at your option) any later version. 00013 // 00014 // This library is distributed in the hope that it will be useful, 00015 // but WITHOUT ANY WARRANTY; without even the implied warranty of 00016 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 00017 // See the GNU Library General Public License for more details. 00018 //---------------------------------------------------------------------------- 00019 #ifndef __IImagePSF_h__ 00020 #define __IImagePSF_h__ 00021 00022 #include <elx/core/CoreTypes.h> 00023 #include "ImageLib.h" 00024 00025 namespace eLynx { 00026 namespace Image { 00027 00043 class ExportedByImage IImagePSF 00044 { 00045 public: 00046 00048 virtual ~IImagePSF() {} 00049 00055 virtual uint32 GetWidth() const = 0; 00056 00062 virtual uint32 GetHeight() const = 0; 00063 00076 virtual double EvalPSF(uint32 iX, uint32 iY, int32 iDX, int32 iDY) const = 0; 00077 00078 }; 00079 00080 } // namespace Image 00081 } // namespace eLynx 00082 00083 #endif // __IImagePSF_h__