UNPKG

@foxglove/ros1

Version:

Standalone TypeScript implementation of the ROS 1 (Robot Operating System) protocol with a pluggable transport layer

42 lines (30 loc) 934 B
import { MessageDefinition } from "@foxglove/message-definition"; import { MessageReader } from "@foxglove/rosmsg-serialization"; export interface ConnectionStats { bytesSent: number; bytesReceived: number; messagesSent: number; messagesReceived: number; dropEstimate: number; } export interface Connection { on( eventName: "header", listener: ( header: Map<string, string>, msgDef: MessageDefinition[], msgReader: MessageReader, ) => void, ): this; on(eventName: "message", listener: (msg: unknown, data: Uint8Array) => void): this; on(eventName: "error", listener: (err: Error) => void): this; transportType(): string; connect(): Promise<void>; connected(): boolean; header(): Map<string, string>; stats(): ConnectionStats; messageDefinition(): MessageDefinition[]; messageReader(): MessageReader | undefined; close(): void; getTransportInfo(): string; }