src/construct/domain_layer/domain/webgpu/core/value_object/StorageBufferVO.res
type t = StorageBuffer(IWebGPUCoreDp.bufferObject)
let create = value => StorageBuffer(value)
let value = buffer =>
switch buffer {
| StorageBuffer(value) => value
}
let createFromDevice = (
~device,
~bufferSize,
~usage=DpContainer.unsafeGetWebGPUCoreDp().bufferUsage.storage,
(),
) =>
DpContainer.unsafeGetWebGPUCoreDp().device.createBuffer(
{"size": bufferSize, "usage": usage},
device,
)->create