import { List } from "../longan/gs.collections"; import { IRenderContext, RenderTarget, Texture2d, WebGL2RenderContext } from "./renderContext"; import { EventArgs } from "../events"; import { Segment } from "../longan/segment"; import { Viewer } from "../viewer"; export declare class RenderPass { typeName: string; protected viewer: Viewer; protected renderContext: IRenderContext; constructor(); _executeInit(viewer: Viewer, args: EventArgs): void; _executeFina(viewer: Viewer, args: EventArgs): void; _executeRender(deltaSeconds: number): void; protected onInit(viewer: Viewer, args: EventArgs): void; protected onFina(viewer: Viewer, args: EventArgs): void; protected beginRender(): void; protected endRender(): void; protected render(deltaSeconds: number): void; } export declare class RenderPassCollection { get owner(): Viewer; get renderTarget(): RenderTarget; set renderTarget(value: RenderTarget); get colorTexture(): Texture2d; set colorTexture(value: Texture2d); get depthTexture(): Texture2d; set depthTexture(value: Texture2d); protected _renderTarget: RenderTarget; protected _colorTexture: Texture2d; protected _depthTexture: Texture2d; private _owner; _renderPassList: List; constructor(owner: Viewer); add(renderPass: RenderPass): void; insert(index: number, renderPass: RenderPass): void; addPostProcess(renderPass: RenderPass): void; remove(renderPass: RenderPass | string): void; clear(): void; indexOf(renderPass: RenderPass): number; find(type: string): T; has(type: string): boolean; } export declare class PreRenderPass extends RenderPass { protected rc: WebGL2RenderContext; private resizeEvent; constructor(); protected onInit(viewer: Viewer, args: EventArgs): void; protected onFina(viewer: Viewer, args: EventArgs): void; protected beginRender(): void; protected endRender(): void; protected render(deltaSeconds: number): void; } export declare class UpdateViewPass extends RenderPass { typeName: string; private _viewSegment; constructor(viewSegment: Segment); protected render(deltaSeconds: number): void; invokeRender(deltaSeconds: number): void; }