| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104 |
- import { HashMap } from 'zrender/lib/core/util.js';
- import { Task, TaskContext } from './task.js';
- import GlobalModel from '../model/Global.js';
- import ExtensionAPI from './ExtensionAPI.js';
- import { StageHandlerInternal, StageHandlerOverallReset, StageHandler, Payload, StageHandlerReset, StageHandlerPlan, StageHandlerProgressExecutor, SeriesLargeOptionMixin, SeriesOption } from '../util/types.js';
- import { EChartsType } from './echarts.js';
- import SeriesModel from '../model/Series.js';
- import ChartView from '../view/Chart.js';
- import SeriesData from '../data/SeriesData.js';
- export declare type GeneralTask = Task<TaskContext>;
- export declare type SeriesTask = Task<SeriesTaskContext>;
- export declare type OverallTask = Task<OverallTaskContext> & {
- agentStubMap?: HashMap<StubTask>;
- };
- export declare type StubTask = Task<StubTaskContext> & {
- agent?: OverallTask;
- };
- export declare type Pipeline = {
- id: string;
- head: GeneralTask;
- tail: GeneralTask;
- threshold: number;
- progressiveEnabled: boolean;
- blockIndex: number;
- step: number;
- count: number;
- currentTask?: GeneralTask;
- context?: PipelineContext;
- };
- export declare type PipelineContext = {
- progressiveRender: boolean;
- modDataCount: number;
- large: boolean;
- };
- declare type PerformStageTaskOpt = {
- block?: boolean;
- setDirty?: boolean;
- visualType?: StageHandlerInternal['visualType'];
- dirtyMap?: HashMap<any>;
- };
- export interface SeriesTaskContext extends TaskContext {
- model?: SeriesModel;
- data?: SeriesData;
- view?: ChartView;
- ecModel?: GlobalModel;
- api?: ExtensionAPI;
- useClearVisual?: boolean;
- plan?: StageHandlerPlan;
- reset?: StageHandlerReset;
- scheduler?: Scheduler;
- payload?: Payload;
- resetDefines?: StageHandlerProgressExecutor[];
- }
- interface OverallTaskContext extends TaskContext {
- ecModel: GlobalModel;
- api: ExtensionAPI;
- overallReset: StageHandlerOverallReset;
- scheduler: Scheduler;
- payload?: Payload;
- }
- interface StubTaskContext extends TaskContext {
- model: SeriesModel;
- overallProgress: boolean;
- }
- declare class Scheduler {
- readonly ecInstance: EChartsType;
- readonly api: ExtensionAPI;
- unfinished: boolean;
- private _dataProcessorHandlers;
- private _visualHandlers;
- private _allHandlers;
- private _stageTaskMap;
- private _pipelineMap;
- constructor(ecInstance: EChartsType, api: ExtensionAPI, dataProcessorHandlers: StageHandlerInternal[], visualHandlers: StageHandlerInternal[]);
- restoreData(ecModel: GlobalModel, payload: Payload): void;
- getPerformArgs(task: GeneralTask, isBlock?: boolean): {
- step: number;
- modBy: number;
- modDataCount: number;
- };
- getPipeline(pipelineId: string): Pipeline;
- /**
- * Current, progressive rendering starts from visual and layout.
- * Always detect render mode in the same stage, avoiding that incorrect
- * detection caused by data filtering.
- * Caution:
- * `updateStreamModes` use `seriesModel.getData()`.
- */
- updateStreamModes(seriesModel: SeriesModel<SeriesOption & SeriesLargeOptionMixin>, view: ChartView): void;
- restorePipelines(ecModel: GlobalModel): void;
- prepareStageTasks(): void;
- prepareView(view: ChartView, model: SeriesModel, ecModel: GlobalModel, api: ExtensionAPI): void;
- performDataProcessorTasks(ecModel: GlobalModel, payload?: Payload): void;
- performVisualTasks(ecModel: GlobalModel, payload?: Payload, opt?: PerformStageTaskOpt): void;
- private _performStageTasks;
- performSeriesTasks(ecModel: GlobalModel): void;
- plan(): void;
- updatePayload(task: Task<SeriesTaskContext | OverallTaskContext>, payload: Payload | 'remain'): void;
- private _createSeriesStageTask;
- private _createOverallStageTask;
- private _pipe;
- static wrapStageHandler(stageHandler: StageHandler | StageHandlerOverallReset, visualType: StageHandlerInternal['visualType']): StageHandlerInternal;
- }
- export default Scheduler;
|