00001 /****************************************************************************************************** 00002 * (C) 2014 markummitchell@github.com. This file is part of Engauge Digitizer, which is released * 00003 * under GNU General Public License version 2 (GPLv2) or (at your option) any later version. See file * 00004 * LICENSE or go to gnu.org/licenses for details. Distribution requires prior written permission. * 00005 ******************************************************************************************************/ 00006 00007 #ifndef COLOR_FILTER_STRATEGY_ABSTRACT_BASE_H 00008 #define COLOR_FILTER_STRATEGY_ABSTRACT_BASE_H 00009 00010 #include <QRgb> 00011 #include <QString> 00012 00013 class ColorFilter; 00014 class QColor; 00015 class QTextStream; 00016 00019 class ColorFilterStrategyAbstractBase 00020 { 00021 public: 00023 ColorFilterStrategyAbstractBase(); 00024 00025 virtual ~ColorFilterStrategyAbstractBase(); 00026 00028 virtual double pixelToZeroToOne (const QColor &pixel, 00029 QRgb rgbBackground) const = 0; 00030 00032 virtual int zeroToOneToValue (double s) const = 0; 00033 00034 }; 00035 00036 #endif // COLOR_FILTER_STRATEGY_ABSTRACT_BASE_H