/** * Copyright (c) 2020-2022 mol* contributors, licensed under MIT, See LICENSE file for more info. * * @author David Sehnal */ import { RenderableSchema, Values, UnboxedValues } from '../renderable/schema.js'; import { WebGLContext } from '../webgl/context.js'; import { RegularGrid3d } from '../../mol-math/geometry/common.js'; import { RuntimeContext } from '../../mol-task/index.js'; export declare function canComputeGrid3dOnGPU(webgl?: WebGLContext): webgl is WebGLContext; export interface Grid3DComputeRenderableSpec { schema: S; loopBounds?: (keyof S)[]; utilCode?: string; mainCode: string; returnCode: string; values(params: P, grid: RegularGrid3d): UnboxedValues; cumulative?: { states(params: P): CS[]; update(params: P, state: CS, values: Values): void; yieldPeriod?: number; }; } export declare function createGrid3dComputeRenderable(spec: Grid3DComputeRenderableSpec): (ctx: RuntimeContext, webgl: WebGLContext, grid: RegularGrid3d, params: P) => Promise>;