1 #ifndef __PolyphonicProcessor_h__
2 #define __PolyphonicProcessor_h__
11 template<
class SynthVoice,
int VOICES>
15 static const uint16_t
TAKEN = 0xffff;
36 for(
int i=0; i<VOICES; ++i){
44 uint16_t minval = USHRT_MAX;
47 for(
int i=0; i<VOICES; ++i){
62 for(
int i=0; i<VOICES; ++i)
68 for(
int i=0; i<VOICES; ++i)
72 for(
int i=0; i<VOICES; ++i)
77 for(
int i=0; i<VOICES; ++i)
83 for(
int i=0; i<VOICES; ++i)
89 for(
int i=0; i<VOICES; ++i){
uint8_t getPolyKeyPressure()
uint8_t getChannelPressure()
Supports both Polyphonic Key Pressure and Channel Pressure Aftertouch.
void noteOff(MidiMessage msg)
void take(uint8_t ch, MidiMessage msg)
void modulate(MidiMessage msg)
void pitchbend(MidiMessage msg)
void polyKeyPressure(MidiMessage msg)
static const uint16_t TAKEN
virtual ~PolyphonicProcessor()
uint16_t allocation[VOICES]
void noteOn(MidiMessage msg)
size_t getNumberOfTakenVoices()
void channelPressure(MidiMessage msg)
SynthVoice * voice[VOICES]