alsa-seq-0.6.0.7: Binding to the ALSA Library API (MIDI sequencer).

Safe HaskellNone
LanguageHaskell2010

Sound.ALSA.Sequencer.Concurrent

Synopsis

Documentation

threadWaitInput :: AllowInput mode => T mode -> IO () Source #

Wait for new input to be available from the sequencer (even if there is already input in the buffer)

threadWaitOutput :: AllowOutput mode => T mode -> IO () Source #

Wait until new output may be drained from the buffer to the sequencer (even if the output buffer is already empty)

threadWaitDuplex :: (AllowInput mode, AllowOutput mode) => T mode -> IO () Source #

Wait until new input is available or new output may be drained

input :: AllowInput mode => T mode -> IO T Source #

A thread-compatible version of Sound.ALSA.Sequencer.Event.input. This call is always blocking (unless there are already event in the input buffer) but will not block other threads. The sequencer, however, must be set non-blocking or this will not work as expected.

output :: AllowOutput mode => T mode -> T -> IO Word Source #

A thread-compatible version of Sound.ALSA.Sequencer.Event.output. This call is always blocking (unless there is space in the output buffer) but will not block other threads. The sequencer, however, must be set non-blocking or this will not work as expected.

drainOutput :: AllowOutput mode => T mode -> IO () Source #

A thread-compatible version of Sound.ALSA.Sequencer.Event.drainBuffer. This call is always blocking but will not block other threads. The sequencer, however, must be set non-blocking or this will not work as expected.