UNPKG

@foxglove/ros1

Version:

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

27 lines 1.52 kB
import { HttpServer, HttpRequest, XmlRpcValue } from "@foxglove/xmlrpc"; import { EventEmitter } from "eventemitter3"; import { RosNode } from "./RosNode"; import { RosXmlRpcResponse } from "./XmlRpcTypes"; export interface RosFollowerEvents { paramUpdate: (paramKey: string, paramValue: XmlRpcValue, callerId: string) => void; publisherUpdate: (topic: string, publishers: string[], callerId: string) => void; } export declare class RosFollower extends EventEmitter<RosFollowerEvents> { private _rosNode; private _server; private _url?; constructor(rosNode: RosNode, httpServer: HttpServer); start(hostname: string, port?: number): Promise<void>; close(): void; url(): string | undefined; getBusStats: (_: string, args: XmlRpcValue[]) => Promise<RosXmlRpcResponse>; getBusInfo: (_: string, args: XmlRpcValue[]) => Promise<RosXmlRpcResponse>; shutdown: (_: string, args: XmlRpcValue[]) => Promise<RosXmlRpcResponse>; getPid: (_: string, args: XmlRpcValue[]) => Promise<RosXmlRpcResponse>; getSubscriptions: (_: string, args: XmlRpcValue[]) => Promise<RosXmlRpcResponse>; getPublications: (_: string, args: XmlRpcValue[]) => Promise<RosXmlRpcResponse>; paramUpdate: (_: string, args: XmlRpcValue[]) => Promise<RosXmlRpcResponse>; publisherUpdate: (_: string, args: XmlRpcValue[]) => Promise<RosXmlRpcResponse>; requestTopic: (_: string, args: XmlRpcValue[], req?: HttpRequest) => Promise<RosXmlRpcResponse>; } //# sourceMappingURL=RosFollower.d.ts.map