Safe Haskell | None |
---|---|
Language | Haskell98 |
- (~++) :: SEvent [a] -> SEvent [a] -> SEvent [a]
- midiIn :: UISF (Maybe InputDeviceID) (SEvent [MidiMessage])
- midiOut :: UISF (Maybe OutputDeviceID, SEvent [MidiMessage]) ()
- midiInM :: UISF [InputDeviceID] (SEvent [MidiMessage])
- midiOutM :: UISF [(OutputDeviceID, SEvent [MidiMessage])] ()
- midiOutB :: UISF (Maybe OutputDeviceID, BufferOperation MidiMessage) Bool
- midiOutMB :: UISF [(OutputDeviceID, BufferOperation MidiMessage)] Bool
- runMidi :: (NFData b, NFData c) => SF (b, SEvent [MidiMessage]) (c, SEvent [MidiMessage]) -> UISF (b, (Maybe InputDeviceID, Maybe OutputDeviceID)) [c]
- runMidiM :: (NFData b, NFData c) => SF (b, ([(InputDeviceID, SEvent [MidiMessage])], [OutputDeviceID])) (c, [(OutputDeviceID, SEvent [MidiMessage])]) -> UISF (b, ([InputDeviceID], [OutputDeviceID])) [c]
- runMidiMFlood :: (NFData b, NFData c) => SF (b, SEvent [MidiMessage]) (c, SEvent [MidiMessage]) -> UISF (b, ([InputDeviceID], [OutputDeviceID])) [c]
- runMidiMB :: (NFData b, NFData c) => SF (b, ([(InputDeviceID, SEvent [MidiMessage])], [OutputDeviceID])) (c, [(OutputDeviceID, BufferOperation MidiMessage)]) -> UISF (b, ([InputDeviceID], [OutputDeviceID])) [(c, Bool)]
- runMidiMBFlood :: (NFData b, NFData c) => SF (b, SEvent [MidiMessage]) (c, BufferOperation MidiMessage) -> UISF (b, ([InputDeviceID], [OutputDeviceID])) [(c, Bool)]
- musicToMsgs :: Bool -> [InstrumentName] -> Music1 -> [(DeltaT, MidiMessage)]
- musicToBO :: Bool -> [InstrumentName] -> Music1 -> BufferOperation MidiMessage
- selectInput :: UISF () (Maybe InputDeviceID)
- selectOutput :: UISF () (Maybe OutputDeviceID)
- selectInputM :: UISF () [InputDeviceID]
- selectOutputM :: UISF () [OutputDeviceID]
- data BufferOperation b :: * -> *
- = NoBOp
- | ClearBuffer
- | SkipAheadInBuffer DeltaT
- | MergeInBuffer [(DeltaT, b)]
- | AppendToBuffer [(DeltaT, b)]
- | SetBufferPlayStatus Bool (BufferOperation b)
- | SetBufferTempo Tempo (BufferOperation b)
- asyncMidi :: NFData c => r -> (b, c) -> Int -> ((r, b) -> ([([(OutputDeviceID, [MidiMessage])], Int)], r, c)) -> UISF b c
- asyncMidiOn :: NFData c => Int -> r -> (b, c) -> Int -> ((r, b) -> ([([(OutputDeviceID, [MidiMessage])], Int)], r, c)) -> UISF b c
Documentation
midiIn :: UISF (Maybe InputDeviceID) (SEvent [MidiMessage]) Source
midiOut :: UISF (Maybe OutputDeviceID, SEvent [MidiMessage]) () Source
midiInM :: UISF [InputDeviceID] (SEvent [MidiMessage]) Source
midiOutM :: UISF [(OutputDeviceID, SEvent [MidiMessage])] () Source
runMidi :: (NFData b, NFData c) => SF (b, SEvent [MidiMessage]) (c, SEvent [MidiMessage]) -> UISF (b, (Maybe InputDeviceID, Maybe OutputDeviceID)) [c] Source
runMidiM :: (NFData b, NFData c) => SF (b, ([(InputDeviceID, SEvent [MidiMessage])], [OutputDeviceID])) (c, [(OutputDeviceID, SEvent [MidiMessage])]) -> UISF (b, ([InputDeviceID], [OutputDeviceID])) [c] Source
runMidiMFlood :: (NFData b, NFData c) => SF (b, SEvent [MidiMessage]) (c, SEvent [MidiMessage]) -> UISF (b, ([InputDeviceID], [OutputDeviceID])) [c] Source
runMidiMB :: (NFData b, NFData c) => SF (b, ([(InputDeviceID, SEvent [MidiMessage])], [OutputDeviceID])) (c, [(OutputDeviceID, BufferOperation MidiMessage)]) -> UISF (b, ([InputDeviceID], [OutputDeviceID])) [(c, Bool)] Source
runMidiMBFlood :: (NFData b, NFData c) => SF (b, SEvent [MidiMessage]) (c, BufferOperation MidiMessage) -> UISF (b, ([InputDeviceID], [OutputDeviceID])) [(c, Bool)] Source
musicToMsgs :: Bool -> [InstrumentName] -> Music1 -> [(DeltaT, MidiMessage)] Source
musicToBO :: Bool -> [InstrumentName] -> Music1 -> BufferOperation MidiMessage Source
selectInput :: UISF () (Maybe InputDeviceID) Source
selectOutput :: UISF () (Maybe OutputDeviceID) Source
selectInputM :: UISF () [InputDeviceID] Source
selectOutputM :: UISF () [OutputDeviceID] Source
data BufferOperation b :: * -> *
The BufferOperation data type wraps up the data and operational commands
to control an eventbuffer
.
NoBOp | No Buffer Operation |
ClearBuffer | Erase the buffer |
SkipAheadInBuffer DeltaT | Skip ahead a certain amount of time in the buffer |
MergeInBuffer [(DeltaT, b)] | Merge data into the buffer |
AppendToBuffer [(DeltaT, b)] | Append data to the end of the buffer |
SetBufferPlayStatus Bool (BufferOperation b) | Set a new play status (True = Playing, False = Paused) |
SetBufferTempo Tempo (BufferOperation b) | Set the buffer's tempo |
asyncMidi :: NFData c => r -> (b, c) -> Int -> ((r, b) -> ([([(OutputDeviceID, [MidiMessage])], Int)], r, c)) -> UISF b c Source
asyncMidiOn :: NFData c => Int -> r -> (b, c) -> Int -> ((r, b) -> ([([(OutputDeviceID, [MidiMessage])], Int)], r, c)) -> UISF b c Source