Display Class for BaseMachine
SequencerDisplay.h@9:a8adc9b9b3d8, 2016-09-09 (annotated)
- Committer:
- ryood
- Date:
- Fri Sep 09 04:19:13 2016 +0000
- Revision:
- 9:a8adc9b9b3d8
- Parent:
- 4:e51a5f0891a0
- Child:
- 10:699beb99effe
Display LCD while run
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
ryood | 4:e51a5f0891a0 | 1 | |
ryood | 0:9a0f67fe026b | 2 | /* |
ryood | 0:9a0f67fe026b | 3 | * SequencerDisplay.h |
ryood | 0:9a0f67fe026b | 4 | * |
ryood | 0:9a0f67fe026b | 5 | * 2016.08.13 |
ryood | 0:9a0f67fe026b | 6 | * |
ryood | 0:9a0f67fe026b | 7 | */ |
ryood | 0:9a0f67fe026b | 8 | #ifndef _SEQUENCE_DISPLAY_H_ |
ryood | 0:9a0f67fe026b | 9 | #define _SEQUENCE_DISPLAY_H_ |
ryood | 0:9a0f67fe026b | 10 | |
ryood | 0:9a0f67fe026b | 11 | #include "mbed.h" |
ryood | 0:9a0f67fe026b | 12 | #include "Sequence.h" |
ryood | 0:9a0f67fe026b | 13 | |
ryood | 0:9a0f67fe026b | 14 | class SequencerDisplay { |
ryood | 0:9a0f67fe026b | 15 | public: |
ryood | 3:5b11261a545a | 16 | enum DisplayMode { stop, run }; |
ryood | 0:9a0f67fe026b | 17 | |
ryood | 0:9a0f67fe026b | 18 | SequencerDisplay(Sequence* _sequences, int _sequenceNum) : |
ryood | 0:9a0f67fe026b | 19 | sequences(_sequences), |
ryood | 0:9a0f67fe026b | 20 | sequenceNum(_sequenceNum), |
ryood | 1:1f6d3e65d946 | 21 | octave(0), |
ryood | 4:e51a5f0891a0 | 22 | bpm(120), |
ryood | 4:e51a5f0891a0 | 23 | waveShape(0), |
ryood | 4:e51a5f0891a0 | 24 | modNumber(0) {}; |
ryood | 0:9a0f67fe026b | 25 | |
ryood | 9:a8adc9b9b3d8 | 26 | void update(enum DisplayMode mode, int editingStep, int runningStep) { |
ryood | 0:9a0f67fe026b | 27 | switch (mode) { |
ryood | 0:9a0f67fe026b | 28 | case run: |
ryood | 9:a8adc9b9b3d8 | 29 | displayWhileRun(editingStep, runningStep); |
ryood | 0:9a0f67fe026b | 30 | break; |
ryood | 0:9a0f67fe026b | 31 | case stop: |
ryood | 9:a8adc9b9b3d8 | 32 | displayWhileStop(editingStep, runningStep); |
ryood | 0:9a0f67fe026b | 33 | break; |
ryood | 0:9a0f67fe026b | 34 | default: |
ryood | 0:9a0f67fe026b | 35 | error("SequenceDisplay::update: invalid mode"); |
ryood | 0:9a0f67fe026b | 36 | }; |
ryood | 0:9a0f67fe026b | 37 | }; |
ryood | 0:9a0f67fe026b | 38 | |
ryood | 0:9a0f67fe026b | 39 | void setOctave(int _octave) { octave = _octave; }; |
ryood | 0:9a0f67fe026b | 40 | int getOctave() { return octave; }; |
ryood | 0:9a0f67fe026b | 41 | |
ryood | 1:1f6d3e65d946 | 42 | void setBpm(int _bpm) { bpm = _bpm; }; |
ryood | 1:1f6d3e65d946 | 43 | int getBpm() { return bpm; }; |
ryood | 1:1f6d3e65d946 | 44 | |
ryood | 4:e51a5f0891a0 | 45 | void setWaveShape(int _waveShape) { waveShape = _waveShape; } |
ryood | 4:e51a5f0891a0 | 46 | int getWaveShape() { return waveShape; } |
ryood | 4:e51a5f0891a0 | 47 | |
ryood | 4:e51a5f0891a0 | 48 | void setModNumber(int _modNumber) { modNumber = _modNumber; } |
ryood | 4:e51a5f0891a0 | 49 | int getModNumber() { return modNumber; } |
ryood | 4:e51a5f0891a0 | 50 | |
ryood | 0:9a0f67fe026b | 51 | protected: |
ryood | 9:a8adc9b9b3d8 | 52 | virtual void displayWhileRun(int editingStep, int runningStep) { |
ryood | 0:9a0f67fe026b | 53 | #if (UART_TRACE) |
ryood | 9:a8adc9b9b3d8 | 54 | printf("displayWhileRun step:%d %d\r\n", editingStep, runningStep); |
ryood | 0:9a0f67fe026b | 55 | #endif |
ryood | 0:9a0f67fe026b | 56 | }; |
ryood | 0:9a0f67fe026b | 57 | |
ryood | 9:a8adc9b9b3d8 | 58 | virtual void displayWhileStop(int editingStep, int runningStep) { |
ryood | 0:9a0f67fe026b | 59 | #if (UART_TRACE) |
ryood | 9:a8adc9b9b3d8 | 60 | printf("displayWhileStop step:%d %d\r\n", editingStep, runningStep); |
ryood | 0:9a0f67fe026b | 61 | #endif |
ryood | 0:9a0f67fe026b | 62 | }; |
ryood | 0:9a0f67fe026b | 63 | |
ryood | 0:9a0f67fe026b | 64 | Sequence* sequences; |
ryood | 0:9a0f67fe026b | 65 | int sequenceNum; |
ryood | 3:5b11261a545a | 66 | int octave; |
ryood | 1:1f6d3e65d946 | 67 | int bpm; |
ryood | 4:e51a5f0891a0 | 68 | int waveShape; |
ryood | 4:e51a5f0891a0 | 69 | int modNumber; |
ryood | 0:9a0f67fe026b | 70 | }; |
ryood | 0:9a0f67fe026b | 71 | |
ryood | 0:9a0f67fe026b | 72 | #endif //_SEQUENCE_DISPLAY_H_ |