Struct smithay_client_toolkit::dmabuf::DmabufState
source · pub struct DmabufState {
zwp_linux_dmabuf: GlobalProxy<ZwpLinuxDmabufV1>,
modifiers: Vec<DmabufFormat>,
}
Expand description
A handler for zwp_linux_dmabuf_v1::ZwpLinuxDmabufV1
Fields§
§zwp_linux_dmabuf: GlobalProxy<ZwpLinuxDmabufV1>
§modifiers: Vec<DmabufFormat>
Implementations§
source§impl DmabufState
impl DmabufState
sourcepub fn new<D>(globals: &GlobalList, qh: &QueueHandle<D>) -> Self
pub fn new<D>(globals: &GlobalList, qh: &QueueHandle<D>) -> Self
Bind zwp_linux_dmabuf_v1
global version 3 or 4, if it exists.
This does not fail if the global does not exist.
sourcepub fn modifiers(&self) -> &[DmabufFormat]
pub fn modifiers(&self) -> &[DmabufFormat]
Only populated in version <4
On version 4
, use DmabufState::get_surface_feedback
.
sourcepub fn create_params<D>(
&self,
qh: &QueueHandle<D>,
) -> Result<DmabufParams, GlobalError>
pub fn create_params<D>( &self, qh: &QueueHandle<D>, ) -> Result<DmabufParams, GlobalError>
Create a params object for constructing a buffer
Errors if zwp_linux_dmabuf_v1
does not exist or has unsupported
version. An application can then fallback to using shm
buffers.
sourcepub fn get_default_feedback<D>(
&self,
qh: &QueueHandle<D>,
) -> Result<ZwpLinuxDmabufFeedbackV1, GlobalError>where
D: Dispatch<ZwpLinuxDmabufFeedbackV1, DmabufFeedbackData> + 'static,
pub fn get_default_feedback<D>(
&self,
qh: &QueueHandle<D>,
) -> Result<ZwpLinuxDmabufFeedbackV1, GlobalError>where
D: Dispatch<ZwpLinuxDmabufFeedbackV1, DmabufFeedbackData> + 'static,
Get default dmabuf feedback. Requires version 4
.
On version 3
, use DmabufState::modifiers
.
sourcepub fn get_surface_feedback<D>(
&self,
surface: &WlSurface,
qh: &QueueHandle<D>,
) -> Result<ZwpLinuxDmabufFeedbackV1, GlobalError>where
D: Dispatch<ZwpLinuxDmabufFeedbackV1, DmabufFeedbackData> + 'static,
pub fn get_surface_feedback<D>(
&self,
surface: &WlSurface,
qh: &QueueHandle<D>,
) -> Result<ZwpLinuxDmabufFeedbackV1, GlobalError>where
D: Dispatch<ZwpLinuxDmabufFeedbackV1, DmabufFeedbackData> + 'static,
Get default dmabuf feedback for given surface. Requires version 4
.
On version 3
, use DmabufState::modifiers
.
Trait Implementations§
source§impl Debug for DmabufState
impl Debug for DmabufState
source§impl<D> Dispatch<ZwpLinuxBufferParamsV1, GlobalData, D> for DmabufStatewhere
D: Dispatch<ZwpLinuxBufferParamsV1, GlobalData> + Dispatch<WlBuffer, DmaBufferData> + DmabufHandler + 'static,
impl<D> Dispatch<ZwpLinuxBufferParamsV1, GlobalData, D> for DmabufStatewhere
D: Dispatch<ZwpLinuxBufferParamsV1, GlobalData> + Dispatch<WlBuffer, DmaBufferData> + DmabufHandler + 'static,
source§fn event(
state: &mut D,
proxy: &ZwpLinuxBufferParamsV1,
event: Event,
_: &GlobalData,
conn: &Connection,
qh: &QueueHandle<D>,
)
fn event( state: &mut D, proxy: &ZwpLinuxBufferParamsV1, event: Event, _: &GlobalData, conn: &Connection, qh: &QueueHandle<D>, )
Called when an event from the server is processed Read more
source§fn event_created_child(
opcode: u16,
qhandle: &QueueHandle<D>,
) -> Arc<dyn ObjectData>
fn event_created_child( opcode: u16, qhandle: &QueueHandle<D>, ) -> Arc<dyn ObjectData>
Method used to initialize the user-data of objects created by events Read more
source§impl<D> Dispatch<ZwpLinuxDmabufV1, GlobalData, D> for DmabufState
impl<D> Dispatch<ZwpLinuxDmabufV1, GlobalData, D> for DmabufState
source§fn event(
state: &mut D,
proxy: &ZwpLinuxDmabufV1,
event: Event,
_: &GlobalData,
_: &Connection,
_: &QueueHandle<D>,
)
fn event( state: &mut D, proxy: &ZwpLinuxDmabufV1, event: Event, _: &GlobalData, _: &Connection, _: &QueueHandle<D>, )
Called when an event from the server is processed Read more
source§fn event_created_child(
opcode: u16,
_qhandle: &QueueHandle<State>,
) -> Arc<dyn ObjectData>
fn event_created_child( opcode: u16, _qhandle: &QueueHandle<State>, ) -> Arc<dyn ObjectData>
Method used to initialize the user-data of objects created by events Read more
Auto Trait Implementations§
impl Freeze for DmabufState
impl !RefUnwindSafe for DmabufState
impl Send for DmabufState
impl Sync for DmabufState
impl Unpin for DmabufState
impl !UnwindSafe for DmabufState
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> 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>
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
.source§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
.source§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.source§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.