UNPKG

molstar

Version:

A comprehensive macromolecular library.

131 lines (130 loc) 6.56 kB
/** * Copyright (c) 2018-2022 mol* contributors, licensed under MIT, See LICENSE file for more info. * * @author Alexander Rose <alexander.rose@weirdbyte.de> */ export declare type GLRenderingContext = WebGLRenderingContext | WebGL2RenderingContext; export declare function isWebGL(gl: any): gl is WebGLRenderingContext; export declare function isWebGL2(gl: any): gl is WebGL2RenderingContext; export interface COMPAT_instanced_arrays { drawArraysInstanced(mode: number, first: number, count: number, primcount: number): void; drawElementsInstanced(mode: number, count: number, type: number, offset: number, primcount: number): void; vertexAttribDivisor(index: number, divisor: number): void; readonly VERTEX_ATTRIB_ARRAY_DIVISOR: number; } export declare function getInstancedArrays(gl: GLRenderingContext): COMPAT_instanced_arrays | null; export interface COMPAT_standard_derivatives { readonly FRAGMENT_SHADER_DERIVATIVE_HINT: number; } export declare function getStandardDerivatives(gl: GLRenderingContext): COMPAT_standard_derivatives | null; export interface COMPAT_element_index_uint { } export declare function getElementIndexUint(gl: GLRenderingContext): COMPAT_element_index_uint | null; export interface COMPAT_vertex_array_object { readonly VERTEX_ARRAY_BINDING: number; bindVertexArray(arrayObject: WebGLVertexArrayObject | null): void; createVertexArray(): WebGLVertexArrayObject | null; deleteVertexArray(arrayObject: WebGLVertexArrayObject): void; isVertexArray(value: any): value is WebGLVertexArrayObject; } export declare function getVertexArrayObject(gl: GLRenderingContext): COMPAT_vertex_array_object | null; export interface COMPAT_texture_float { } export declare function getTextureFloat(gl: GLRenderingContext): COMPAT_texture_float | null; export interface COMPAT_texture_float_linear { } export declare function getTextureFloatLinear(gl: GLRenderingContext): COMPAT_texture_float_linear | null; export interface COMPAT_texture_half_float { readonly HALF_FLOAT: number; } export declare function getTextureHalfFloat(gl: GLRenderingContext): COMPAT_texture_half_float | null; export interface COMPAT_texture_half_float_linear { } export declare function getTextureHalfFloatLinear(gl: GLRenderingContext): COMPAT_texture_half_float_linear | null; export interface COMPAT_blend_minmax { readonly MIN: number; readonly MAX: number; } export declare function getBlendMinMax(gl: GLRenderingContext): COMPAT_blend_minmax | null; export interface COMPAT_frag_depth { } export declare function getFragDepth(gl: GLRenderingContext): COMPAT_frag_depth | null; export interface COMPAT_color_buffer_float { readonly RGBA32F: number; } export declare function getColorBufferFloat(gl: GLRenderingContext): COMPAT_color_buffer_float | null; export interface COMPAT_color_buffer_half_float { readonly RGBA16F: number; } export declare function getColorBufferHalfFloat(gl: GLRenderingContext): COMPAT_color_buffer_half_float | null; export interface COMPAT_draw_buffers { drawBuffers(buffers: number[]): void; readonly COLOR_ATTACHMENT0: number; readonly COLOR_ATTACHMENT1: number; readonly COLOR_ATTACHMENT2: number; readonly COLOR_ATTACHMENT3: number; readonly COLOR_ATTACHMENT4: number; readonly COLOR_ATTACHMENT5: number; readonly COLOR_ATTACHMENT6: number; readonly COLOR_ATTACHMENT7: number; readonly DRAW_BUFFER0: number; readonly DRAW_BUFFER1: number; readonly DRAW_BUFFER2: number; readonly DRAW_BUFFER3: number; readonly DRAW_BUFFER4: number; readonly DRAW_BUFFER5: number; readonly DRAW_BUFFER6: number; readonly DRAW_BUFFER7: number; readonly MAX_COLOR_ATTACHMENTS: number; readonly MAX_DRAW_BUFFERS: number; } export declare function getDrawBuffers(gl: GLRenderingContext): COMPAT_draw_buffers | null; export interface COMPAT_shader_texture_lod { } export declare function getShaderTextureLod(gl: GLRenderingContext): COMPAT_shader_texture_lod | null; export interface COMPAT_depth_texture { readonly UNSIGNED_INT_24_8: number; } export declare function getDepthTexture(gl: GLRenderingContext): COMPAT_depth_texture | null; export interface COMPAT_sRGB { readonly FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING: number; readonly SRGB8_ALPHA8: number; readonly SRGB8: number; readonly SRGB: number; } export declare function getSRGB(gl: GLRenderingContext): COMPAT_sRGB | null; export interface COMPAT_disjoint_timer_query { /** A GLint indicating the number of bits used to hold the query result for the given target. */ QUERY_COUNTER_BITS: number; /** A WebGLQuery object, which is the currently active query for the given target. */ CURRENT_QUERY: number; /** A GLuint64EXT containing the query result. */ QUERY_RESULT: number; /** A GLboolean indicating whether or not a query result is available. */ QUERY_RESULT_AVAILABLE: number; /** Elapsed time (in nanoseconds). */ TIME_ELAPSED: number; /** The current time. */ TIMESTAMP: number; /** A GLboolean indicating whether or not the GPU performed any disjoint operation. */ GPU_DISJOINT: number; /** Creates a new WebGLTimerQueryEXT. */ createQuery: () => WebGLQuery; /** Deletes a given WebGLTimerQueryEXT. */ deleteQuery: (query: WebGLQuery) => void; /** Returns true if a given object is a valid WebGLTimerQueryEXT. */ isQuery: (query: WebGLQuery) => boolean; /** The timer starts when all commands prior to beginQueryEXT have been fully executed. */ beginQuery: (target: number, query: WebGLQuery) => void; /** The timer stops when all commands prior to endQueryEXT have been fully executed. */ endQuery: (target: number) => void; /** Records the current time into the corresponding query object. */ queryCounter: (query: WebGLQuery, target: number) => void; /** Returns information about a query target. */ getQuery: (target: number, pname: number) => WebGLQuery | number; /** Return the state of a query object. */ getQueryParameter: (query: WebGLQuery, pname: number) => number | boolean; } export declare function getDisjointTimerQuery(gl: GLRenderingContext): COMPAT_disjoint_timer_query | null; export declare function getNoNonInstancedActiveAttribs(gl: GLRenderingContext): boolean; export declare function testColorBuffer(gl: GLRenderingContext, type: number): boolean;