This commit is contained in:
peli 2020-06-24 06:44:43 -07:00
Родитель 61552f908a
Коммит f6722e6e6e
4 изменённых файлов: 9 добавлений и 12 удалений

Просмотреть файл

@ -5,8 +5,8 @@ import { EventEmitter } from "./eventemitter"
import { getNumber, NumberFormat } from "./buffer";
export interface BusOptions {
sendPacket: (p: Packet) => Promise<void>;
disconnect: () => Promise<void>;
sendPacketAsync: (p: Packet) => Promise<void>;
disconnectAsync: () => Promise<void>;
}
export interface PacketEventEmitter {
@ -95,8 +95,8 @@ export class Bus extends EventEmitter implements PacketEventEmitter {
}
}
sendPacket(p: Packet) {
return this.options.sendPacket(p);
sendPacketAsync(p: Packet) {
return this.options.sendPacketAsync(p);
}
disconnect(): Promise<void> {
@ -104,7 +104,7 @@ export class Bus extends EventEmitter implements PacketEventEmitter {
clearInterval(this._gcInterval);
this._gcInterval = undefined;
}
return this.options.disconnect()
return this.options.disconnectAsync()
.then(() => { this.emit("disconnect") })
}

Просмотреть файл

@ -432,15 +432,13 @@ export async function requestUSBBus(requestDevice?: (options: USBDeviceRequestOp
const transport = new Transport(requestDevice);
const hf2 = new Proto(transport);
await hf2.init()
const startTime = Date.now();
const bus = new Bus({
sendPacket: p => {
sendPacketAsync: p => {
const buf = p.toBuffer();
return hf2.sendJDMessageAsync(buf)
.then(() => { });
//.catch(err => log(err)); TODO
.then(() => { }, err => console.log(err));
},
disconnect: () => hf2.disconnectAsync()
disconnectAsync: () => hf2.disconnectAsync()
});
hf2.onJDMessage(buf => {
const pkts = Packet.fromFrame(buf, bus.timestamp)

Просмотреть файл

@ -191,7 +191,7 @@ export class Packet {
sendCoreAsync(bus: Bus) {
this._header[2] = this.size + 4
write16(this._header, 0, crc(bufferConcat(this._header.slice(2), this._data)))
return bus.sendPacket(this)
return bus.sendPacketAsync(this)
}
sendReportAsync(dev: Device) {

Просмотреть файл

@ -1,7 +1,6 @@
import { Device } from "./device";
import { Packet } from "./packet";
import { CMD_SET_REG, REG_IS_STREAMING, CMD_CALIBRATE, REG_LOW_THRESHOLD } from "./constants";
import { SMap } from "./utils";
export class Client {
constructor(