eLynx SDK
v3.3.0 C++ image processing API reference |
00001 //============================================================================ 00002 // IImageFilter.h Image.Component package 00003 //============================================================================ 00004 // Usage : 00005 //---------------------------------------------------------------------------- 00006 // Inheritance : 00007 // IImageFilter 00008 //---------------------------------------------------------------------------- 00009 // Copyright (C) 2006 by eLynx project 00010 // 00011 // This library is free software; you can redistribute it and/or 00012 // modify it under the terms of the GNU Library General Public 00013 // License as published by the Free Software Foundation; either 00014 // version 2 of the License, or (at your option) any later version. 00015 // 00016 // This library is distributed in the hope that it will be useful, 00017 // but WITHOUT ANY WARRANTY; without even the implied warranty of 00018 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 00019 // See the GNU Library General Public License for more details. 00020 //---------------------------------------------------------------------------- 00021 #ifndef __IImageFilter_h__ 00022 #define __IImageFilter_h__ 00023 00024 #include "ImageLib.h" 00025 #include "ImageVariant.h" 00026 00027 namespace eLynx { 00028 namespace Image { 00029 00032 class ExportedByImage IImageFilter 00033 { 00034 public: 00035 virtual ~IImageFilter(); 00036 00039 00042 virtual bool IsISODimension() const = 0; 00043 virtual bool IsISOType() const = 0; 00044 virtual bool IsISOMode() const = 0; 00045 virtual bool IsISOFormat() const = 0; 00046 virtual bool IsISOResolution() const = 0; 00047 virtual bool IsISOColorSpace() const = 0; 00049 00052 virtual bool IsSupported(const ImageVariant& iImage) const = 0; 00053 00054 virtual bool Process(ImageVariant& ioImage, 00055 void * iprParameters, 00056 uint32 iChannelMask, 00057 ProgressNotifier& iNotifier) const = 0; 00058 }; 00059 00060 } // namespace Image 00061 } // namespace eLynx 00062 00063 #endif // __IImageFilter_h__