- HSV transform added

- Moved transform of led values to before the device write so transform changes are taken into account
This commit is contained in:
johan
2013-08-21 21:50:17 +02:00
parent 271917bac7
commit ee7a596d53
14 changed files with 317 additions and 38 deletions

View File

@@ -16,8 +16,10 @@
#include <hyperion/PriorityMuxer.h>
// Forward class declaration
namespace hyperion { class ColorTransform; }
namespace hyperion {
class HsvTransform;
class ColorTransform;
}
class Hyperion : public QObject
{
@@ -27,12 +29,12 @@ public:
enum Color
{
RED, GREEN, BLUE
RED, GREEN, BLUE, INVALID
};
enum Transform
{
THRESHOLD, GAMMA, BLACKLEVEL, WHITELEVEL
SATURATION_GAIN, VALUE_GAIN, THRESHOLD, GAMMA, BLACKLEVEL, WHITELEVEL
};
static LedString createLedString(const Json::Value& ledsConfig);
@@ -69,9 +71,10 @@ private:
PriorityMuxer _muxer;
hyperion::ColorTransform* _redTransform;
hyperion::ColorTransform* _greenTransform;
hyperion::ColorTransform* _blueTransform;
hyperion::HsvTransform * _hsvTransform;
hyperion::ColorTransform * _redTransform;
hyperion::ColorTransform * _greenTransform;
hyperion::ColorTransform * _blueTransform;
LedDevice* _device;

View File

@@ -8,8 +8,7 @@
#include <hyperion/ImageProcessorFactory.h>
// Forward class declaration
namespace hyperion { class ImageToLedsMap;
class ColorTransform; }
namespace hyperion { class ImageToLedsMap; }
/**
* The ImageProcessor translates an RGB-image to RGB-values for the leds. The processing is