Struct wayland_protocols::wp::fifo::v1::client::wp_fifo_manager_v1::WpFifoManagerV1
source · pub struct WpFifoManagerV1 {
id: ObjectId,
version: u32,
data: Option<Arc<dyn ObjectData>>,
backend: WeakBackend,
}
Expand description
protocol for fifo constraints
When a Wayland compositor considers applying a content update, it must ensure all the update’s readiness constraints (fences, etc) are met.
This protocol provides a way to use the completion of a display refresh cycle as an additional readiness constraint.
Warning! The protocol described in this file is currently in the testing phase. Backward compatible changes may be added together with the corresponding interface version bump. Backward incompatible changes can only be done by creating a new major version of the extension.
This interface has no events.
Fields§
§id: ObjectId
§version: u32
§data: Option<Arc<dyn ObjectData>>
§backend: WeakBackend
Implementations§
source§impl WpFifoManagerV1
impl WpFifoManagerV1
sourcepub fn destroy(&self)
pub fn destroy(&self)
unbind from the manager interface
Informs the server that the client will no longer be using this protocol object. Existing objects created by this object are not affected.
sourcepub fn get_fifo<U: Send + Sync + 'static, D: Dispatch<WpFifoV1, U> + 'static>(
&self,
surface: &WlSurface,
qh: &QueueHandle<D>,
udata: U,
) -> WpFifoV1
pub fn get_fifo<U: Send + Sync + 'static, D: Dispatch<WpFifoV1, U> + 'static>( &self, surface: &WlSurface, qh: &QueueHandle<D>, udata: U, ) -> WpFifoV1
request fifo interface for surface
Establish a fifo object for a surface that may be used to add display refresh constraints to content updates.
Only one such object may exist for a surface and attempting to create more than one will result in an already_exists protocol error. If a surface is acted on by multiple software components, general best practice is that only the component performing wl_surface.attach operations should use this protocol.
Trait Implementations§
source§impl Borrow<ObjectId> for WpFifoManagerV1
impl Borrow<ObjectId> for WpFifoManagerV1
source§impl Clone for WpFifoManagerV1
impl Clone for WpFifoManagerV1
source§fn clone(&self) -> WpFifoManagerV1
fn clone(&self) -> WpFifoManagerV1
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Debug for WpFifoManagerV1
impl Debug for WpFifoManagerV1
source§impl Hash for WpFifoManagerV1
impl Hash for WpFifoManagerV1
source§impl PartialEq<Weak<WpFifoManagerV1>> for WpFifoManagerV1
impl PartialEq<Weak<WpFifoManagerV1>> for WpFifoManagerV1
source§impl PartialEq for WpFifoManagerV1
impl PartialEq for WpFifoManagerV1
source§fn eq(&self, other: &WpFifoManagerV1) -> bool
fn eq(&self, other: &WpFifoManagerV1) -> bool
self
and other
values to be equal, and is used
by ==
.source§impl Proxy for WpFifoManagerV1
impl Proxy for WpFifoManagerV1
source§fn data<U: Send + Sync + 'static>(&self) -> Option<&U>
fn data<U: Send + Sync + 'static>(&self) -> Option<&U>
source§fn object_data(&self) -> Option<&Arc<dyn ObjectData>>
fn object_data(&self) -> Option<&Arc<dyn ObjectData>>
source§fn backend(&self) -> &WeakBackend
fn backend(&self) -> &WeakBackend
source§fn send_request(&self, req: Self::Request<'_>) -> Result<(), InvalidId>
fn send_request(&self, req: Self::Request<'_>) -> Result<(), InvalidId>
source§fn send_constructor<I: Proxy>(
&self,
req: Self::Request<'_>,
data: Arc<dyn ObjectData>,
) -> Result<I, InvalidId>
fn send_constructor<I: Proxy>( &self, req: Self::Request<'_>, data: Arc<dyn ObjectData>, ) -> Result<I, InvalidId>
source§fn from_id(conn: &Connection, id: ObjectId) -> Result<Self, InvalidId>
fn from_id(conn: &Connection, id: ObjectId) -> Result<Self, InvalidId>
source§fn inert(backend: WeakBackend) -> Self
fn inert(backend: WeakBackend) -> Self
source§fn parse_event(
conn: &Connection,
msg: Message<ObjectId, OwnedFd>,
) -> Result<(Self, Self::Event), DispatchError>
fn parse_event( conn: &Connection, msg: Message<ObjectId, OwnedFd>, ) -> Result<(Self, Self::Event), DispatchError>
source§fn write_request<'a>(
&self,
conn: &Connection,
msg: Self::Request<'a>,
) -> Result<(Message<ObjectId, BorrowedFd<'a>>, Option<(&'static Interface, u32)>), InvalidId>
fn write_request<'a>( &self, conn: &Connection, msg: Self::Request<'a>, ) -> Result<(Message<ObjectId, BorrowedFd<'a>>, Option<(&'static Interface, u32)>), InvalidId>
impl Eq for WpFifoManagerV1
Auto Trait Implementations§
impl Freeze for WpFifoManagerV1
impl !RefUnwindSafe for WpFifoManagerV1
impl Send for WpFifoManagerV1
impl Sync for WpFifoManagerV1
impl Unpin for WpFifoManagerV1
impl !UnwindSafe for WpFifoManagerV1
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
source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
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
.source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
.source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s.source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
’s vtable from &mut Trait
’s.