pub struct FrameSet { /* private fields */ }Expand description
A pool of reusable framebuffer image IDs allocated for a buffer collection.
Implementations§
Source§impl FrameSet
impl FrameSet
pub fn new(available: BTreeSet<ImageId>) -> FrameSet
Sourcepub fn take_image(&mut self) -> Option<ImageId>
pub fn take_image(&mut self) -> Option<ImageId>
Removes and returns the first available image ID, or None if empty.
Sourcepub fn return_image(&mut self, image_id: ImageId)
pub fn return_image(&mut self, image_id: ImageId)
Inserts the returned image ID back into self.available.
image_id must be one of the IDs previously returned by take_image.
Sourcepub fn no_images_in_use(&self) -> bool
pub fn no_images_in_use(&self) -> bool
Returns true if all images allocated for this pool are available.
Sourcepub fn image_count_for_testing(&self) -> usize
pub fn image_count_for_testing(&self) -> usize
Returns the total number of images in the pool.
Sourcepub fn available_count_for_testing(&self) -> usize
pub fn available_count_for_testing(&self) -> usize
Returns the number of currently available images in the pool.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for FrameSet
impl RefUnwindSafe for FrameSet
impl Send for FrameSet
impl Sync for FrameSet
impl Unpin for FrameSet
impl UnsafeUnpin for FrameSet
impl UnwindSafe for FrameSet
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, D> Encode<Ambiguous1, D> for Twhere
D: ResourceDialect,
impl<T, D> Encode<Ambiguous1, D> for Twhere
D: ResourceDialect,
Source§impl<T, D> Encode<Ambiguous2, D> for Twhere
D: ResourceDialect,
impl<T, D> Encode<Ambiguous2, D> for Twhere
D: ResourceDialect,
§impl<T> InstanceFromServiceTransport<T> for T
impl<T> InstanceFromServiceTransport<T> for T
§fn from_service_transport(handle: T) -> T
fn from_service_transport(handle: T) -> T
Converts the given service transport handle of type
T to [Self]§impl<T> IntoAny for T
impl<T> IntoAny for T
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