Interface GPUDevice
__brand: "GPUDevice";
features: GPUSupportedFeatures;
label: string;
limits: GPUSupportedLimits;
lost: Promise<GPUDeviceLostInfo>;
onuncapturederror: ((this: GPUDevice, ev: GPUUncapturedErrorEvent) => any);
queue: GPUQueue;
addEventListener(type: string, callback: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
createBindGroup(descriptor: GPUBindGroupDescriptor): GPUBindGroup;
createBindGroupLayout(descriptor: GPUBindGroupLayoutDescriptor): GPUBindGroupLayout;
createBuffer(descriptor: GPUBufferDescriptor): GPUBuffer;
createCommandEncoder(descriptor?: GPUObjectDescriptorBase): GPUCommandEncoder;
createComputePipeline(descriptor: GPUComputePipelineDescriptor): GPUComputePipeline;
createComputePipelineAsync(descriptor: GPUComputePipelineDescriptor): Promise<GPUComputePipeline>;
createPipelineLayout(descriptor: GPUPipelineLayoutDescriptor): GPUPipelineLayout;
createQuerySet(descriptor: GPUQuerySetDescriptor): GPUQuerySet;
createRenderBundleEncoder(descriptor: GPURenderBundleEncoderDescriptor): GPURenderBundleEncoder;
createRenderPipeline(descriptor: GPURenderPipelineDescriptor): GPURenderPipeline;
createRenderPipelineAsync(descriptor: GPURenderPipelineDescriptor): Promise<GPURenderPipeline>;
createSampler(descriptor?: GPUSamplerDescriptor): GPUSampler;
createShaderModule(descriptor: GPUShaderModuleDescriptor): GPUShaderModule;
createTexture(descriptor: GPUTextureDescriptor): GPUTexture;
destroy(): undefined;
dispatchEvent(event: Event): boolean;
importExternalTexture(descriptor: GPUExternalTextureDescriptor): GPUExternalTexture;
popErrorScope(): Promise<GPUError>;
pushErrorScope(filter: GPUErrorFilter): undefined;
removeEventListener(type: string, callback: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
}
Hierarchy
- EventTarget
- GPUObjectBase
- GPUDevice (view full)
Index
Properties
Methods
Properties
Readonly
Internal
__brand
Nominal type branding. https://github.com/microsoft/TypeScript/pull/33038
Readonly
features
A set containing the GPUFeatureName values of the features supported by the device (i.e. the ones with which it was created).
label
Readonly
limits
Exposes the limits supported by the device (which are exactly the ones with which it was created).
Readonly
lost
A slot-backed attribute holding a promise which is created with the device, remains pending for the lifetime of the device, then resolves when the device is lost. Upon initialization, it is set to a new promise.
onuncapturederror
An event handler IDL attribute for the GPUDevice#uncapturederror event type.
Readonly
queue
The primary GPUQueue for this device.
Methods
addEventListener
- add
Event (type, callback, options?): voidListener Appends an event listener for events whose type attribute value is type. The callback argument sets the callback that will be invoked when the event is dispatched.
The options argument sets listener-specific options. For compatibility this can be a boolean, in which case the method behaves exactly as if the value was specified as options's capture.
When set to true, options's capture prevents callback from being invoked when the event's eventPhase attribute value is BUBBLING_PHASE. When false (or not present), callback will not be invoked when event's eventPhase attribute value is CAPTURING_PHASE. Either way, callback will be invoked if event's eventPhase attribute value is AT_TARGET.
When set to true, options's passive indicates that the callback will not cancel the event by invoking preventDefault(). This is used to enable performance optimizations described in ยง 2.8 Observing event listeners.
When set to true, options's once indicates that the callback will only be invoked once after which the event listener will be removed.
If an AbortSignal is passed for options's signal, then the event listener will be removed when signal is aborted.
The event listener is appended to target's event listener list and is not appended if it has the same type, callback, and capture.
Parameters
- type: string
- callback: EventListenerOrEventListenerObject
Optional
options: boolean | AddEventListenerOptions
Returns void
createBindGroup
- create
Bind (descriptor): GPUBindGroupGroup Creates a GPUBindGroup.
Parameters
- descriptor: GPUBindGroupDescriptor
Description of the GPUBindGroup to create.
Returns GPUBindGroup
- descriptor: GPUBindGroupDescriptor
createBindGroupLayout
- create
Bind (descriptor): GPUBindGroupLayoutGroup Layout Creates a GPUBindGroupLayout.
Parameters
- descriptor: GPUBindGroupLayoutDescriptor
Description of the GPUBindGroupLayout to create.
Returns GPUBindGroupLayout
- descriptor: GPUBindGroupLayoutDescriptor
createBuffer
- create
Buffer (descriptor): GPUBuffer Creates a GPUBuffer.
Parameters
- descriptor: GPUBufferDescriptor
Description of the GPUBuffer to create.
Returns GPUBuffer
- descriptor: GPUBufferDescriptor
createCommandEncoder
- create
Command (descriptor?): GPUCommandEncoderEncoder Creates a GPUCommandEncoder.
Parameters
Optional
descriptor: GPUObjectDescriptorBaseDescription of the GPUCommandEncoder to create.
Returns GPUCommandEncoder
createComputePipeline
- create
Compute (descriptor): GPUComputePipelinePipeline Creates a GPUComputePipeline using immediate pipeline creation.
Parameters
- descriptor: GPUComputePipelineDescriptor
Description of the GPUComputePipeline to create.
Returns GPUComputePipeline
- descriptor: GPUComputePipelineDescriptor
createComputePipelineAsync
- create
Compute (descriptor): Promise<GPUComputePipeline>Pipeline Async Creates a GPUComputePipeline using async pipeline creation. The returned Promise resolves when the created pipeline is ready to be used without additional delay. If pipeline creation fails, the returned Promise rejects with an GPUPipelineError. Note: Use of this method is preferred whenever possible, as it prevents blocking the queue timeline work on pipeline compilation.
Parameters
- descriptor: GPUComputePipelineDescriptor
Description of the GPUComputePipeline to create.
Returns Promise<GPUComputePipeline>
- descriptor: GPUComputePipelineDescriptor
createPipelineLayout
- create
Pipeline (descriptor): GPUPipelineLayoutLayout Creates a GPUPipelineLayout.
Parameters
- descriptor: GPUPipelineLayoutDescriptor
Description of the GPUPipelineLayout to create.
Returns GPUPipelineLayout
- descriptor: GPUPipelineLayoutDescriptor
createQuerySet
- create
Query (descriptor): GPUQuerySetSet Creates a GPUQuerySet.
Parameters
- descriptor: GPUQuerySetDescriptor
Description of the GPUQuerySet to create.
Returns GPUQuerySet
- descriptor: GPUQuerySetDescriptor
createRenderBundleEncoder
- create
Render (descriptor): GPURenderBundleEncoderBundle Encoder Creates a GPURenderBundleEncoder.
Parameters
- descriptor: GPURenderBundleEncoderDescriptor
Description of the GPURenderBundleEncoder to create.
Returns GPURenderBundleEncoder
- descriptor: GPURenderBundleEncoderDescriptor
createRenderPipeline
- create
Render (descriptor): GPURenderPipelinePipeline Creates a GPURenderPipeline using immediate pipeline creation.
Parameters
- descriptor: GPURenderPipelineDescriptor
Description of the GPURenderPipeline to create.
Returns GPURenderPipeline
- descriptor: GPURenderPipelineDescriptor
createRenderPipelineAsync
- create
Render (descriptor): Promise<GPURenderPipeline>Pipeline Async Creates a GPURenderPipeline using async pipeline creation. The returned Promise resolves when the created pipeline is ready to be used without additional delay. If pipeline creation fails, the returned Promise rejects with an GPUPipelineError. Note: Use of this method is preferred whenever possible, as it prevents blocking the queue timeline work on pipeline compilation.
Parameters
- descriptor: GPURenderPipelineDescriptor
Description of the GPURenderPipeline to create.
Returns Promise<GPURenderPipeline>
- descriptor: GPURenderPipelineDescriptor
createSampler
- create
Sampler (descriptor?): GPUSampler Creates a GPUSampler.
Parameters
Optional
descriptor: GPUSamplerDescriptorDescription of the GPUSampler to create.
Returns GPUSampler
createShaderModule
- create
Shader (descriptor): GPUShaderModuleModule Creates a GPUShaderModule.
Parameters
- descriptor: GPUShaderModuleDescriptor
Description of the GPUShaderModule to create.
Returns GPUShaderModule
- descriptor: GPUShaderModuleDescriptor
createTexture
- create
Texture (descriptor): GPUTexture Creates a GPUTexture.
Parameters
- descriptor: GPUTextureDescriptor
Description of the GPUTexture to create.
Returns GPUTexture
- descriptor: GPUTextureDescriptor
destroy
dispatchEvent
- dispatch
Event (event): boolean Dispatches a synthetic event event to target and returns true if either event's cancelable attribute value is false or its preventDefault() method was not invoked, and false otherwise.
Parameters
- event: Event
Returns boolean
importExternalTexture
- import
External (descriptor): GPUExternalTextureTexture Creates a GPUExternalTexture wrapping the provided image source.
Parameters
- descriptor: GPUExternalTextureDescriptor
Provides the external image source object (and any creation options).
Returns GPUExternalTexture
- descriptor: GPUExternalTextureDescriptor
popErrorScope
pushErrorScope
- push
Error (filter): undefinedScope Pushes a new GPU error scope onto the GPUDevice#[[errorScopeStack]] for
this
.Parameters
- filter: GPUErrorFilter
Which class of errors this error scope observes.
Returns undefined
- filter: GPUErrorFilter
removeEventListener
- remove
Event (type, callback, options?): voidListener Removes the event listener in target's event listener list with the same type, callback, and options.
Parameters
- type: string
- callback: EventListenerOrEventListenerObject
Optional
options: boolean | EventListenerOptions
Returns void
EventTarget is a DOM interface implemented by objects that can receive events and may have listeners for them.
MDN Reference