Commit | Line | Data |
---|---|---|
1 | package kaka.cakelight; | |
2 | ||
3 | import java.util.function.Consumer; | |
4 | ||
5 | public abstract class Mode { | |
6 | private Consumer<LedFrame> frameListener; | |
7 | ||
8 | public abstract void enter(Configuration config); | |
9 | public abstract void exit(); | |
10 | ||
11 | public void setFrameListener(Consumer<LedFrame> listener) { | |
12 | frameListener = listener; | |
13 | } | |
14 | ||
15 | public void updateWithFrame(LedFrame frame) { | |
16 | assert frameListener != null; | |
17 | frameListener.accept(frame); | |
18 | } | |
19 | } |