incyclist-ant-plus
Version:
Incyclist library for ANT+ - originally forked from longhorn/ant-plus
50 lines (49 loc) • 1.5 kB
TypeScript
/// <reference types="node" />
import EventEmitter from 'events';
import { usb, Device } from 'usb';
import { ICancellationToken, BaseSensor } from './types';
export interface DeviceInfo extends usb.Device {
inUse: boolean;
}
export declare function getSticks(filterFn?: (d: Device) => boolean): usb.Device[];
export interface StickProps {
debug: boolean;
logger: {
logEvent: (event: any) => void;
};
}
export default class Stick extends EventEmitter {
private idVendor;
private idProduct;
private static deviceInUse;
private device;
private iface;
private detachedKernelDriver;
private inEp;
private outEp;
private leftover;
private usedChannels;
private attachedSensors;
maxChannels: number;
canScan: boolean;
props: any;
waitingForStartup: boolean;
constructor(idVendor: number, idProduct: number, props?: {});
private getDevices;
static listDevices(filterFn?: (d: Device) => boolean): usb.Device[];
logEvent(event: any): void;
blockDevice(device: Device): void;
unblockDevice(device: Device): void;
is_present(): boolean;
open(): Promise<boolean>;
openAsync(cb: (err: Error) => void): ICancellationToken;
close(): void;
reset(): void;
isScanning(): boolean;
attach(sensor: BaseSensor, forScan: boolean): boolean;
stopScan(): void;
detach(sensor: BaseSensor): boolean;
detach_all(): void;
write(data: Buffer): void;
read(data: Buffer): void;
}