led-matrix-ts
Version:
Highly customizable led matrix for the browser
53 lines (52 loc) • 1.54 kB
TypeScript
import { Event } from '../utils/event';
import { Sequence } from '../types';
import { Renderer } from './rendering/renderer';
import { RendererTypes } from './rendering/renderer-builder';
export interface PanelPlayerParameters {
renderer: Renderer;
fps: number;
sequence: Sequence;
}
interface SetRendererBuilderParameters {
rendererType: RendererTypes;
elementId: string;
}
export declare class PanelPlayer {
readonly CLASS_NAME: string;
private _index;
private _sequence;
private _renderer;
private _fps;
private _shouldUpdate;
private _fpsIntervalLengthInMs;
private _now;
private _then;
private _elapsed;
protected readonly onPanelUpdate: Event<{
display: import("../utils/bit-array").bit[][];
}>;
protected readonly onReachingBoundary: Event<void>;
readonly PanelUpdate: import("../utils/event").IEvent<{
display: import("../utils/bit-array").bit[][];
}>;
readonly ReachingBoundary: import("../utils/event").IEvent<void>;
constructor(params: PanelPlayerParameters);
sequence: Sequence;
readonly index: number;
fps: number;
renderer: Renderer;
play(): void;
stop(): void;
resume(): void;
pause(): void;
step(): void;
seek(frame: number): void;
setRendererFromBuilder(value: SetRendererBuilderParameters): void;
private _nextPanelFrame;
private _render;
private _incrementIndex;
private _startLoop;
private _loop;
private _callIfReadyForNextFrame;
}
export {};