renderbug/firmware/animations/UpdateStatus.cpp

37 lines
737 B
C++
Raw Normal View History

2019-05-10 05:17:29 +00:00
#include "./UpdateStatus.h"
#include "FastLED/FastLED.h"
#include "../Static.h"
using NSFastLED::CRGB;
void
UpdateStatus::handleEvent(const InputEvent& evt)
{
if (evt.intent == InputEvent::FirmwareUpdate) {
static int updateCount = 0;
updateCount++;
Log.info("Update count %d", updateCount);
m_updateReady = true;
}
}
void
UpdateStatus::loop()
{
m_pos++;
}
void
UpdateStatus::render(Display* dpy) const
{
if (m_updateReady) {
for(int i = 0; i < 12; i+=3) {
dpy->pixelAt(m_pos + i) = CRGB(255, 0, 0);
dpy->pixelAt(m_pos + i + 1) = CRGB(0, 255, 0);
dpy->pixelAt(m_pos + i + 2) = CRGB(0, 0, 255);
}
}
}
STATIC_ALLOC(UpdateStatus);