ExecutionContext¶
Overview¶
TODO: doc
@author Jonathan Olson <jonathan.olson@colorado.edu>
Class ExecutionContext¶
Constructor¶
new ExecutionContext( executor : Executor, computePipelineMap : Map<PipelineBlueprint, ComputePipeline>, bindGroupMap : Map<BindGroupLayout, BindGroup>, resourceMap : Map<ResourceSlot, Resource>, separateComputePasses : boolean )¶
Instance Methods¶
dispatch( pipelineBlueprint : PipelineBlueprint, dispatchX, dispatchY, dispatchZ )¶
dispatchIndirect( pipelineBlueprint : PipelineBlueprint, indirectBuffer : GPUBuffer, indirectOffset : number )¶
getEncoderForCustomRender() : GPUCommandEncoder¶
TODO: see if we can get the bind groups to be optimized?
setTypedBufferValue( bufferSlot : BufferSlot<T>, value : T )¶
getTypedBufferValue( bufferSlot : BufferSlot<T> ) : Promise<T>¶
arrayBuffer( bufferSlot : BufferSlot<T> ) : Promise<ArrayBuffer>¶
u32( bufferSlot : BufferSlot<T> ) : Promise<Uint32Array>¶
i32( bufferSlot : BufferSlot<T> ) : Promise<Int32Array>¶
f32( bufferSlot : BufferSlot<T> ) : Promise<Float32Array>¶
u32Numbers( bufferSlot : BufferSlot<T> ) : Promise<number[]>¶
i32Numbers( bufferSlot : BufferSlot<T> ) : Promise<number[]>¶
f32Numbers( bufferSlot : BufferSlot<T> ) : Promise<number[]>¶
finish()¶
Source Code¶
See the source for ExecutionContext.ts in the alpenglow repository.