Files
nothoughts/node_modules/pixi.js/lib/rendering/renderers/gpu/buffer/GpuBufferSystem.d.ts
2025-08-04 18:57:35 +02:00

35 lines
1.1 KiB
TypeScript

/// <reference types="@webgpu/types" />
import { ExtensionType } from '../../../../extensions/Extensions';
import type { Buffer } from '../../shared/buffer/Buffer';
import type { System } from '../../shared/system/System';
import type { GPU } from '../GpuDeviceSystem';
/**
* System plugin to the renderer to manage buffers.
* @memberof rendering
*/
export declare class GpuBufferSystem implements System {
/** @ignore */
static extension: {
readonly type: readonly [ExtensionType.WebGPUSystem];
readonly name: "buffer";
};
protected CONTEXT_UID: number;
private _gpuBuffers;
private readonly _managedBuffers;
private _gpu;
protected contextChange(gpu: GPU): void;
getGPUBuffer(buffer: Buffer): GPUBuffer;
updateBuffer(buffer: Buffer): GPUBuffer;
/** dispose all WebGL resources of all managed buffers */
destroyAll(): void;
createGPUBuffer(buffer: Buffer): GPUBuffer;
protected onBufferChange(buffer: Buffer): void;
/**
* Disposes buffer
* @param buffer - buffer with data
*/
protected onBufferDestroy(buffer: Buffer): void;
destroy(): void;
private _destroyBuffer;
}