// 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::Element; use crate::Object; use crate::Toc; use glib::object::IsA; use glib::translate::*; glib::wrapper! { #[doc(alias = "GstTocSetter")] pub struct TocSetter(Interface) @requires Element, Object; match fn { type_ => || ffi::gst_toc_setter_get_type(), } } impl TocSetter { pub const NONE: Option<&'static TocSetter> = None; } unsafe impl Send for TocSetter {} unsafe impl Sync for TocSetter {} pub trait TocSetterExt: 'static { #[doc(alias = "gst_toc_setter_get_toc")] #[doc(alias = "get_toc")] fn toc(&self) -> Option; #[doc(alias = "gst_toc_setter_reset")] fn reset(&self); #[doc(alias = "gst_toc_setter_set_toc")] fn set_toc(&self, toc: Option<&Toc>); } impl> TocSetterExt for O { fn toc(&self) -> Option { unsafe { from_glib_full(ffi::gst_toc_setter_get_toc(self.as_ref().to_glib_none().0)) } } fn reset(&self) { unsafe { ffi::gst_toc_setter_reset(self.as_ref().to_glib_none().0); } } fn set_toc(&self, toc: Option<&Toc>) { unsafe { ffi::gst_toc_setter_set_toc(self.as_ref().to_glib_none().0, toc.to_glib_none().0); } } }