@robotical/ricjs
Version:
Javascript/TS library for Robotical RIC
89 lines (88 loc) • 2.76 kB
TypeScript
import { RICMessageResult } from "./RICMsgHandler";
import RICCommsStats from "./RICCommsStats";
import RICAddOnManager from "./RICAddOnManager";
export declare class ROSSerialSmartServos {
smartServos: {
id: number;
pos: number;
current: number;
status: number;
}[];
}
export declare class ROSSerialIMU {
accel: {
x: number;
y: number;
z: number;
};
}
export declare class ROSSerialMagneto {
magneto: {
x: number;
y: number;
z: number;
};
}
export declare class ROSSerialPowerStatus {
powerStatus: {
battRemainCapacityPercent: number;
battTempDegC: number;
battRemainCapacityMAH: number;
battFullCapacityMAH: number;
battCurrentMA: number;
power5VOnTimeSecs: number;
power5VIsOn: boolean;
powerUSBIsConnected: boolean;
battInfoValid: boolean;
powerUSBIsValid: boolean;
powerFlags: number;
};
}
export declare class ROSSerialAddOnStatus {
id: number;
deviceTypeID: number;
whoAmI: string;
name: string;
status: number;
vals: {
[key: string]: number | boolean | string;
};
}
export declare class ROSSerialAddOnStatusList {
addons: Array<ROSSerialAddOnStatus>;
}
export declare class ROSSerialRGBT {
r: number;
g: number;
b: number;
t: number;
constructor(r: number, g: number, b: number, t: number);
toString(): string;
}
export declare class ROSSerialRobotStatus {
robotStatus: {
flags: number;
isMoving: boolean;
isPaused: boolean;
isFwUpdating: boolean;
workQCount: number;
heapFree: number;
heapMin: number;
pixRGBT: ROSSerialRGBT[];
loopMsAvg: number;
loopMsMax: number;
wifiRSSI: number;
bleRSSI: number;
};
}
export declare type ROSSerialMsg = ROSSerialSmartServos | ROSSerialIMU | ROSSerialMagneto | ROSSerialPowerStatus | ROSSerialAddOnStatusList | ROSSerialRobotStatus;
export declare class RICROSSerial {
static decode(rosSerialMsg: Uint8Array, startPos: number, RICMessageResult: RICMessageResult | null, commsStats: RICCommsStats, addOnManager: RICAddOnManager): void;
static extractSmartServos(buf: Uint8Array): ROSSerialSmartServos;
static extractAccel(buf: Uint8Array): ROSSerialIMU;
static extractMagneto(buf: Uint8Array): ROSSerialMagneto;
static extractPowerStatus(buf: Uint8Array): ROSSerialPowerStatus;
static extractAddOnStatus(buf: Uint8Array, addOnManager: RICAddOnManager): ROSSerialAddOnStatusList;
static extractRGBT(buf: Uint8Array, offset: number): ROSSerialRGBT;
static extractRobotStatus(buf: Uint8Array): ROSSerialRobotStatus;
}