gstreamer_pbutils/auto/
discoverer_container_info.rs1use crate::{ffi, DiscovererStreamInfo};
7use glib::translate::*;
8
9glib::wrapper! {
10    #[doc(alias = "GstDiscovererContainerInfo")]
16    pub struct DiscovererContainerInfo(Object<ffi::GstDiscovererContainerInfo>) @extends DiscovererStreamInfo;
17
18    match fn {
19        type_ => || ffi::gst_discoverer_container_info_get_type(),
20    }
21}
22
23impl DiscovererContainerInfo {
24    #[doc(alias = "gst_discoverer_container_info_get_streams")]
31    #[doc(alias = "get_streams")]
32    pub fn streams(&self) -> Vec<DiscovererStreamInfo> {
33        unsafe {
34            FromGlibPtrContainer::from_glib_full(ffi::gst_discoverer_container_info_get_streams(
35                self.to_glib_none().0,
36            ))
37        }
38    }
39
40    #[cfg(feature = "v1_20")]
46    #[cfg_attr(docsrs, doc(cfg(feature = "v1_20")))]
47    #[doc(alias = "gst_discoverer_container_info_get_tags")]
48    #[doc(alias = "get_tags")]
49    pub fn tags(&self) -> Option<gst::TagList> {
50        unsafe {
51            from_glib_none(ffi::gst_discoverer_container_info_get_tags(
52                self.to_glib_none().0,
53            ))
54        }
55    }
56}
57
58unsafe impl Send for DiscovererContainerInfo {}
59unsafe impl Sync for DiscovererContainerInfo {}