@foxglove/ros1
Version:
Standalone TypeScript implementation of the ROS 1 (Robot Operating System) protocol with a pluggable transport layer
27 lines • 1.31 kB
TypeScript
import { MessageDefinition } from "@foxglove/message-definition";
import { MessageWriter } from "@foxglove/rosmsg-serialization";
import { Client } from "./Client";
import { SubscriberLink } from "./SubscriberLink";
type SubscriberStats = [number, number, number, number, 0];
type SubscriberInfo = [number, string, "o", string, string, number, string];
export declare class Publication {
readonly name: string;
readonly md5sum: string;
readonly dataType: string;
readonly latching: boolean;
readonly messageDefinition: MessageDefinition[];
readonly messageDefinitionText: string;
readonly messageWriter: MessageWriter;
private _latched;
private _subscribers;
constructor(name: string, md5sum: string, dataType: string, latching: boolean, messageDefinition: MessageDefinition[], messageDefinitionText: string, messageWriter: MessageWriter);
subscribers(): Readonly<Map<number, SubscriberLink>>;
addSubscriber(connectionId: number, destinationCallerId: string, client: Client): void;
write(transportType: string, data: Uint8Array): Promise<void>;
close(): void;
latchedMessage(transportType: string): Uint8Array | undefined;
getInfo(): SubscriberInfo[];
getStats(): [string, SubscriberStats[]];
}
export {};
//# sourceMappingURL=Publication.d.ts.map