dequeue_midi_event   xtlang


Defined in:  https://github.com/digego/extempore/tree/v0.8.9/libs/external/midi.xtm

Implementation

(bind-func dequeue_midi_event
  (let ((head 0) (tail 0))
    (lambda ()
      (set! tail (enqueue_midi_event.tail:i64))
      (if (< (+ head XTM_MIDI_EVENT_QUEUE_SIZE) tail)
          (begin (println "Warning: MIDI overrun (head:" head "tail:" tail ") events dropped")
                 (set! head tail)))
      (if (< head tail)
          (let ((res (aref-ptr XTM_MIDI_EVENT_QUEUE (% head XTM_MIDI_EVENT_QUEUE_SIZE))))
            (set! head (+ head 1))
            res)
          null)))) ;; underrun


Back to Index

Similar Entries

  • *midioffset*    scheme    /digego/extempore/tree/v0.8.9/libs/external/portmidi.xtm
  • PmEvent_cc_p    xtlang    /digego/extempore/tree/v0.8.9/libs/external/portmidi.xtm
  • PmEvent_note_off_p    xtlang    /digego/extempore/tree/v0.8.9/libs/external/portmidi.xtm
  • PmEvent_note_on_p    xtlang    /digego/extempore/tree/v0.8.9/libs/external/portmidi.xtm
  • Pm_Event_Channel    xtlang    /digego/extempore/tree/v0.8.9/libs/external/portmidi.xtm
  • Pm_Event_Data1    xtlang    /digego/extempore/tree/v0.8.9/libs/external/portmidi.xtm
  • Pm_Event_Data2    xtlang    /digego/extempore/tree/v0.8.9/libs/external/portmidi.xtm
  • Pm_Event_Message    xtlang    /digego/extempore/tree/v0.8.9/libs/external/portmidi.xtm
  • Pm_Event_Timestamp    xtlang    /digego/extempore/tree/v0.8.9/libs/external/portmidi.xtm
  • Pm_Event_Type    xtlang    /digego/extempore/tree/v0.8.9/libs/external/portmidi.xtm
  • available_midi_events    xtlang    /digego/extempore/tree/v0.8.9/libs/external/midi.xtm
  • dequeue    xtlang    /digego/extempore/tree/v0.8.9/examples/core/extempore_lang.xtm
  • enqueue_midi_event    xtlang    /digego/extempore/tree/v0.8.9/libs/external/midi.xtm
  • event_poll    xtlang    /digego/extempore/tree/v0.8.9/examples/external/going-native.xtm
  • get-midi-device-names-alist    scheme    /digego/extempore/tree/v0.8.9/examples/sharedsystem/midisetup.xtm
  • get-midi-input-device-names-alist    scheme    /digego/extempore/tree/v0.8.9/examples/sharedsystem/midisetup.xtm
  • get-midi-output-device-names-alist    scheme    /digego/extempore/tree/v0.8.9/examples/sharedsystem/midisetup.xtm
  • get_midi_evt_a    xtlang    /digego/extempore/tree/v0.8.9/libs/external/midi.xtm
  • get_midi_evt_b    xtlang    /digego/extempore/tree/v0.8.9/libs/external/midi.xtm
  • get_midi_evt_channel    xtlang    /digego/extempore/tree/v0.8.9/libs/external/midi.xtm
  • get_midi_evt_clocktime    xtlang    /digego/extempore/tree/v0.8.9/libs/external/midi.xtm
  • get_midi_evt_timestamp    xtlang    /digego/extempore/tree/v0.8.9/libs/external/midi.xtm
  • get_midi_evt_type    xtlang    /digego/extempore/tree/v0.8.9/libs/external/midi.xtm
  • get_midi_in    xtlang    /digego/extempore/tree/v0.8.9/libs/external/portmidi.xtm
  • get_midi_out    xtlang    /digego/extempore/tree/v0.8.9/libs/external/portmidi.xtm
  • glfw_poll_events    xtlang    /digego/extempore/tree/v0.8.9/libs/external/glfw3.xtm
  • homo-play-midi-note    scheme    /digego/extempore/tree/v0.8.9/libs/contrib/rtmidi-scm.xtm
  • homo-play-midi-note    scheme    /digego/extempore/tree/v0.8.9/libs/external/portmidi.xtm
  • midi-cc    scheme    /digego/extempore/tree/v0.8.9/libs/external/midi.xtm
  • midi-loop    scheme    /digego/extempore/tree/v0.8.9/examples/external/portmidi.xtm
  • midi-loop    scheme    /digego/extempore/tree/v0.8.9/examples/external/portmidi-output.xtm
  • midi-note-off    scheme    /digego/extempore/tree/v0.8.9/libs/external/midi.xtm
  • midi-note-on    scheme    /digego/extempore/tree/v0.8.9/libs/external/midi.xtm
  • midi2frq    scheme    /digego/extempore/tree/v0.8.9/libs/core/pc_ivl.xtm
  • midi_cc    xtlang    /digego/extempore/tree/v0.8.9/libs/core/instruments/channel_strip.xtm
  • midi_cc    xtlang    /digego/extempore/tree/v0.8.9/libs/external/midi.xtm
  • midi_cc    xtlang    /digego/extempore/tree/v0.8.9/examples/sharedsystem/setup.xtm
  • midi_cc    xtlang    /digego/extempore/tree/v0.8.9/examples/sharedsystem/midisetup.xtm
  • midi_high_shelf    xtlang    /digego/extempore/tree/v0.8.9/libs/core/instruments/channel_strip.xtm
  • midi_input_polling    xtlang    /digego/extempore/tree/v0.8.9/libs/external/midi.xtm
  • midi_input_port_id    xtlang    /digego/extempore/tree/v0.8.9/libs/external/midi.xtm
  • midi_low_shelf    xtlang    /digego/extempore/tree/v0.8.9/libs/core/instruments/channel_strip.xtm
  • midi_lower_mid    xtlang    /digego/extempore/tree/v0.8.9/libs/core/instruments/channel_strip.xtm
  • midi_msg    xtlang    /digego/extempore/tree/v0.8.9/libs/external/midi.xtm
  • midi_note_off    xtlang    /digego/extempore/tree/v0.8.9/libs/external/midi.xtm
  • midi_note_off    xtlang    /digego/extempore/tree/v0.8.9/examples/core/midi_synth.xtm
  • midi_note_off    xtlang    /digego/extempore/tree/v0.8.9/examples/sharedsystem/midisetup.xtm
  • midi_note_on    xtlang    /digego/extempore/tree/v0.8.9/libs/external/midi.xtm
  • midi_note_on    xtlang    /digego/extempore/tree/v0.8.9/examples/core/midi_synth.xtm
  • midi_note_on    xtlang    /digego/extempore/tree/v0.8.9/examples/sharedsystem/midisetup.xtm
  • midi_output_port_id    xtlang    /digego/extempore/tree/v0.8.9/libs/external/midi.xtm
  • midi_read_loop    xtlang    /digego/extempore/tree/v0.8.9/examples/external/portmidi.xtm
  • midi_read_msg    xtlang    /digego/extempore/tree/v0.8.9/libs/external/midi.xtm
  • midi_upper_mid    xtlang    /digego/extempore/tree/v0.8.9/libs/core/instruments/channel_strip.xtm
  • play-midi-note    scheme    /digego/extempore/tree/v0.8.9/libs/contrib/rtmidi-scm.xtm
  • play-midi-note    scheme    /digego/extempore/tree/v0.8.9/libs/external/portmidi.xtm
  • print_midi_devices    xtlang    /digego/extempore/tree/v0.8.9/libs/external/portmidi.xtm
  • rtmidi_default_callback:RtMidiCCallback    xtlang    /digego/extempore/tree/v0.8.9/libs/contrib/rtmidi.xtm
  • rtmidi_print_ports    xtlang    /digego/extempore/tree/v0.8.9/libs/contrib/rtmidi.xtm
  • rtmidi_process_message    xtlang    /digego/extempore/tree/v0.8.9/examples/contrib/rtmidi.xtm
  • rtmidi_register_callback    xtlang    /digego/extempore/tree/v0.8.9/libs/contrib/rtmidi.xtm
  • rtmidi_send    xtlang    /digego/extempore/tree/v0.8.9/libs/contrib/rtmidi.xtm
  • run_main_event_loop    xtlang    /digego/extempore/tree/v0.8.9/libs/core/scheduler.xtm
  • sampler-parse-midinote-filename    scheme    /digego/extempore/tree/v0.8.9/libs/external/instruments_ext-scm.xtm
  • scheme-midi-listener    scheme    /digego/extempore/tree/v0.8.9/libs/external/midi.xtm
  • scientific-pitch-notation-to-midi-number    scheme    /digego/extempore/tree/v0.8.9/libs/external/instruments_ext-scm.xtm
  • send-midi-cc    scheme    /digego/extempore/tree/v0.8.9/libs/external/portmidi.xtm
  • set_midi_in    xtlang    /digego/extempore/tree/v0.8.9/libs/external/portmidi.xtm
  • set_midi_out    xtlang    /digego/extempore/tree/v0.8.9/libs/external/portmidi.xtm
  • start_midi    xtlang    /digego/extempore/tree/v0.8.9/libs/external/portmidi.xtm
  • start_midi_scheduler    xtlang    /digego/extempore/tree/v0.8.9/libs/external/midi.xtm