Struct wayland_protocols::wp::linux_explicit_synchronization::zv1::client::zwp_linux_buffer_release_v1::ZwpLinuxBufferReleaseV1
source · pub struct ZwpLinuxBufferReleaseV1 { /* private fields */ }
Expand description
buffer release explicit synchronization
This object is instantiated in response to a zwp_linux_surface_synchronization_v1.get_release request.
It provides an alternative to wl_buffer.release events, providing a unique release from a single wl_surface.commit request. The release event also supports explicit synchronization, providing a fence FD for the client to synchronize against.
Exactly one event, either a fenced_release or an immediate_release, will be emitted for the wl_surface.commit request. The compositor can choose release by release which event it uses.
This event does not replace wl_buffer.release events; servers are still required to send those events.
Once a buffer release object has delivered a ‘fenced_release’ or an ‘immediate_release’ event it is automatically destroyed.
See also the Event enum for this interface.
Trait Implementations§
source§impl Borrow<ObjectId> for ZwpLinuxBufferReleaseV1
impl Borrow<ObjectId> for ZwpLinuxBufferReleaseV1
source§impl Clone for ZwpLinuxBufferReleaseV1
impl Clone for ZwpLinuxBufferReleaseV1
source§fn clone(&self) -> ZwpLinuxBufferReleaseV1
fn clone(&self) -> ZwpLinuxBufferReleaseV1
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Debug for ZwpLinuxBufferReleaseV1
impl Debug for ZwpLinuxBufferReleaseV1
source§impl Hash for ZwpLinuxBufferReleaseV1
impl Hash for ZwpLinuxBufferReleaseV1
source§impl PartialEq<Weak<ZwpLinuxBufferReleaseV1>> for ZwpLinuxBufferReleaseV1
impl PartialEq<Weak<ZwpLinuxBufferReleaseV1>> for ZwpLinuxBufferReleaseV1
source§impl PartialEq for ZwpLinuxBufferReleaseV1
impl PartialEq for ZwpLinuxBufferReleaseV1
source§fn eq(&self, other: &ZwpLinuxBufferReleaseV1) -> bool
fn eq(&self, other: &ZwpLinuxBufferReleaseV1) -> bool
self
and other
values to be equal, and is used
by ==
.source§impl Proxy for ZwpLinuxBufferReleaseV1
impl Proxy for ZwpLinuxBufferReleaseV1
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 ZwpLinuxBufferReleaseV1
Auto Trait Implementations§
impl !RefUnwindSafe for ZwpLinuxBufferReleaseV1
impl Send for ZwpLinuxBufferReleaseV1
impl Sync for ZwpLinuxBufferReleaseV1
impl Unpin for ZwpLinuxBufferReleaseV1
impl !UnwindSafe for ZwpLinuxBufferReleaseV1
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.