hyperion.ng/include/hyperion/Hyperion.h

40 lines
742 B
C
Raw Normal View History

#pragma once
// hyperion-utils includes
#include <utils/RgbImage.h>
// Hyperion includes
#include <hyperion/LedString.h>
#include <hyperion/LedDevice.h>
#include <hyperion/PriorityMuxer.h>
// Forward class declaration
namespace hyperion { class ColorTransform; }
class Hyperion
{
public:
Hyperion(const Json::Value& jsonConfig);
~Hyperion();
2013-08-14 10:54:49 +02:00
unsigned getLedCount() const;
void setValue(int priority, std::vector<RgbColor> &ledColors, const int timeout_ms);
private:
void applyTransform(std::vector<RgbColor>& colors) const;
LedString mLedString;
PriorityMuxer mMuxer;
hyperion::ColorTransform* mRedTransform;
hyperion::ColorTransform* mGreenTransform;
hyperion::ColorTransform* mBlueTransform;
LedDevice* mDevice;
};