hyperion.ng
MultiColorAdjustment.h
1 #pragma once
2 
3 // STL includes
4 #include <vector>
5 #include <QStringList>
6 #include <QString>
7 
8 // Hyperion includes
9 #include <utils/ColorRgb.h>
10 #include <hyperion/ColorAdjustment.h>
11 
17 {
18 public:
19  MultiColorAdjustment(const unsigned ledCnt);
21 
27  void addAdjustment(ColorAdjustment * adjustment);
28 
29  void setAdjustmentForLed(const QString& id, const unsigned startLed, unsigned endLed);
30 
31  bool verifyAdjustments() const;
32 
33  void setBacklightEnabled(bool enable);
34 
39  const QStringList & getAdjustmentIds();
40 
48  ColorAdjustment* getAdjustment(const QString& id);
49 
55  void applyAdjustment(std::vector<ColorRgb>& ledColors);
56 
57 private:
59  QStringList _adjustmentIds;
60 
62  std::vector<ColorAdjustment*> _adjustment;
63 
65  std::vector<ColorAdjustment*> _ledAdjustments;
66 
67  // logger instance
68  Logger * _log;
69 };
Definition: Logger.h:32
Definition: ColorAdjustment.h:10
The LedColorTransform is responsible for performing color transformation from &#39;raw&#39; colors received a...
Definition: MultiColorAdjustment.h:16
void addAdjustment(ColorAdjustment *adjustment)
Adds a new ColorAdjustment to this MultiColorTransform.
Definition: MultiColorAdjustment.cpp:20
void applyAdjustment(std::vector< ColorRgb > &ledColors)
Performs the color adjustment from raw-color to led-color.
Definition: MultiColorAdjustment.cpp:93
ColorAdjustment * getAdjustment(const QString &id)
Returns the pointer to the ColorAdjustment with the given id.
Definition: MultiColorAdjustment.cpp:70
const QStringList & getAdjustmentIds()
Returns the identifier of all the unique ColorAdjustment.
Definition: MultiColorAdjustment.cpp:65