2018-09-13 23:04:55 +03:00
|
|
|
/* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
|
2017-11-15 09:02:57 +03:00
|
|
|
/* This Source Code Form is subject to the terms of the Mozilla Public
|
|
|
|
* License, v. 2.0. If a copy of the MPL was not distributed with this file,
|
|
|
|
* You can obtain one at http://mozilla.org/MPL/2.0/.
|
|
|
|
*
|
|
|
|
* The origin of this IDL file is
|
|
|
|
* https://webaudio.github.io/web-midi-api/
|
|
|
|
*/
|
|
|
|
|
|
|
|
enum MIDIPortType {
|
|
|
|
"input",
|
|
|
|
"output"
|
|
|
|
};
|
|
|
|
|
|
|
|
enum MIDIPortDeviceState {
|
|
|
|
"disconnected",
|
|
|
|
"connected"
|
|
|
|
};
|
|
|
|
|
|
|
|
enum MIDIPortConnectionState {
|
|
|
|
"open",
|
|
|
|
"closed",
|
|
|
|
"pending"
|
|
|
|
};
|
|
|
|
|
2019-09-27 18:26:14 +03:00
|
|
|
[SecureContext, Pref="dom.webmidi.enabled",
|
|
|
|
Exposed=Window]
|
2017-11-15 09:02:57 +03:00
|
|
|
interface MIDIPort : EventTarget {
|
|
|
|
readonly attribute DOMString id;
|
|
|
|
readonly attribute DOMString? manufacturer;
|
|
|
|
readonly attribute DOMString? name;
|
|
|
|
readonly attribute DOMString? version;
|
|
|
|
readonly attribute MIDIPortType type;
|
|
|
|
readonly attribute MIDIPortDeviceState state;
|
|
|
|
readonly attribute MIDIPortConnectionState connection;
|
|
|
|
attribute EventHandler onstatechange;
|
|
|
|
Promise<MIDIPort> open();
|
|
|
|
Promise<MIDIPort> close();
|
|
|
|
};
|
|
|
|
|