mirror of
https://github.com/encounter/dawn-cmake.git
synced 2025-12-17 00:47:13 +00:00
Add dawn_wire entrypoints to inject texture in the wire
This allows reserving a texture ID in the client and injecting textures in the wire, so that the WebGPU control channel can create WebGPU textures backed by SharedImages in Chromium. BUG=941543 Change-Id: I1efcfe3dce024bb2d3592f22225407a97b641c1f Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/5820 Commit-Queue: Corentin Wallez <cwallez@chromium.org> Reviewed-by: Austin Eng <enga@chromium.org>
This commit is contained in:
committed by
Commit Bot service account
parent
e821ed6781
commit
339bd9d447
@@ -27,4 +27,15 @@ namespace dawn_wire { namespace client {
|
||||
DeviceAllocator().Free(mDevice);
|
||||
}
|
||||
|
||||
ReservedTexture Client::ReserveTexture(DawnDevice cDevice) {
|
||||
Device* device = reinterpret_cast<Device*>(cDevice);
|
||||
ObjectAllocator<Texture>::ObjectAndSerial* allocation = TextureAllocator().New(device);
|
||||
|
||||
ReservedTexture result;
|
||||
result.texture = reinterpret_cast<DawnTexture>(allocation->object.get());
|
||||
result.id = allocation->object->id;
|
||||
result.generation = allocation->serial;
|
||||
return result;
|
||||
}
|
||||
|
||||
}} // namespace dawn_wire::client
|
||||
|
||||
Reference in New Issue
Block a user