#include "third_party/blink/renderer/modules/webmidi/midi_port.h"
#include "third_party/blink/public/platform/task_type.h"
#include "third_party/blink/renderer/bindings/core/v8/script_promise.h"
#include "third_party/blink/renderer/bindings/core/v8/script_promise_resolver.h"
#include "third_party/blink/renderer/bindings/core/v8/to_v8_traits.h"
#include "third_party/blink/renderer/bindings/modules/v8/v8_midi_port_device_state.h"
#include "third_party/blink/renderer/core/dom/dom_exception.h"
#include "third_party/blink/renderer/core/frame/web_feature.h"
#include "third_party/blink/renderer/modules/webmidi/midi_access.h"
#include "third_party/blink/renderer/modules/webmidi/midi_connection_event.h"
#include "third_party/blink/renderer/platform/instrumentation/use_counter.h"
#include "third_party/blink/renderer/platform/wtf/functional.h"
PortState;
namespace blink {
MIDIPort::MIDIPort(MIDIAccess* access,
const String& id,
const String& manufacturer,
const String& name,
MIDIPortType type,
const String& version,
PortState state)
: … { … }
V8MIDIPortConnectionState MIDIPort::connection() const { … }
V8MIDIPortDeviceState MIDIPort::state() const { … }
V8MIDIPortType MIDIPort::type() const { … }
ScriptPromise<MIDIPort> MIDIPort::open(ScriptState* script_state) { … }
void MIDIPort::open() { … }
ScriptPromise<MIDIPort> MIDIPort::close(ScriptState* script_state) { … }
void MIDIPort::SetState(PortState state) { … }
ExecutionContext* MIDIPort::GetExecutionContext() const { … }
bool MIDIPort::HasPendingActivity() const { … }
void MIDIPort::ContextDestroyed() { … }
void MIDIPort::Trace(Visitor* visitor) const { … }
void MIDIPort::OpenAsynchronously(ScriptPromiseResolver<MIDIPort>* resolver) { … }
void MIDIPort::CloseAsynchronously(ScriptPromiseResolver<MIDIPort>* resolver) { … }
ScriptPromise<MIDIPort> MIDIPort::Accept(ScriptState* script_state) { … }
void MIDIPort::SetStates(PortState state, MIDIPortConnectionState connection) { … }
}