| 1234567891011121314151617181920212223242526272829303132333435 |
- #include <PacketFormatter.h>
- #define RGB_CCT_COMMAND_INDEX 4
- #define RGB_CCT_ARGUMENT_INDEX 5
- #ifndef _RGB_CCT_PACKET_FORMATTER_H
- #define _RGB_CCT_PACKET_FORMATTER_H
- class RgbCctPacketFormatter : public PacketFormatter {
- public:
- static uint8_t const V2_OFFSETS[][4];
-
- RgbCctPacketFormatter(size_t packetLength)
- : PacketFormatter(packetLength)
- { }
-
- virtual void reset();
-
- virtual void updateStatus(MiLightStatus status, uint8_t group);
- virtual void updateBrightness(uint8_t value);
- virtual void command(uint8_t command, uint8_t arg);
- virtual void updateHue(uint16_t value);
- virtual void updateColorRaw(uint8_t value);
- virtual void updateColorWhite();
- virtual void updateTemperature(uint8_t value);
- virtual void updateSaturation(uint8_t value);
-
- virtual uint8_t* buildPacket();
-
- static void encodeV2Packet(uint8_t* packet);
- static uint8_t xorKey(uint8_t key);
- static uint8_t encodeByte(uint8_t byte, uint8_t s1, uint8_t xorKey, uint8_t s2);
- };
- #endif
|