reactive-midyim-0.2: Process MIDI events via reactive-banana

Safe HaskellNone

Reactive.Banana.MIDI.KeySet

Documentation

class C set whereSource

Methods

reset :: State (set key value) [Boundary key value]Source

resetSome :: Ord key => (key -> Bool) -> State (set key value) [Boundary key value]Source

It must hold reset == resetSome (const True).

size :: set key value -> IntSource

toList :: set key value -> [(key, value)]Source

index :: Ord key => Int -> set key value -> Maybe (key, value)Source

change :: Ord key => Boundary key value -> State (set key value) [Boundary key value]Source

Instances

C SerialLatch

A key is hold until n times further keys are pressed. The n-th pressed key replaces the current one.

C GroupLatch

All pressed keys are latched until a key is pressed after a pause (i.e. all keys released). For aborting the pattern you have to send a AllNotesOff or AllSoundOff message.

C Latch 
C Pressed 

changeExt :: (Ord key, C set) => BoundaryExt key value -> State (set key value) [Boundary key value]Source

class Map set whereSource

Methods

accessMap :: T (set key value) (Map key value)Source

newtype Pressed key value Source

Constructors

Pressed 

Fields

deconsPressed :: Map key value
 

Instances

Map Pressed 
C Pressed 
(Show key, Show value) => Show (Pressed key value) 

pressed :: Pressed key valueSource

newtype Latch key value Source

Constructors

Latch 

Fields

deconsLatch :: Map key value
 

Instances

Map Latch 
C Latch 
(Show key, Show value) => Show (Latch key value) 

latch :: Latch key valueSource

latchChange :: Ord key => Boundary key value -> State (Latch key value) (Maybe (Boundary key value))Source

data GroupLatch key value Source

Constructors

GroupLatch 

Fields

groupLatchPressed_ :: Set key
 
groupLatchPlayed_ :: Map key value
 

Instances

Map GroupLatch 
C GroupLatch

All pressed keys are latched until a key is pressed after a pause (i.e. all keys released). For aborting the pattern you have to send a AllNotesOff or AllSoundOff message.

(Show key, Show value) => Show (GroupLatch key value) 

groupLatchPlayed :: T (GroupLatch key value) (Map key value)Source

data SerialLatch key value Source

Constructors

SerialLatch 

Instances

C SerialLatch

A key is hold until n times further keys are pressed. The n-th pressed key replaces the current one.

(Show key, Show value) => Show (SerialLatch key value) 

serialLatchPlayed :: T (SerialLatch key value) (Map Int (key, value))Source

sizeGen :: Map set => set key value -> IntSource

toListGen :: Map set => set key value -> [(key, value)]Source

indexGen :: (Ord key, Map set) => Int -> set key value -> Maybe (key, value)Source

releasePlayedKeys :: Map set => State (set key value) [Boundary key value]Source

releaseSomeKeys :: (Ord key, Map set) => (key -> Bool) -> State (set key value) [Boundary key value]Source

releaseKey :: key -> value -> Boundary key valueSource