// This file was generated by gir (https://github.com/gtk-rs/gir) // from gir-files (https://github.com/gtk-rs/gir-files) // DO NOT EDIT use RTSPMediaFactory; use ffi; use glib::object::IsA; use glib::translate::*; use gst_rtsp; use std::mem; glib_wrapper! { pub struct RTSPMountPoints(Object); match fn { get_type => || ffi::gst_rtsp_mount_points_get_type(), } } impl RTSPMountPoints { pub fn new() -> RTSPMountPoints { assert_initialized_main_thread!(); unsafe { from_glib_full(ffi::gst_rtsp_mount_points_new()) } } } impl Default for RTSPMountPoints { fn default() -> Self { Self::new() } } unsafe impl Send for RTSPMountPoints {} unsafe impl Sync for RTSPMountPoints {} pub trait RTSPMountPointsExt: 'static { fn add_factory>(&self, path: &str, factory: &P); fn make_path(&self, url: &gst_rtsp::RTSPUrl) -> Option; fn match_(&self, path: &str) -> (RTSPMediaFactory, i32); fn remove_factory(&self, path: &str); } impl> RTSPMountPointsExt for O { fn add_factory>(&self, path: &str, factory: &P) { unsafe { ffi::gst_rtsp_mount_points_add_factory(self.to_glib_none().0, path.to_glib_none().0, factory.to_glib_full()); } } fn make_path(&self, url: &gst_rtsp::RTSPUrl) -> Option { unsafe { from_glib_full(ffi::gst_rtsp_mount_points_make_path(self.to_glib_none().0, url.to_glib_none().0)) } } fn match_(&self, path: &str) -> (RTSPMediaFactory, i32) { unsafe { let mut matched = mem::uninitialized(); let ret = from_glib_full(ffi::gst_rtsp_mount_points_match(self.to_glib_none().0, path.to_glib_none().0, &mut matched)); (ret, matched) } } fn remove_factory(&self, path: &str) { unsafe { ffi::gst_rtsp_mount_points_remove_factory(self.to_glib_none().0, path.to_glib_none().0); } } }