@robotical/ricjs
Version:
Javascript/TS library for Robotical RIC
32 lines (31 loc) • 1.65 kB
TypeScript
import RICMsgHandler from './RICMsgHandler';
import { RICFileSendType } from './RICTypes';
import RICCommsStats from './RICCommsStats';
export default class RICFileHandler {
private _msgHandler;
private BLOCK_ACK_TIMEOUT_MS;
private _requestedFileBlockSize;
private _fileBlockSize;
private _requestedBatchAckSize;
private _batchAckSize;
private _sendWithoutBatchAcks;
private _ackedFilePos;
private _batchAckReceived;
private _isCancelled;
private _commsStats;
private _msgAwaitList;
private MAX_OUTSTANDING_FILE_BLOCK_SEND_PROMISES;
constructor(msgHandler: RICMsgHandler, commsStats: RICCommsStats);
setRequestedFileBlockSize(blockSize: number): void;
setRequestedBatchAckSize(batchAckSize: number): void;
fileSend(fileName: string, fileType: RICFileSendType, fileContents: Uint8Array, progressCallback: ((sent: number, total: number, progress: number) => void) | undefined): Promise<boolean>;
fileSendCancel(): Promise<void>;
_sendFileStartMsg(fileName: string, fileType: RICFileSendType, fileContents: Uint8Array): Promise<boolean>;
_sendFileEndMsg(fileName: string, fileType: RICFileSendType, fileContents: Uint8Array): Promise<boolean>;
_sendFileCancelMsg(): Promise<void>;
_sendFileContents(fileContents: Uint8Array, progressCallback: ((sent: number, total: number, progress: number) => void) | undefined): Promise<boolean>;
batchAck(timeout: number): Promise<void>;
_sendFileBlock(fileContents: Uint8Array, blockStart: number): Promise<boolean>;
onOktoMsg(fileOkTo: number): void;
awaitOutstandingMsgPromises(all: boolean): Promise<void>;
}