Remove traits for things that are not subclassed

This commit is contained in:
Sebastian Dröge 2017-08-17 14:50:25 +03:00
parent 41e812d075
commit 33fb38efd9
46 changed files with 255 additions and 426 deletions

View file

@ -24,7 +24,6 @@ generate = [
"Gst.SeekType",
"Gst.FlowReturn",
"Gst.PadDirection",
"Gst.PadTemplate",
"Gst.PadPresence",
"Gst.URIHandler",
"Gst.URIType",
@ -41,7 +40,6 @@ generate = [
"Gst.StructureChangeType",
"Gst.StreamStatusType",
"Gst.DeviceProvider",
"Gst.DeviceProviderFactory",
"Gst.StreamType",
"Gst.StreamFlags",
"Gst.PadLinkReturn",
@ -280,6 +278,11 @@ name = "Gst.ElementFactory"
status = "generate"
trait = false
[[object]]
name = "Gst.DeviceProviderFactory"
status = "generate"
trait = false
[[object]]
name = "Gst.Device"
status = "generate"
@ -450,6 +453,11 @@ status = "generate"
# Pass by value
ignore = true
[[object]]
name = "Gst.PadTemplate"
status = "generate"
trait = false
[[object]]
name = "Gst.GhostPad"
status = "generate"
@ -487,6 +495,7 @@ status = "generate"
[[object]]
name = "Gst.Stream"
status = "generate"
trait = false
[[object.property]]
name = "caps"
@ -516,6 +525,7 @@ status = "generate"
[[object]]
name = "Gst.StreamCollection"
status = "generate"
trait = false
[[object.property]]
name = "upstream-id"

View file

@ -14,18 +14,12 @@ external_libraries = [
]
generate = [
"GstPlayer.PlayerAudioInfo",
"GstPlayer.PlayerColorBalanceType",
"GstPlayer.PlayerError",
"GstPlayer.PlayerGMainContextSignalDispatcher",
"GstPlayer.PlayerMediaInfo",
"GstPlayer.PlayerSignalDispatcher",
"GstPlayer.PlayerSnapshotFormat",
"GstPlayer.PlayerState",
"GstPlayer.PlayerStreamInfo",
"GstPlayer.PlayerSubtitleInfo",
"GstPlayer.PlayerVideoInfo",
"GstPlayer.PlayerVideoOverlayVideoRenderer",
"GstPlayer.PlayerVideoRenderer",
"GstPlayer.PlayerVisualization",
]
@ -59,7 +53,6 @@ name = "Gst.Structure"
status = "manual"
ref_mode = "ref-mut"
[[object]]
name = "GstPlayer.Player"
status = "generate"
@ -130,3 +123,33 @@ trait = false
[[object.signal]]
name = "warning"
concurrency = "send"
[[object]]
name = "GstPlayer.PlayerAudioInfo"
status = "generate"
trait = false
[[object]]
name = "GstPlayer.PlayerVideoInfo"
status = "generate"
trait = false
[[object]]
name = "GstPlayer.PlayerSubtitleInfo"
status = "generate"
trait = false
[[object]]
name = "GstPlayer.PlayerMediaInfo"
status = "generate"
trait = false
[[object]]
name = "GstPlayer.PlayerVideoOverlayVideoRenderer"
status = "generate"
trait = false
[[object]]
name = "GstPlayer.PlayerGMainContextSignalDispatcher"
status = "generate"
trait = false

View file

@ -1,4 +1,4 @@
// This file was generated by gir (3294959) from gir-files (???)
// This file was generated by gir (651da6e) from gir-files (???)
// DO NOT EDIT
use ffi;

View file

@ -1,4 +1,4 @@
// This file was generated by gir (3294959) from gir-files (???)
// This file was generated by gir (651da6e) from gir-files (???)
// DO NOT EDIT
use ffi;

View file

@ -1,4 +1,4 @@
// This file was generated by gir (3294959) from gir-files (???)
// This file was generated by gir (651da6e) from gir-files (???)
// DO NOT EDIT
mod player;
@ -6,15 +6,12 @@ pub use self::player::Player;
mod player_audio_info;
pub use self::player_audio_info::PlayerAudioInfo;
pub use self::player_audio_info::PlayerAudioInfoExt;
mod player_g_main_context_signal_dispatcher;
pub use self::player_g_main_context_signal_dispatcher::PlayerGMainContextSignalDispatcher;
pub use self::player_g_main_context_signal_dispatcher::PlayerGMainContextSignalDispatcherExt;
mod player_media_info;
pub use self::player_media_info::PlayerMediaInfo;
pub use self::player_media_info::PlayerMediaInfoExt;
mod player_signal_dispatcher;
pub use self::player_signal_dispatcher::PlayerSignalDispatcher;
@ -26,15 +23,12 @@ pub use self::player_stream_info::PlayerStreamInfoExt;
mod player_subtitle_info;
pub use self::player_subtitle_info::PlayerSubtitleInfo;
pub use self::player_subtitle_info::PlayerSubtitleInfoExt;
mod player_video_info;
pub use self::player_video_info::PlayerVideoInfo;
pub use self::player_video_info::PlayerVideoInfoExt;
mod player_video_overlay_video_renderer;
pub use self::player_video_overlay_video_renderer::PlayerVideoOverlayVideoRenderer;
pub use self::player_video_overlay_video_renderer::PlayerVideoOverlayVideoRendererExt;
mod player_video_renderer;
pub use self::player_video_renderer::PlayerVideoRenderer;
@ -51,13 +45,7 @@ pub use self::enums::PlayerState;
#[doc(hidden)]
pub mod traits {
pub use super::PlayerAudioInfoExt;
pub use super::PlayerGMainContextSignalDispatcherExt;
pub use super::PlayerMediaInfoExt;
pub use super::PlayerSignalDispatcherExt;
pub use super::PlayerStreamInfoExt;
pub use super::PlayerSubtitleInfoExt;
pub use super::PlayerVideoInfoExt;
pub use super::PlayerVideoOverlayVideoRendererExt;
pub use super::PlayerVideoRendererExt;
}

View file

@ -1,4 +1,4 @@
// This file was generated by gir (3294959) from gir-files (???)
// This file was generated by gir (651da6e) from gir-files (???)
// DO NOT EDIT
use Error;

View file

@ -1,9 +1,8 @@
// This file was generated by gir (3294959) from gir-files (???)
// This file was generated by gir (651da6e) from gir-files (???)
// DO NOT EDIT
use PlayerStreamInfo;
use ffi;
use glib::object::IsA;
use glib::translate::*;
use glib_ffi;
use gobject_ffi;
@ -18,49 +17,37 @@ glib_wrapper! {
}
}
unsafe impl Send for PlayerAudioInfo {}
unsafe impl Sync for PlayerAudioInfo {}
pub trait PlayerAudioInfoExt {
fn get_bitrate(&self) -> i32;
fn get_channels(&self) -> i32;
fn get_language(&self) -> Option<String>;
fn get_max_bitrate(&self) -> i32;
fn get_sample_rate(&self) -> i32;
}
impl<O: IsA<PlayerAudioInfo>> PlayerAudioInfoExt for O {
fn get_bitrate(&self) -> i32 {
impl PlayerAudioInfo {
pub fn get_bitrate(&self) -> i32 {
unsafe {
ffi::gst_player_audio_info_get_bitrate(self.to_glib_none().0)
}
}
fn get_channels(&self) -> i32 {
pub fn get_channels(&self) -> i32 {
unsafe {
ffi::gst_player_audio_info_get_channels(self.to_glib_none().0)
}
}
fn get_language(&self) -> Option<String> {
pub fn get_language(&self) -> Option<String> {
unsafe {
from_glib_none(ffi::gst_player_audio_info_get_language(self.to_glib_none().0))
}
}
fn get_max_bitrate(&self) -> i32 {
pub fn get_max_bitrate(&self) -> i32 {
unsafe {
ffi::gst_player_audio_info_get_max_bitrate(self.to_glib_none().0)
}
}
fn get_sample_rate(&self) -> i32 {
pub fn get_sample_rate(&self) -> i32 {
unsafe {
ffi::gst_player_audio_info_get_sample_rate(self.to_glib_none().0)
}
}
}
unsafe impl Send for PlayerAudioInfo {}
unsafe impl Sync for PlayerAudioInfo {}

View file

@ -1,11 +1,10 @@
// This file was generated by gir (3294959) from gir-files (???)
// This file was generated by gir (651da6e) from gir-files (???)
// DO NOT EDIT
use PlayerSignalDispatcher;
use ffi;
use glib;
use glib::Value;
use glib::object::IsA;
use glib::translate::*;
use glib_ffi;
use gobject_ffi;
@ -21,6 +20,14 @@ glib_wrapper! {
}
impl PlayerGMainContextSignalDispatcher {
pub fn get_property_application_context(&self) -> Option<glib::MainContext> {
let mut value = Value::from(None::<&glib::MainContext>);
unsafe {
gobject_ffi::g_object_get_property(self.to_glib_none().0, "application-context".to_glib_none().0, value.to_glib_none_mut().0);
}
value.get()
}
pub fn new<'a, P: Into<Option<&'a glib::MainContext>>>(application_context: P) -> Option<PlayerSignalDispatcher> {
assert_initialized_main_thread!();
let application_context = application_context.into();
@ -33,17 +40,3 @@ impl PlayerGMainContextSignalDispatcher {
unsafe impl Send for PlayerGMainContextSignalDispatcher {}
unsafe impl Sync for PlayerGMainContextSignalDispatcher {}
pub trait PlayerGMainContextSignalDispatcherExt {
fn get_property_application_context(&self) -> Option<glib::MainContext>;
}
impl<O: IsA<PlayerGMainContextSignalDispatcher> + IsA<glib::object::Object>> PlayerGMainContextSignalDispatcherExt for O {
fn get_property_application_context(&self) -> Option<glib::MainContext> {
let mut value = Value::from(None::<&glib::MainContext>);
unsafe {
gobject_ffi::g_object_get_property(self.to_glib_none().0, "application-context".to_glib_none().0, value.to_glib_none_mut().0);
}
value.get()
}
}

View file

@ -1,4 +1,4 @@
// This file was generated by gir (3294959) from gir-files (???)
// This file was generated by gir (651da6e) from gir-files (???)
// DO NOT EDIT
use PlayerAudioInfo;
@ -6,7 +6,6 @@ use PlayerStreamInfo;
use PlayerSubtitleInfo;
use PlayerVideoInfo;
use ffi;
use glib::object::IsA;
use glib::translate::*;
use glib_ffi;
use gobject_ffi;
@ -22,137 +21,103 @@ glib_wrapper! {
}
}
unsafe impl Send for PlayerMediaInfo {}
unsafe impl Sync for PlayerMediaInfo {}
pub trait PlayerMediaInfoExt {
fn get_audio_streams(&self) -> Vec<PlayerAudioInfo>;
fn get_container_format(&self) -> Option<String>;
fn get_duration(&self) -> gst::ClockTime;
fn get_image_sample(&self) -> Option<gst::Sample>;
fn get_number_of_audio_streams(&self) -> u32;
fn get_number_of_streams(&self) -> u32;
fn get_number_of_subtitle_streams(&self) -> u32;
fn get_number_of_video_streams(&self) -> u32;
fn get_stream_list(&self) -> Vec<PlayerStreamInfo>;
fn get_subtitle_streams(&self) -> Vec<PlayerSubtitleInfo>;
fn get_tags(&self) -> Option<gst::TagList>;
fn get_title(&self) -> Option<String>;
fn get_uri(&self) -> Option<String>;
fn get_video_streams(&self) -> Vec<PlayerVideoInfo>;
fn is_live(&self) -> bool;
fn is_seekable(&self) -> bool;
}
impl<O: IsA<PlayerMediaInfo>> PlayerMediaInfoExt for O {
fn get_audio_streams(&self) -> Vec<PlayerAudioInfo> {
impl PlayerMediaInfo {
pub fn get_audio_streams(&self) -> Vec<PlayerAudioInfo> {
unsafe {
FromGlibPtrContainer::from_glib_none(ffi::gst_player_media_info_get_audio_streams(self.to_glib_none().0))
}
}
fn get_container_format(&self) -> Option<String> {
pub fn get_container_format(&self) -> Option<String> {
unsafe {
from_glib_none(ffi::gst_player_media_info_get_container_format(self.to_glib_none().0))
}
}
fn get_duration(&self) -> gst::ClockTime {
pub fn get_duration(&self) -> gst::ClockTime {
unsafe {
ffi::gst_player_media_info_get_duration(self.to_glib_none().0)
}
}
fn get_image_sample(&self) -> Option<gst::Sample> {
pub fn get_image_sample(&self) -> Option<gst::Sample> {
unsafe {
from_glib_none(ffi::gst_player_media_info_get_image_sample(self.to_glib_none().0))
}
}
fn get_number_of_audio_streams(&self) -> u32 {
pub fn get_number_of_audio_streams(&self) -> u32 {
unsafe {
ffi::gst_player_media_info_get_number_of_audio_streams(self.to_glib_none().0)
}
}
fn get_number_of_streams(&self) -> u32 {
pub fn get_number_of_streams(&self) -> u32 {
unsafe {
ffi::gst_player_media_info_get_number_of_streams(self.to_glib_none().0)
}
}
fn get_number_of_subtitle_streams(&self) -> u32 {
pub fn get_number_of_subtitle_streams(&self) -> u32 {
unsafe {
ffi::gst_player_media_info_get_number_of_subtitle_streams(self.to_glib_none().0)
}
}
fn get_number_of_video_streams(&self) -> u32 {
pub fn get_number_of_video_streams(&self) -> u32 {
unsafe {
ffi::gst_player_media_info_get_number_of_video_streams(self.to_glib_none().0)
}
}
fn get_stream_list(&self) -> Vec<PlayerStreamInfo> {
pub fn get_stream_list(&self) -> Vec<PlayerStreamInfo> {
unsafe {
FromGlibPtrContainer::from_glib_none(ffi::gst_player_media_info_get_stream_list(self.to_glib_none().0))
}
}
fn get_subtitle_streams(&self) -> Vec<PlayerSubtitleInfo> {
pub fn get_subtitle_streams(&self) -> Vec<PlayerSubtitleInfo> {
unsafe {
FromGlibPtrContainer::from_glib_none(ffi::gst_player_media_info_get_subtitle_streams(self.to_glib_none().0))
}
}
fn get_tags(&self) -> Option<gst::TagList> {
pub fn get_tags(&self) -> Option<gst::TagList> {
unsafe {
from_glib_none(ffi::gst_player_media_info_get_tags(self.to_glib_none().0))
}
}
fn get_title(&self) -> Option<String> {
pub fn get_title(&self) -> Option<String> {
unsafe {
from_glib_none(ffi::gst_player_media_info_get_title(self.to_glib_none().0))
}
}
fn get_uri(&self) -> Option<String> {
pub fn get_uri(&self) -> Option<String> {
unsafe {
from_glib_none(ffi::gst_player_media_info_get_uri(self.to_glib_none().0))
}
}
fn get_video_streams(&self) -> Vec<PlayerVideoInfo> {
pub fn get_video_streams(&self) -> Vec<PlayerVideoInfo> {
unsafe {
FromGlibPtrContainer::from_glib_none(ffi::gst_player_media_info_get_video_streams(self.to_glib_none().0))
}
}
fn is_live(&self) -> bool {
pub fn is_live(&self) -> bool {
unsafe {
from_glib(ffi::gst_player_media_info_is_live(self.to_glib_none().0))
}
}
fn is_seekable(&self) -> bool {
pub fn is_seekable(&self) -> bool {
unsafe {
from_glib(ffi::gst_player_media_info_is_seekable(self.to_glib_none().0))
}
}
}
unsafe impl Send for PlayerMediaInfo {}
unsafe impl Sync for PlayerMediaInfo {}

View file

@ -1,4 +1,4 @@
// This file was generated by gir (3294959) from gir-files (???)
// This file was generated by gir (651da6e) from gir-files (???)
// DO NOT EDIT
use ffi;

View file

@ -1,4 +1,4 @@
// This file was generated by gir (3294959) from gir-files (???)
// This file was generated by gir (651da6e) from gir-files (???)
// DO NOT EDIT
use ffi;

View file

@ -1,9 +1,8 @@
// This file was generated by gir (3294959) from gir-files (???)
// This file was generated by gir (651da6e) from gir-files (???)
// DO NOT EDIT
use PlayerStreamInfo;
use ffi;
use glib::object::IsA;
use glib::translate::*;
use glib_ffi;
use gobject_ffi;
@ -18,17 +17,13 @@ glib_wrapper! {
}
}
unsafe impl Send for PlayerSubtitleInfo {}
unsafe impl Sync for PlayerSubtitleInfo {}
pub trait PlayerSubtitleInfoExt {
fn get_language(&self) -> Option<String>;
}
impl<O: IsA<PlayerSubtitleInfo>> PlayerSubtitleInfoExt for O {
fn get_language(&self) -> Option<String> {
impl PlayerSubtitleInfo {
pub fn get_language(&self) -> Option<String> {
unsafe {
from_glib_none(ffi::gst_player_subtitle_info_get_language(self.to_glib_none().0))
}
}
}
unsafe impl Send for PlayerSubtitleInfo {}
unsafe impl Sync for PlayerSubtitleInfo {}

View file

@ -1,9 +1,8 @@
// This file was generated by gir (3294959) from gir-files (???)
// This file was generated by gir (651da6e) from gir-files (???)
// DO NOT EDIT
use PlayerStreamInfo;
use ffi;
use glib::object::IsA;
use glib::translate::*;
use glib_ffi;
use gobject_ffi;
@ -18,31 +17,14 @@ glib_wrapper! {
}
}
unsafe impl Send for PlayerVideoInfo {}
unsafe impl Sync for PlayerVideoInfo {}
pub trait PlayerVideoInfoExt {
fn get_bitrate(&self) -> i32;
fn get_framerate(&self) -> (i32, i32);
fn get_height(&self) -> i32;
fn get_max_bitrate(&self) -> i32;
fn get_pixel_aspect_ratio(&self) -> (u32, u32);
fn get_width(&self) -> i32;
}
impl<O: IsA<PlayerVideoInfo>> PlayerVideoInfoExt for O {
fn get_bitrate(&self) -> i32 {
impl PlayerVideoInfo {
pub fn get_bitrate(&self) -> i32 {
unsafe {
ffi::gst_player_video_info_get_bitrate(self.to_glib_none().0)
}
}
fn get_framerate(&self) -> (i32, i32) {
pub fn get_framerate(&self) -> (i32, i32) {
unsafe {
let mut fps_n = mem::uninitialized();
let mut fps_d = mem::uninitialized();
@ -51,19 +33,19 @@ impl<O: IsA<PlayerVideoInfo>> PlayerVideoInfoExt for O {
}
}
fn get_height(&self) -> i32 {
pub fn get_height(&self) -> i32 {
unsafe {
ffi::gst_player_video_info_get_height(self.to_glib_none().0)
}
}
fn get_max_bitrate(&self) -> i32 {
pub fn get_max_bitrate(&self) -> i32 {
unsafe {
ffi::gst_player_video_info_get_max_bitrate(self.to_glib_none().0)
}
}
fn get_pixel_aspect_ratio(&self) -> (u32, u32) {
pub fn get_pixel_aspect_ratio(&self) -> (u32, u32) {
unsafe {
let mut par_n = mem::uninitialized();
let mut par_d = mem::uninitialized();
@ -72,9 +54,12 @@ impl<O: IsA<PlayerVideoInfo>> PlayerVideoInfoExt for O {
}
}
fn get_width(&self) -> i32 {
pub fn get_width(&self) -> i32 {
unsafe {
ffi::gst_player_video_info_get_width(self.to_glib_none().0)
}
}
}
unsafe impl Send for PlayerVideoInfo {}
unsafe impl Sync for PlayerVideoInfo {}

View file

@ -1,4 +1,4 @@
// This file was generated by gir (3294959) from gir-files (???)
// This file was generated by gir (651da6e) from gir-files (???)
// DO NOT EDIT
use PlayerVideoRenderer;
@ -22,6 +22,51 @@ glib_wrapper! {
}
impl PlayerVideoOverlayVideoRenderer {
pub fn expose(&self) {
unsafe {
ffi::gst_player_video_overlay_video_renderer_expose(self.to_glib_none().0);
}
}
pub fn get_render_rectangle(&self) -> (i32, i32, i32, i32) {
unsafe {
let mut x = mem::uninitialized();
let mut y = mem::uninitialized();
let mut width = mem::uninitialized();
let mut height = mem::uninitialized();
ffi::gst_player_video_overlay_video_renderer_get_render_rectangle(self.to_glib_none().0, &mut x, &mut y, &mut width, &mut height);
(x, y, width, height)
}
}
//pub fn get_window_handle(&self) -> /*Unimplemented*/Option<Fundamental: Pointer> {
// unsafe { TODO: call ffi::gst_player_video_overlay_video_renderer_get_window_handle() }
//}
pub fn set_render_rectangle(&self, x: i32, y: i32, width: i32, height: i32) {
unsafe {
ffi::gst_player_video_overlay_video_renderer_set_render_rectangle(self.to_glib_none().0, x, y, width, height);
}
}
//pub fn set_window_handle<P: Into<Option</*Unimplemented*/Fundamental: Pointer>>>(&self, window_handle: P) {
// unsafe { TODO: call ffi::gst_player_video_overlay_video_renderer_set_window_handle() }
//}
pub fn get_property_video_sink(&self) -> Option<gst::Element> {
let mut value = Value::from(None::<&gst::Element>);
unsafe {
gobject_ffi::g_object_get_property(self.to_glib_none().0, "video-sink".to_glib_none().0, value.to_glib_none_mut().0);
}
value.get()
}
pub fn set_property_video_sink<P: IsA<gst::Element> + IsA<glib::object::Object> + glib::value::SetValueOptional>(&self, video_sink: Option<&P>) {
unsafe {
gobject_ffi::g_object_set_property(self.to_glib_none().0, "video-sink".to_glib_none().0, Value::from(video_sink).to_glib_none().0);
}
}
//pub fn new<P: Into<Option</*Unimplemented*/Fundamental: Pointer>>>(window_handle: P) -> Option<PlayerVideoRenderer> {
// unsafe { TODO: call ffi::gst_player_video_overlay_video_renderer_new() }
//}
@ -33,66 +78,3 @@ impl PlayerVideoOverlayVideoRenderer {
unsafe impl Send for PlayerVideoOverlayVideoRenderer {}
unsafe impl Sync for PlayerVideoOverlayVideoRenderer {}
pub trait PlayerVideoOverlayVideoRendererExt {
fn expose(&self);
fn get_render_rectangle(&self) -> (i32, i32, i32, i32);
//fn get_window_handle(&self) -> /*Unimplemented*/Option<Fundamental: Pointer>;
fn set_render_rectangle(&self, x: i32, y: i32, width: i32, height: i32);
//fn set_window_handle<P: Into<Option</*Unimplemented*/Fundamental: Pointer>>>(&self, window_handle: P);
fn get_property_video_sink(&self) -> Option<gst::Element>;
fn set_property_video_sink<P: IsA<gst::Element> + IsA<glib::object::Object> + glib::value::SetValueOptional>(&self, video_sink: Option<&P>);
}
impl<O: IsA<PlayerVideoOverlayVideoRenderer> + IsA<glib::object::Object>> PlayerVideoOverlayVideoRendererExt for O {
fn expose(&self) {
unsafe {
ffi::gst_player_video_overlay_video_renderer_expose(self.to_glib_none().0);
}
}
fn get_render_rectangle(&self) -> (i32, i32, i32, i32) {
unsafe {
let mut x = mem::uninitialized();
let mut y = mem::uninitialized();
let mut width = mem::uninitialized();
let mut height = mem::uninitialized();
ffi::gst_player_video_overlay_video_renderer_get_render_rectangle(self.to_glib_none().0, &mut x, &mut y, &mut width, &mut height);
(x, y, width, height)
}
}
//fn get_window_handle(&self) -> /*Unimplemented*/Option<Fundamental: Pointer> {
// unsafe { TODO: call ffi::gst_player_video_overlay_video_renderer_get_window_handle() }
//}
fn set_render_rectangle(&self, x: i32, y: i32, width: i32, height: i32) {
unsafe {
ffi::gst_player_video_overlay_video_renderer_set_render_rectangle(self.to_glib_none().0, x, y, width, height);
}
}
//fn set_window_handle<P: Into<Option</*Unimplemented*/Fundamental: Pointer>>>(&self, window_handle: P) {
// unsafe { TODO: call ffi::gst_player_video_overlay_video_renderer_set_window_handle() }
//}
fn get_property_video_sink(&self) -> Option<gst::Element> {
let mut value = Value::from(None::<&gst::Element>);
unsafe {
gobject_ffi::g_object_get_property(self.to_glib_none().0, "video-sink".to_glib_none().0, value.to_glib_none_mut().0);
}
value.get()
}
fn set_property_video_sink<P: IsA<gst::Element> + IsA<glib::object::Object> + glib::value::SetValueOptional>(&self, video_sink: Option<&P>) {
unsafe {
gobject_ffi::g_object_set_property(self.to_glib_none().0, "video-sink".to_glib_none().0, Value::from(video_sink).to_glib_none().0);
}
}
}

View file

@ -1,4 +1,4 @@
// This file was generated by gir (3294959) from gir-files (???)
// This file was generated by gir (651da6e) from gir-files (???)
// DO NOT EDIT
use ffi;

View file

@ -1,4 +1,4 @@
// This file was generated by gir (3294959) from gir-files (???)
// This file was generated by gir (651da6e) from gir-files (???)
// DO NOT EDIT
use ffi;

View file

@ -1,4 +1,4 @@
// This file was generated by gir (cf27827) from gir-files (???)
// This file was generated by gir (651da6e) from gir-files (???)
// DO NOT EDIT
#[allow(unused_imports)]

View file

@ -1,4 +1,4 @@
// This file was generated by gir (cf27827) from gir-files (???)
// This file was generated by gir (651da6e) from gir-files (???)
// DO NOT EDIT
use ChildProxy;

View file

@ -1,4 +1,4 @@
// This file was generated by gir (cf27827) from gir-files (???)
// This file was generated by gir (651da6e) from gir-files (???)
// DO NOT EDIT
use ClockTime;

View file

@ -1,4 +1,4 @@
// This file was generated by gir (cf27827) from gir-files (???)
// This file was generated by gir (651da6e) from gir-files (???)
// DO NOT EDIT
use ffi;

View file

@ -1,4 +1,4 @@
// This file was generated by gir (cf27827) from gir-files (???)
// This file was generated by gir (651da6e) from gir-files (???)
// DO NOT EDIT
use ClockTime;

View file

@ -1,4 +1,4 @@
// This file was generated by gir (cf27827) from gir-files (???)
// This file was generated by gir (651da6e) from gir-files (???)
// DO NOT EDIT
use ffi;

View file

@ -1,4 +1,4 @@
// This file was generated by gir (cf27827) from gir-files (???)
// This file was generated by gir (651da6e) from gir-files (???)
// DO NOT EDIT
use Caps;

View file

@ -1,4 +1,4 @@
// This file was generated by gir (cf27827) from gir-files (???)
// This file was generated by gir (651da6e) from gir-files (???)
// DO NOT EDIT
use Bus;

View file

@ -1,4 +1,4 @@
// This file was generated by gir (cf27827) from gir-files (???)
// This file was generated by gir (651da6e) from gir-files (???)
// DO NOT EDIT
use Bus;

View file

@ -1,4 +1,4 @@
// This file was generated by gir (cf27827) from gir-files (???)
// This file was generated by gir (651da6e) from gir-files (???)
// DO NOT EDIT
use DeviceProvider;
@ -6,7 +6,6 @@ use Object;
use Rank;
use ffi;
use glib;
use glib::object::IsA;
use glib::translate::*;
use glib_ffi;
use gobject_ffi;
@ -22,6 +21,44 @@ glib_wrapper! {
}
impl DeviceProviderFactory {
pub fn get(&self) -> Option<DeviceProvider> {
unsafe {
from_glib_full(ffi::gst_device_provider_factory_get(self.to_glib_none().0))
}
}
pub fn get_device_provider_type(&self) -> glib::types::Type {
unsafe {
from_glib(ffi::gst_device_provider_factory_get_device_provider_type(self.to_glib_none().0))
}
}
pub fn get_metadata(&self, key: &str) -> Option<String> {
unsafe {
from_glib_none(ffi::gst_device_provider_factory_get_metadata(self.to_glib_none().0, key.to_glib_none().0))
}
}
pub fn get_metadata_keys(&self) -> Vec<String> {
unsafe {
FromGlibPtrContainer::from_glib_full(ffi::gst_device_provider_factory_get_metadata_keys(self.to_glib_none().0))
}
}
pub fn has_classes<'a, P: Into<Option<&'a str>>>(&self, classes: P) -> bool {
let classes = classes.into();
let classes = classes.to_glib_none();
unsafe {
from_glib(ffi::gst_device_provider_factory_has_classes(self.to_glib_none().0, classes.0))
}
}
pub fn has_classesv(&self, classes: &[&str]) -> bool {
unsafe {
from_glib(ffi::gst_device_provider_factory_has_classesv(self.to_glib_none().0, classes.to_glib_none().0))
}
}
pub fn find(name: &str) -> Option<DeviceProviderFactory> {
assert_initialized_main_thread!();
unsafe {
@ -46,57 +83,3 @@ impl DeviceProviderFactory {
unsafe impl Send for DeviceProviderFactory {}
unsafe impl Sync for DeviceProviderFactory {}
pub trait DeviceProviderFactoryExt {
fn get(&self) -> Option<DeviceProvider>;
fn get_device_provider_type(&self) -> glib::types::Type;
fn get_metadata(&self, key: &str) -> Option<String>;
fn get_metadata_keys(&self) -> Vec<String>;
fn has_classes<'a, P: Into<Option<&'a str>>>(&self, classes: P) -> bool;
fn has_classesv(&self, classes: &[&str]) -> bool;
}
impl<O: IsA<DeviceProviderFactory>> DeviceProviderFactoryExt for O {
fn get(&self) -> Option<DeviceProvider> {
unsafe {
from_glib_full(ffi::gst_device_provider_factory_get(self.to_glib_none().0))
}
}
fn get_device_provider_type(&self) -> glib::types::Type {
unsafe {
from_glib(ffi::gst_device_provider_factory_get_device_provider_type(self.to_glib_none().0))
}
}
fn get_metadata(&self, key: &str) -> Option<String> {
unsafe {
from_glib_none(ffi::gst_device_provider_factory_get_metadata(self.to_glib_none().0, key.to_glib_none().0))
}
}
fn get_metadata_keys(&self) -> Vec<String> {
unsafe {
FromGlibPtrContainer::from_glib_full(ffi::gst_device_provider_factory_get_metadata_keys(self.to_glib_none().0))
}
}
fn has_classes<'a, P: Into<Option<&'a str>>>(&self, classes: P) -> bool {
let classes = classes.into();
let classes = classes.to_glib_none();
unsafe {
from_glib(ffi::gst_device_provider_factory_has_classes(self.to_glib_none().0, classes.0))
}
}
fn has_classesv(&self, classes: &[&str]) -> bool {
unsafe {
from_glib(ffi::gst_device_provider_factory_has_classesv(self.to_glib_none().0, classes.to_glib_none().0))
}
}
}

View file

@ -1,4 +1,4 @@
// This file was generated by gir (cf27827) from gir-files (???)
// This file was generated by gir (651da6e) from gir-files (???)
// DO NOT EDIT
use Bus;

View file

@ -1,4 +1,4 @@
// This file was generated by gir (cf27827) from gir-files (???)
// This file was generated by gir (651da6e) from gir-files (???)
// DO NOT EDIT
use Caps;

View file

@ -1,4 +1,4 @@
// This file was generated by gir (cf27827) from gir-files (???)
// This file was generated by gir (651da6e) from gir-files (???)
// DO NOT EDIT
use ffi;

View file

@ -1,4 +1,4 @@
// This file was generated by gir (cf27827) from gir-files (???)
// This file was generated by gir (651da6e) from gir-files (???)
// DO NOT EDIT
use ffi;

View file

@ -1,4 +1,4 @@
// This file was generated by gir (cf27827) from gir-files (???)
// This file was generated by gir (651da6e) from gir-files (???)
// DO NOT EDIT
use Bin;

View file

@ -1,4 +1,4 @@
// This file was generated by gir (cf27827) from gir-files (???)
// This file was generated by gir (651da6e) from gir-files (???)
// DO NOT EDIT
use Object;

View file

@ -1,4 +1,4 @@
// This file was generated by gir (cf27827) from gir-files (???)
// This file was generated by gir (651da6e) from gir-files (???)
// DO NOT EDIT
mod bin;
@ -30,7 +30,6 @@ pub use self::device_provider::DeviceProviderExt;
mod device_provider_factory;
pub use self::device_provider_factory::DeviceProviderFactory;
pub use self::device_provider_factory::DeviceProviderFactoryExt;
mod element;
pub use self::element::Element;
@ -53,7 +52,6 @@ pub use self::pad::PadExt;
mod pad_template;
pub use self::pad_template::PadTemplate;
pub use self::pad_template::PadTemplateExt;
mod pipeline;
pub use self::pipeline::Pipeline;
@ -74,15 +72,11 @@ pub use self::proxy_pad::ProxyPadExt;
mod stream;
#[cfg(feature = "v1_10")]
pub use self::stream::Stream;
#[cfg(feature = "v1_10")]
pub use self::stream::StreamExt;
#[cfg(feature = "v1_10")]
mod stream_collection;
#[cfg(feature = "v1_10")]
pub use self::stream_collection::StreamCollection;
#[cfg(feature = "v1_10")]
pub use self::stream_collection::StreamCollectionExt;
mod system_clock;
pub use self::system_clock::SystemClock;
@ -245,19 +239,13 @@ pub mod traits {
pub use super::DeviceExt;
pub use super::DeviceMonitorExt;
pub use super::DeviceProviderExt;
pub use super::DeviceProviderFactoryExt;
pub use super::ElementExt;
pub use super::GhostPadExt;
pub use super::GstObjectExt;
pub use super::PadExt;
pub use super::PadTemplateExt;
pub use super::PipelineExt;
pub use super::PresetExt;
pub use super::ProxyPadExt;
#[cfg(feature = "v1_10")]
pub use super::StreamExt;
#[cfg(feature = "v1_10")]
pub use super::StreamCollectionExt;
pub use super::SystemClockExt;
pub use super::TagSetterExt;
pub use super::TocSetterExt;

View file

@ -1,4 +1,4 @@
// This file was generated by gir (cf27827) from gir-files (???)
// This file was generated by gir (651da6e) from gir-files (???)
// DO NOT EDIT
use ClockTime;

View file

@ -1,4 +1,4 @@
// This file was generated by gir (cf27827) from gir-files (???)
// This file was generated by gir (651da6e) from gir-files (???)
// DO NOT EDIT
use Caps;

View file

@ -1,4 +1,4 @@
// This file was generated by gir (cf27827) from gir-files (???)
// This file was generated by gir (651da6e) from gir-files (???)
// DO NOT EDIT
use Caps;
@ -7,9 +7,7 @@ use Pad;
use PadDirection;
use PadPresence;
use ffi;
use glib;
use glib::Value;
use glib::object::Downcast;
use glib::object::IsA;
use glib::signal::connect;
use glib::translate::*;
@ -35,39 +33,20 @@ impl PadTemplate {
from_glib_none(ffi::gst_pad_template_new(name_template.to_glib_none().0, direction.to_glib(), presence.to_glib(), caps.to_glib_none().0))
}
}
}
unsafe impl Send for PadTemplate {}
unsafe impl Sync for PadTemplate {}
pub trait PadTemplateExt {
fn get_caps(&self) -> Option<Caps>;
fn pad_created<P: IsA<Pad>>(&self, pad: &P);
fn get_property_direction(&self) -> PadDirection;
fn get_property_name_template(&self) -> Option<String>;
fn get_property_presence(&self) -> PadPresence;
fn connect_pad_created<F: Fn(&Self, &Pad) + Send + Sync + 'static>(&self, f: F) -> u64;
}
impl<O: IsA<PadTemplate> + IsA<glib::object::Object>> PadTemplateExt for O {
fn get_caps(&self) -> Option<Caps> {
pub fn get_caps(&self) -> Option<Caps> {
unsafe {
from_glib_full(ffi::gst_pad_template_get_caps(self.to_glib_none().0))
}
}
fn pad_created<P: IsA<Pad>>(&self, pad: &P) {
pub fn pad_created<P: IsA<Pad>>(&self, pad: &P) {
unsafe {
ffi::gst_pad_template_pad_created(self.to_glib_none().0, pad.to_glib_none().0);
}
}
fn get_property_direction(&self) -> PadDirection {
pub fn get_property_direction(&self) -> PadDirection {
let mut value = Value::from(&0);
unsafe {
gobject_ffi::g_object_get_property(self.to_glib_none().0, "direction".to_glib_none().0, value.to_glib_none_mut().0);
@ -75,7 +54,7 @@ impl<O: IsA<PadTemplate> + IsA<glib::object::Object>> PadTemplateExt for O {
}
}
fn get_property_name_template(&self) -> Option<String> {
pub fn get_property_name_template(&self) -> Option<String> {
let mut value = Value::from(None::<&str>);
unsafe {
gobject_ffi::g_object_get_property(self.to_glib_none().0, "name-template".to_glib_none().0, value.to_glib_none_mut().0);
@ -83,7 +62,7 @@ impl<O: IsA<PadTemplate> + IsA<glib::object::Object>> PadTemplateExt for O {
value.get()
}
fn get_property_presence(&self) -> PadPresence {
pub fn get_property_presence(&self) -> PadPresence {
let mut value = Value::from(&0);
unsafe {
gobject_ffi::g_object_get_property(self.to_glib_none().0, "presence".to_glib_none().0, value.to_glib_none_mut().0);
@ -91,18 +70,20 @@ impl<O: IsA<PadTemplate> + IsA<glib::object::Object>> PadTemplateExt for O {
}
}
fn connect_pad_created<F: Fn(&Self, &Pad) + Send + Sync + 'static>(&self, f: F) -> u64 {
pub fn connect_pad_created<F: Fn(&PadTemplate, &Pad) + Send + Sync + 'static>(&self, f: F) -> u64 {
unsafe {
let f: Box_<Box_<Fn(&Self, &Pad) + Send + Sync + 'static>> = Box_::new(Box_::new(f));
let f: Box_<Box_<Fn(&PadTemplate, &Pad) + Send + Sync + 'static>> = Box_::new(Box_::new(f));
connect(self.to_glib_none().0, "pad-created",
transmute(pad_created_trampoline::<Self> as usize), Box_::into_raw(f) as *mut _)
transmute(pad_created_trampoline as usize), Box_::into_raw(f) as *mut _)
}
}
}
unsafe extern "C" fn pad_created_trampoline<P>(this: *mut ffi::GstPadTemplate, pad: *mut ffi::GstPad, f: glib_ffi::gpointer)
where P: IsA<PadTemplate> {
unsafe impl Send for PadTemplate {}
unsafe impl Sync for PadTemplate {}
unsafe extern "C" fn pad_created_trampoline(this: *mut ffi::GstPadTemplate, pad: *mut ffi::GstPad, f: glib_ffi::gpointer) {
callback_guard!();
let f: &&(Fn(&P, &Pad) + Send + Sync + 'static) = transmute(f);
f(&PadTemplate::from_glib_none(this).downcast_unchecked(), &from_glib_none(pad))
let f: &&(Fn(&PadTemplate, &Pad) + Send + Sync + 'static) = transmute(f);
f(&from_glib_none(this), &from_glib_none(pad))
}

View file

@ -1,4 +1,4 @@
// This file was generated by gir (cf27827) from gir-files (???)
// This file was generated by gir (651da6e) from gir-files (???)
// DO NOT EDIT
use Bin;

View file

@ -1,4 +1,4 @@
// This file was generated by gir (cf27827) from gir-files (???)
// This file was generated by gir (651da6e) from gir-files (???)
// DO NOT EDIT
use Error;

View file

@ -1,4 +1,4 @@
// This file was generated by gir (cf27827) from gir-files (???)
// This file was generated by gir (651da6e) from gir-files (???)
// DO NOT EDIT
use ffi;

View file

@ -1,4 +1,4 @@
// This file was generated by gir (cf27827) from gir-files (???)
// This file was generated by gir (651da6e) from gir-files (???)
// DO NOT EDIT
use Iterator;

View file

@ -1,4 +1,4 @@
// This file was generated by gir (cf27827) from gir-files (???)
// This file was generated by gir (651da6e) from gir-files (???)
// DO NOT EDIT
#[cfg(feature = "v1_10")]
@ -11,7 +11,6 @@ use StreamType;
#[cfg(feature = "v1_10")]
use TagList;
use ffi;
use glib::object::IsA;
use glib::translate::*;
use glib_ffi;
use gobject_ffi;
@ -38,78 +37,44 @@ impl Stream {
from_glib_full(ffi::gst_stream_new(stream_id.0, caps.0, type_.to_glib(), flags.to_glib()))
}
}
}
unsafe impl Send for Stream {}
unsafe impl Sync for Stream {}
pub trait StreamExt {
#[cfg(feature = "v1_10")]
fn get_caps(&self) -> Option<Caps>;
#[cfg(feature = "v1_10")]
fn get_stream_flags(&self) -> StreamFlags;
#[cfg(feature = "v1_10")]
fn get_stream_id(&self) -> Option<String>;
#[cfg(feature = "v1_10")]
fn get_stream_type(&self) -> StreamType;
#[cfg(feature = "v1_10")]
fn get_tags(&self) -> Option<TagList>;
#[cfg(feature = "v1_10")]
fn set_caps<'a, P: Into<Option<&'a Caps>>>(&self, caps: P);
#[cfg(feature = "v1_10")]
fn set_stream_flags(&self, flags: StreamFlags);
#[cfg(feature = "v1_10")]
fn set_stream_type(&self, stream_type: StreamType);
#[cfg(feature = "v1_10")]
fn set_tags<'a, P: Into<Option<&'a TagList>>>(&self, tags: P);
}
impl<O: IsA<Stream>> StreamExt for O {
#[cfg(feature = "v1_10")]
fn get_caps(&self) -> Option<Caps> {
pub fn get_caps(&self) -> Option<Caps> {
unsafe {
from_glib_full(ffi::gst_stream_get_caps(self.to_glib_none().0))
}
}
#[cfg(feature = "v1_10")]
fn get_stream_flags(&self) -> StreamFlags {
pub fn get_stream_flags(&self) -> StreamFlags {
unsafe {
from_glib(ffi::gst_stream_get_stream_flags(self.to_glib_none().0))
}
}
#[cfg(feature = "v1_10")]
fn get_stream_id(&self) -> Option<String> {
pub fn get_stream_id(&self) -> Option<String> {
unsafe {
from_glib_none(ffi::gst_stream_get_stream_id(self.to_glib_none().0))
}
}
#[cfg(feature = "v1_10")]
fn get_stream_type(&self) -> StreamType {
pub fn get_stream_type(&self) -> StreamType {
unsafe {
from_glib(ffi::gst_stream_get_stream_type(self.to_glib_none().0))
}
}
#[cfg(feature = "v1_10")]
fn get_tags(&self) -> Option<TagList> {
pub fn get_tags(&self) -> Option<TagList> {
unsafe {
from_glib_full(ffi::gst_stream_get_tags(self.to_glib_none().0))
}
}
#[cfg(feature = "v1_10")]
fn set_caps<'a, P: Into<Option<&'a Caps>>>(&self, caps: P) {
pub fn set_caps<'a, P: Into<Option<&'a Caps>>>(&self, caps: P) {
let caps = caps.into();
let caps = caps.to_glib_none();
unsafe {
@ -118,21 +83,21 @@ impl<O: IsA<Stream>> StreamExt for O {
}
#[cfg(feature = "v1_10")]
fn set_stream_flags(&self, flags: StreamFlags) {
pub fn set_stream_flags(&self, flags: StreamFlags) {
unsafe {
ffi::gst_stream_set_stream_flags(self.to_glib_none().0, flags.to_glib());
}
}
#[cfg(feature = "v1_10")]
fn set_stream_type(&self, stream_type: StreamType) {
pub fn set_stream_type(&self, stream_type: StreamType) {
unsafe {
ffi::gst_stream_set_stream_type(self.to_glib_none().0, stream_type.to_glib());
}
}
#[cfg(feature = "v1_10")]
fn set_tags<'a, P: Into<Option<&'a TagList>>>(&self, tags: P) {
pub fn set_tags<'a, P: Into<Option<&'a TagList>>>(&self, tags: P) {
let tags = tags.into();
let tags = tags.to_glib_none();
unsafe {
@ -140,3 +105,6 @@ impl<O: IsA<Stream>> StreamExt for O {
}
}
}
unsafe impl Send for Stream {}
unsafe impl Sync for Stream {}

View file

@ -1,11 +1,10 @@
// This file was generated by gir (cf27827) from gir-files (???)
// This file was generated by gir (651da6e) from gir-files (???)
// DO NOT EDIT
use Object;
#[cfg(feature = "v1_10")]
use Stream;
use ffi;
use glib::object::IsA;
use glib::translate::*;
use glib_ffi;
use gobject_ffi;
@ -30,57 +29,39 @@ impl StreamCollection {
from_glib_full(ffi::gst_stream_collection_new(upstream_id.0))
}
}
}
unsafe impl Send for StreamCollection {}
unsafe impl Sync for StreamCollection {}
pub trait StreamCollectionExt {
#[cfg(feature = "v1_10")]
fn add_stream(&self, stream: &Stream) -> bool;
#[cfg(feature = "v1_10")]
fn get_size(&self) -> u32;
#[cfg(feature = "v1_10")]
fn get_stream(&self, index: u32) -> Option<Stream>;
#[cfg(feature = "v1_10")]
fn get_upstream_id(&self) -> Option<String>;
//fn connect_stream_notify<Unsupported or ignored types>(&self, f: F) -> u64;
}
impl<O: IsA<StreamCollection>> StreamCollectionExt for O {
#[cfg(feature = "v1_10")]
fn add_stream(&self, stream: &Stream) -> bool {
pub fn add_stream(&self, stream: &Stream) -> bool {
unsafe {
from_glib(ffi::gst_stream_collection_add_stream(self.to_glib_none().0, stream.to_glib_full()))
}
}
#[cfg(feature = "v1_10")]
fn get_size(&self) -> u32 {
pub fn get_size(&self) -> u32 {
unsafe {
ffi::gst_stream_collection_get_size(self.to_glib_none().0)
}
}
#[cfg(feature = "v1_10")]
fn get_stream(&self, index: u32) -> Option<Stream> {
pub fn get_stream(&self, index: u32) -> Option<Stream> {
unsafe {
from_glib_none(ffi::gst_stream_collection_get_stream(self.to_glib_none().0, index))
}
}
#[cfg(feature = "v1_10")]
fn get_upstream_id(&self) -> Option<String> {
pub fn get_upstream_id(&self) -> Option<String> {
unsafe {
from_glib_none(ffi::gst_stream_collection_get_upstream_id(self.to_glib_none().0))
}
}
//fn connect_stream_notify<Unsupported or ignored types>(&self, f: F) -> u64 {
//pub fn connect_stream_notify<Unsupported or ignored types>(&self, f: F) -> u64 {
// Ignored p0: GObject.ParamSpec
//}
}
unsafe impl Send for StreamCollection {}
unsafe impl Sync for StreamCollection {}

View file

@ -1,4 +1,4 @@
// This file was generated by gir (cf27827) from gir-files (???)
// This file was generated by gir (651da6e) from gir-files (???)
// DO NOT EDIT
use Clock;

View file

@ -1,4 +1,4 @@
// This file was generated by gir (cf27827) from gir-files (???)
// This file was generated by gir (651da6e) from gir-files (???)
// DO NOT EDIT
use Element;

View file

@ -1,4 +1,4 @@
// This file was generated by gir (cf27827) from gir-files (???)
// This file was generated by gir (651da6e) from gir-files (???)
// DO NOT EDIT
use Element;

View file

@ -1,4 +1,4 @@
// This file was generated by gir (cf27827) from gir-files (???)
// This file was generated by gir (651da6e) from gir-files (???)
// DO NOT EDIT
use Error;