pub struct CachedSurfaceDescriptor {
pub prims: Vec<PrimitiveDescriptor>,
pub local_valid_rect: PictureRect,
pub last_updated_frame_id: FrameId,
pub dep_data: Vec<u8>,
pub vert_data: Vec<i32>,
}Expand description
Uniquely describes the content of this cached surface, in a way that can be (reasonably) efficiently hashed and compared.
Fields§
§prims: Vec<PrimitiveDescriptor>List of primitive instance unique identifiers. The uid is guaranteed to uniquely describe the content of the primitive template, while the other parameters describe the clip chain and instance params.
local_valid_rect: PictureRectPicture space rect that contains valid pixels region of this tile.
last_updated_frame_id: FrameIdThe last frame this tile had its dependencies updated (dependency updating is skipped if a tile is off-screen).
dep_data: Vec<u8>Packed per-prim dependency information
vert_data: Vec<i32>Per-tile quantized raster-space vert data. VertRanges stored in PrimitiveDescriptor and PrimitiveDependency::Clip index into this buffer.
Implementations§
Trait Implementations§
Source§impl Clone for CachedSurfaceDescriptor
impl Clone for CachedSurfaceDescriptor
Source§fn clone(&self) -> CachedSurfaceDescriptor
fn clone(&self) -> CachedSurfaceDescriptor
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl Freeze for CachedSurfaceDescriptor
impl RefUnwindSafe for CachedSurfaceDescriptor
impl Send for CachedSurfaceDescriptor
impl Sync for CachedSurfaceDescriptor
impl Unpin for CachedSurfaceDescriptor
impl UnsafeUnpin for CachedSurfaceDescriptor
impl UnwindSafe for CachedSurfaceDescriptor
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more