Donner SVG 0.8.0
0.8.0 ยท ebf353960.8.0 main
SVG editor and embeddable C⁠+⁠+⁠20 engine.
Loading...
Searching...
No Matches
donner::gpu::browser::BrowserSharedTexture Class Referenceabstract

A texture one logical device has shared with the others over the same browser device. More...

#include "donner/gpu/browser/BrowserBridge.h"

Inheritance diagram for donner::gpu::browser::BrowserSharedTexture:
[legend]

Public Member Functions

virtual BrowserTextureShareId shareId () const =0
 The share, as the browser side names it.
virtual const void * sharedDeviceIdentity () const =0
 Identity of the browser device the texture belongs to, as BrowserBridge::sharedDeviceIdentity reports it for every bridge over that device.
Public Member Functions inherited from donner::gpu::ExportedTextureBacking
 ExportedTextureBacking (const ExportedTextureBacking &)=delete
ExportedTextureBacking & operator= (const ExportedTextureBacking &)=delete
virtual void releaseBackingNow () const
 Releases the allocation at once, for a producer that asked to give its backing back while another device still read it.

Detailed Description

A texture one logical device has shared with the others over the same browser device.

This is the backend half of an exported texture (ExportedTextureBacking). The runtime keeps it for as long as an export token or a registration made from the export is alive, and the browser texture lives at least that long: the producer releasing its own identifier does not destroy a texture a share still holds, and the implementation lets the browser side go of it when this object is destroyed. Browser objects belong to the worker that obtained the device, so that release runs only on the thread that made the share: one destroyed elsewhere hands its release to that thread, which runs it the next time it yields to the browser. A share whose thread has exited goes with its browser device, which destroys every texture a share still holds when the last logical device over it is released.


The documentation for this class was generated from the following file: