     [this]
     (println "Stopping PixelPusher display...")
     ; TODO: clear strips, remove device observer?
+    (.stopPushing registry)
     (assoc this :running false))
 
 

  (:require
    [com.stuartsierra.component :as component]
    [org.playasophy.wonderdome.display.core :as display])
  #_
  (:import
    [com.heroicrobot.dropbit.registry *]
    com.heroicrobot.dropbit.devices.pixelpusher.Strip))


;;;;; WONDERDOME DISPLAY ;;;;;

(defrecord PixelPusherDisplay
  [registry strips running])

(extend-type PixelPusherDisplay
  component/Lifecycle

  (start
    [this]
    (println "Starting PixelPusher display...")
    ; TODO: add device observer
    (assoc this :running true))



    nil))


(defn pixel-pusher
  "Creates a new display streaming color commands to connected pixel-pusher
  hardware."
  [registry]
  (PixelPusherDisplay. registry (atom []) false))
