Implementation
MidiPort(
this.id, {
this.manufacturer,
this.name,
this.type,
this.version,
this.number,
}) {
_connectionController.add(MidiPortConnectionState.closed);
_stateController.add(MidiPortDeviceState.connected);
_events = MidiPlatform.instance
.deviceEvents()
.where((dynamic args) => args['id'] == id)
.listen((dynamic args) {
if (args[state] == Constants.connected) {
_stateController.add(MidiPortDeviceState.connected);
_connectionController.add(MidiPortConnectionState.closed);
} else {
_stateController.add(MidiPortDeviceState.disconnected);
_connectionController.add(MidiPortConnectionState.closed);
}
});
}