Compare commits
2 Commits
50d6101f22
...
3d2d305fee
| Author | SHA1 | Date | |
|---|---|---|---|
| 3d2d305fee | |||
| 6be7ae5172 |
16
src/commonMain/kotlin/nl/astraeus/vst/MidiMessageHandler.kt
Normal file
16
src/commonMain/kotlin/nl/astraeus/vst/MidiMessageHandler.kt
Normal file
@@ -0,0 +1,16 @@
|
||||
package nl.astraeus.vst
|
||||
|
||||
typealias MidiHandler = (Byte, Byte, Byte) -> Unit
|
||||
|
||||
object MidiMessageHandler {
|
||||
val handlers = mutableMapOf<Byte, MutableMap<Byte, MidiHandler>>()
|
||||
|
||||
fun addHandler(byte1: Byte, byte2: Byte = 0, handler: MidiHandler) {
|
||||
handlers.getOrPut(byte1) { mutableMapOf() }[byte2] = handler
|
||||
}
|
||||
|
||||
fun handle(byte1: Byte, byte2: Byte, byte3: Byte) {
|
||||
handlers[byte1]?.get(byte2)?.invoke(byte1, byte2, byte3)
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user