Clone single led color from other led (#157)

* start ledclone

* led cloning: clone scan areas from original led
main: show exceptions, better exit

* tune json schema for new option. somwe cleanup

* fix warnings and bug for framebuffer selection. thx to clang brought by new osx buikld on travis

* make ledclone feature work flawlessly for effects too. Effect sees the ledstring without cloned leds.
cloned leds will be inserted just before sending to leddevice

additional: remove warnings and fix code style

* fix warning
This commit is contained in:
redPanther
2016-08-08 00:17:00 +02:00
committed by GitHub
parent a56f98b085
commit 197af35de0
21 changed files with 421 additions and 380 deletions

View File

@@ -268,6 +268,7 @@ public:
* @return The constructed ledstring
*/
static LedString createLedString(const Json::Value & ledsConfig, const ColorOrder deviceOrder);
static LedString createLedStringClone(const Json::Value & ledsConfig, const ColorOrder deviceOrder);
static MultiColorTransform * createLedColorsTransform(const unsigned ledCnt, const Json::Value & colorTransformConfig);
static MultiColorCorrection * createLedColorsTemperature(const unsigned ledCnt, const Json::Value & colorTemperatureConfig);
@@ -312,6 +313,10 @@ private:
/// The specifiation of the led frame construction and picture integration
LedString _ledString;
/// specifiation of cloned leds
LedString _ledStringClone;
std::vector<ColorOrder> _ledStringColorOrder;
/// The priority muxer
PriorityMuxer _muxer;
@@ -368,4 +373,5 @@ private:
/// holds the current priority channel that is manualy selected
int _currentSourcePriority;
};

View File

@@ -97,6 +97,8 @@ struct Led
double minY_frac;
/// The maximum horizontal scan line included for this leds color
double maxY_frac;
/// id to clone
int clone;
/// the color order
ColorOrder colorOrder;
};