1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
use ffi; use glib; use glib::object::IsA; use glib::source::SourceId; use glib::translate::*; use RTSPServer; pub trait RTSPServerExtManual { fn attach<'a, P: Into<Option<&'a glib::MainContext>>>(&self, context: P) -> SourceId; } impl<O: IsA<RTSPServer>> RTSPServerExtManual for O { fn attach<'a, P: Into<Option<&'a glib::MainContext>>>(&self, context: P) -> SourceId { let context = context.into(); let context = context.to_glib_none(); unsafe { from_glib(ffi::gst_rtsp_server_attach( self.to_glib_none().0, context.0, )) } } }