mirror of
https://github.com/anklimov/lighthub
synced 2025-12-08 12:49:50 +03:00
63 lines
1.3 KiB
C++
63 lines
1.3 KiB
C++
#include "colorchannel.h"
|
|
#include "Arduino.h"
|
|
#include "options.h"
|
|
#include "Streaming.h"
|
|
|
|
#include "item.h"
|
|
#include "main.h"
|
|
|
|
//colorChannel::colorChannel(Item * _item)
|
|
|
|
|
|
short colorChannel::getChannelAddr(short n)
|
|
{
|
|
if (!n) return iaddr;
|
|
if (n+1>numArgs) return iaddr+n;
|
|
return item->getArg(n);
|
|
}
|
|
|
|
int colorChannel::Ctrl(itemCmd cmd, char* subItem, bool toExecute)
|
|
{
|
|
debugSerial<<F("clrCtr: ");
|
|
cmd.debugOut();
|
|
int suffixCode;
|
|
if (cmd.isCommand()) suffixCode = S_CMD;
|
|
else suffixCode = cmd.getSuffix();
|
|
|
|
switch(suffixCode)
|
|
{
|
|
case S_NOTFOUND:
|
|
// turn on and set
|
|
toExecute = true;
|
|
case S_SET:
|
|
case S_HSV:
|
|
PixelCtrl(cmd, subItem, toExecute);
|
|
return 1;
|
|
case S_CMD:
|
|
item->setCmd(cmd.getCmd());
|
|
switch (cmd.getCmd())
|
|
{
|
|
case CMD_ON:
|
|
PixelCtrl(cmd,subItem, true);
|
|
// item->SendStatus(SEND_COMMAND | SEND_PARAMETERS );
|
|
return 1;
|
|
|
|
case CMD_OFF:
|
|
cmd.param.asInt32=0;
|
|
PixelCtrl(cmd, subItem, true);
|
|
// item->SendStatus(SEND_COMMAND);
|
|
return 1;
|
|
|
|
default:
|
|
debugSerial<<F("Unknown cmd ")<<cmd.getCmd()<<endl;
|
|
} //switch cmd
|
|
|
|
default:
|
|
debugSerial<<F("Unknown suffix ")<<suffixCode<<endl;
|
|
} //switch suffix
|
|
|
|
cmd.debugOut();
|
|
return 0;
|
|
|
|
}
|