Ejemplo n.º 1
0
static int
addMidiMessage (MidiDevice *midi, const unsigned char *message, int length) {
  if ((midi->count + length) > sizeof(midi->buffer))
    if (!flushMidiDevice(midi))
      return 0;

  memcpy(&midi->buffer[midi->count], message, length);
  midi->count += length;
  return 1;
}
Ejemplo n.º 2
0
static int
writeMidiMessage (MidiDevice *midi, const unsigned char *message, int length) {
  if (!addMidiMessage(midi, message, length)) return 0;
  if (!flushMidiDevice(midi)) return 0;
  return 1;
}
Ejemplo n.º 3
0
void
closeMidiDevice (MidiDevice *midi) {
  flushMidiDevice(midi);
  midiOutClose(midi->handle);
  free(midi);
}
Ejemplo n.º 4
0
static int
midiFlush (NoteDevice *device) {
  return flushMidiDevice(device->midi);
}