12-polyphonic "chiptune" MIDI synthesizer for LPC1768 (Standalone version)
Dependencies: ClockControl PowerControl mbed
Channels.h@6:cda45a5e723e, 2014-12-23 (annotated)
- Committer:
- kayekss
- Date:
- Tue Dec 23 21:50:53 2014 +0000
- Revision:
- 6:cda45a5e723e
- Parent:
- 0:727737138ac5
Supports "Panic on offline" feature when using MIDI-port input
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
kayekss | 0:727737138ac5 | 1 | #ifndef CHANNELS_H_ |
kayekss | 0:727737138ac5 | 2 | #define CHANNELS_H_ |
kayekss | 0:727737138ac5 | 3 | |
kayekss | 0:727737138ac5 | 4 | #include <stdint.h> |
kayekss | 0:727737138ac5 | 5 | #include "Wavetable.h" |
kayekss | 0:727737138ac5 | 6 | |
kayekss | 0:727737138ac5 | 7 | class Channels { |
kayekss | 0:727737138ac5 | 8 | private: |
kayekss | 0:727737138ac5 | 9 | uint8_t volume[16]; |
kayekss | 0:727737138ac5 | 10 | uint8_t expression[16]; |
kayekss | 0:727737138ac5 | 11 | int16_t pitchBend[16]; |
kayekss | 0:727737138ac5 | 12 | Wavetable::wave_t wave[16]; |
kayekss | 0:727737138ac5 | 13 | |
kayekss | 0:727737138ac5 | 14 | public: |
kayekss | 0:727737138ac5 | 15 | Channels(); |
kayekss | 0:727737138ac5 | 16 | ~Channels(); |
kayekss | 0:727737138ac5 | 17 | void initializeAll(); |
kayekss | 0:727737138ac5 | 18 | void setVolume(uint8_t, uint8_t); |
kayekss | 0:727737138ac5 | 19 | void setExpression(uint8_t, uint8_t); |
kayekss | 0:727737138ac5 | 20 | void setPitchBend(uint8_t, int16_t); |
kayekss | 0:727737138ac5 | 21 | void setWave(uint8_t, Wavetable::wave_t); |
kayekss | 0:727737138ac5 | 22 | |
kayekss | 0:727737138ac5 | 23 | uint8_t getVolume(uint8_t); |
kayekss | 0:727737138ac5 | 24 | uint8_t getExpression(uint8_t); |
kayekss | 0:727737138ac5 | 25 | int16_t getPitchBend(uint8_t); |
kayekss | 0:727737138ac5 | 26 | Wavetable::wave_t getWave(uint8_t); |
kayekss | 0:727737138ac5 | 27 | }; |
kayekss | 0:727737138ac5 | 28 | |
kayekss | 0:727737138ac5 | 29 | #endif |