diff --git a/pixarray/ledstrip.go b/pixarray/ledstrip.go index 663c863..4813cfc 100644 --- a/pixarray/ledstrip.go +++ b/pixarray/ledstrip.go @@ -1,6 +1,11 @@ package pixarray +import ( + rpi "github.com/Jon-Bright/ledctl/rpi" +) + type LEDStrip interface { + RPi() *rpi.RPi MaxPerChannel() int GetPixel(i int) Pixel SetPixel(i int, p Pixel) diff --git a/pixarray/lpd8806.go b/pixarray/lpd8806.go index f0229c7..fab7737 100644 --- a/pixarray/lpd8806.go +++ b/pixarray/lpd8806.go @@ -42,6 +42,10 @@ func NewLPD8806(dev dev, numPixels int, numColors int, spiSpeed uint32, order in return &la, nil } +func (la *LPD8806) RPi() *rpi.RPi { + return la.rp +} + func (la *LPD8806) MaxPerChannel() int { return 127 } diff --git a/pixarray/pixarray.go b/pixarray/pixarray.go index c1e50f6..c4a839d 100644 --- a/pixarray/pixarray.go +++ b/pixarray/pixarray.go @@ -2,6 +2,7 @@ package pixarray import ( "fmt" + rpi "github.com/Jon-Bright/ledctl/rpi" ) const ( @@ -76,6 +77,10 @@ func (pa *PixArray) NumColors() int { return pa.numColors } +func (pa *PixArray) RPi() *rpi.RPi { + return pa.leds.RPi() +} + func (pa *PixArray) MaxPerChannel() int { return pa.leds.MaxPerChannel() } diff --git a/pixarray/ws281x.go b/pixarray/ws281x.go index 53d23ff..c916494 100644 --- a/pixarray/ws281x.go +++ b/pixarray/ws281x.go @@ -93,6 +93,10 @@ func (ws *WS281x) pwmByteCount(freq uint) uint { return bytes } +func (ws *WS281x) RPi() *rpi.RPi { + return ws.rp +} + func (ws *WS281x) MaxPerChannel() int { return 255 }