projectwerk

Dependencies:   NeoPixelString SimplyLog

Fork of NeoPixelI2cSlave by Nico De Witte

neopixel_i2c_daemon.h

Committer:
dwini
Date:
2015-10-25
Revision:
2:e0269262d1f2
Parent:
0:3a31c84ed525
Child:
3:02931c2b1e82

File content as of revision 2:e0269262d1f2:

#pragma once

#include "i2c_device.h"
#include "neopixel_string.h"
#include <vector>

enum I2cCommand { OFF = 0x01, DIAGNOSTIC = 0x02, SINGLE_COLOR = 0x03 };

class NeoPixelI2cDaemon {

    private:
        I2cDevice * i2c;
        std::vector<NeoPixelString *> pixelstrings;
        int cAlive;     // Counter for alive led
        DigitalOut alive;
        
    public:
        NeoPixelI2cDaemon(I2cDevice * i2c, PinName alive_pin);
        
    public:
        void attachPixelString(NeoPixelString * pixelstring);
        void listen(bool blocking);
        void allOff(void);
        void allSingleColor(neopixel::Pixel singlecolor);
        void diagnoseAll(void);
};