struct VblankRate {
captures: Vec<Arc<Controls>>,
published: u32,
conn: Option<(RustConnection, Window, Atom, Atom)>,
}Expand description
The rate the X server’s fake vblank runs at while this process captures it: the fastest live
capture’s frame rate, published on the root window as _FAKE_SCREEN_MILLIHZ (CARDINAL,
millihertz, 1000 to 1000000) and, rounded to whole frames for servers that read only that,
_FAKE_SCREEN_FPS (1 to 1000), both deleted when the last capture ends. The Selkies Xvfb paces
the clients that wait on Present by it, keeping the rate it started at as a floor unless the
published one is at most 0.1% slower (59.94 under 60), so a vsynced application presents as
fast as it is streamed; any other server holds it as inert data.
Fields§
§captures: Vec<Arc<Controls>>§published: u32Millihertz last published, 0 for none.
conn: Option<(RustConnection, Window, Atom, Atom)>The connection, the root window, and the millihertz and frames-per-second atoms.
Implementations§
Source§impl VblankRate
impl VblankRate
Auto Trait Implementations§
impl !Freeze for VblankRate
impl RefUnwindSafe for VblankRate
impl Send for VblankRate
impl Sync for VblankRate
impl Unpin for VblankRate
impl UnsafeUnpin for VblankRate
impl UnwindSafe for VblankRate
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Convert
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can
then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Convert
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Convert
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.§impl<T> DowncastSync for T
impl<T> DowncastSync for T
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
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