// This file was generated by gir (https://github.com/gtk-rs/gir) // from gir-files (https://github.com/gtk-rs/gir-files) // from gst-gir-files (https://gitlab.freedesktop.org/gstreamer/gir-files-rs.git) // DO NOT EDIT use crate::Asset; use glib::{prelude::*, translate::*}; glib::wrapper! { #[doc(alias = "GESExtractable")] pub struct Extractable(Interface); match fn { type_ => || ffi::ges_extractable_get_type(), } } impl Extractable { pub const NONE: Option<&'static Extractable> = None; } mod sealed { pub trait Sealed {} impl> Sealed for T {} } pub trait ExtractableExt: IsA + sealed::Sealed + 'static { #[doc(alias = "ges_extractable_get_asset")] #[doc(alias = "get_asset")] fn asset(&self) -> Option { unsafe { from_glib_none(ffi::ges_extractable_get_asset( self.as_ref().to_glib_none().0, )) } } #[doc(alias = "ges_extractable_get_id")] #[doc(alias = "get_id")] fn id(&self) -> glib::GString { unsafe { from_glib_full(ffi::ges_extractable_get_id(self.as_ref().to_glib_none().0)) } } #[doc(alias = "ges_extractable_set_asset")] fn set_asset(&self, asset: &impl IsA) -> Result<(), glib::error::BoolError> { unsafe { glib::result_from_gboolean!( ffi::ges_extractable_set_asset( self.as_ref().to_glib_none().0, asset.as_ref().to_glib_none().0 ), "Failed to set asset" ) } } } impl> ExtractableExt for O {}