gstreamer/
typefind_factory.rs

1// Take a look at the license at the top of the repository in the LICENSE file.
2
3use glib::translate::*;
4
5use crate::TypeFindFactory;
6
7impl TypeFindFactory {
8    /// Gets the list of all registered typefind factories. You must free the
9    /// list using `gst_plugin_feature_list_free()`.
10    ///
11    /// The returned factories are sorted by highest rank first, and then by
12    /// factory name.
13    ///
14    /// Free-function: gst_plugin_feature_list_free
15    ///
16    /// # Returns
17    ///
18    /// the list of all
19    ///  registered [`TypeFindFactory`][crate::TypeFindFactory].
20    #[doc(alias = "gst_type_find_factory_get_list")]
21    #[doc(alias = "get_list")]
22    pub fn factories() -> glib::List<TypeFindFactory> {
23        assert_initialized_main_thread!();
24        unsafe {
25            FromGlibPtrContainer::from_glib_full(crate::ffi::gst_type_find_factory_get_list())
26        }
27    }
28}