@visactor/vrender-core
Version:
## Description
41 lines (40 loc) • 1.38 kB
TypeScript
import { EventEmitter } from '@visactor/vutils';
import type { ITickHandler, ITimeline, ITicker } from '../../interface';
import type { TickerMode } from './type';
import { STATUS } from './type';
export declare class DefaultTicker extends EventEmitter implements ITicker {
protected interval: number;
protected tickerHandler: ITickHandler;
protected _mode: TickerMode;
protected status: STATUS;
protected lastFrameTime: number;
protected tickCounts: number;
protected timelines: ITimeline[];
autoStop: boolean;
set mode(m: TickerMode);
get mode(): TickerMode;
constructor(timelines?: ITimeline[]);
init(): void;
addTimeline(timeline: ITimeline): void;
remTimeline(timeline: ITimeline): void;
getTimelines(): ITimeline[];
protected initHandler(): ITickHandler | null;
protected setupTickHandler(): boolean;
setInterval(interval: number): void;
getInterval(): number;
setFPS(fps: number): void;
getFPS(): number;
tick(interval: number): void;
tickTo(t: number): void;
pause(): boolean;
resume(): boolean;
ifCanStop(): boolean;
start(force?: boolean): boolean;
stop(): void;
protected handleTick: (handler: ITickHandler, params?: {
once?: boolean;
}) => void;
protected _handlerTick: () => void;
release(): void;
trySyncTickStatus(): void;
}