Trait azul_webrender_api::BlobImageHandler[][src]

pub trait BlobImageHandler: Send {
    fn create_blob_rasterizer(&mut self) -> Box<dyn AsyncBlobImageRasterizer>;
fn create_similar(&self) -> Box<dyn BlobImageHandler>;
fn prepare_resources(
        &mut self,
        services: &dyn BlobImageResources,
        requests: &[BlobImageParams]
    );
fn add(
        &mut self,
        key: BlobImageKey,
        data: Arc<BlobImageData>,
        visible_rect: &DeviceIntRect,
        tile_size: TileSize
    );
fn update(
        &mut self,
        key: BlobImageKey,
        data: Arc<BlobImageData>,
        visible_rect: &DeviceIntRect,
        dirty_rect: &BlobDirtyRect
    );
fn delete(&mut self, key: BlobImageKey);
fn delete_font(&mut self, key: FontKey);
fn delete_font_instance(&mut self, key: FontInstanceKey);
fn clear_namespace(&mut self, namespace: IdNamespace);
fn enable_multithreading(&mut self, enable: bool); }
Expand description

A handler on the render backend that can create rasterizer objects which will be sent to the scene builder thread to execute the rasterization.

The handler is responsible for collecting resources, managing/updating blob commands and creating the rasterizer objects, but isn’t expected to do any rasterization itself.

Required methods

Creates a snapshot of the current state of blob images in the handler.

Creates an empty blob handler of the same type.

This is used to allow creating new API endpoints with blob handlers installed on them.

A hook to let the blob image handler update any state related to resources that are not bundled in the blob recording itself.

Register a blob image.

Update an already registered blob image.

Delete an already registered blob image.

A hook to let the handler clean up any state related to a font which the resource cache is about to delete.

A hook to let the handler clean up any state related to a font instance which the resource cache is about to delete.

A hook to let the handler clean up any state related a given namespace before the resource cache deletes them.

Whether to allow rendering blobs on multiple threads.

Implementors