1 partial interface Navigator {
2 Future requestMIDIAccess (optional boolean systemExclusiveSupportRequested = false );
5 interface MIDIAccess : EventTarget {
6 sequence<MIDIPort> getInputs ();
7 sequence<MIDIPort> getOutputs ();
8 MIDIInput getInput (MIDIPort or DOMString or short target);
9 MIDIOutput getOutput (MIDIPort or DOMString or short target);
10 attribute EventHandler onconnect;
11 attribute EventHandler ondisconnect;
19 interface MIDIPort : EventTarget {
20 readonly attribute DOMString id;
21 readonly attribute DOMString? manufacturer;
22 readonly attribute DOMString? name;
23 readonly attribute MIDIPortType type;
24 readonly attribute DOMString? version;
25 attribute EventHandler ondisconnect;
28 interface MIDIInput : MIDIPort {
29 attribute EventHandler onmessage;
32 interface MIDIOutput : MIDIPort {
33 void send (sequence<octet> data, optional double timestamp);
36 interface MIDIMessageEvent : Event {
37 readonly attribute double receivedTime;
38 readonly attribute Uint8Array data;
41 interface MIDIConnectionEvent : Event {
42 readonly attribute MIDIPort port;