1 | // This file was generated by gir (https://github.com/gtk-rs/gir) |
2 | // from gir-files (https://github.com/gtk-rs/gir-files) |
3 | // from gst-gir-files (https://gitlab.freedesktop.org/gstreamer/gir-files-rs.git) |
4 | // DO NOT EDIT |
5 | |
6 | use crate::{ffi, GLContext}; |
7 | use glib::{prelude::*, translate::*}; |
8 | |
9 | glib::wrapper! { |
10 | #[doc (alias = "GstGLColorConvert" )] |
11 | pub struct GLColorConvert(Object<ffi::GstGLColorConvert, ffi::GstGLColorConvertClass>) @extends gst::Object; |
12 | |
13 | match fn { |
14 | type_ => || ffi::gst_gl_color_convert_get_type(), |
15 | } |
16 | } |
17 | |
18 | impl GLColorConvert { |
19 | #[doc (alias = "gst_gl_color_convert_new" )] |
20 | pub fn new(context: &impl IsA<GLContext>) -> GLColorConvert { |
21 | skip_assert_initialized!(); |
22 | unsafe { |
23 | from_glib_full(ffi::gst_gl_color_convert_new( |
24 | context.as_ref().to_glib_none().0, |
25 | )) |
26 | } |
27 | } |
28 | |
29 | #[doc (alias = "gst_gl_color_convert_set_caps" )] |
30 | pub fn set_caps( |
31 | &self, |
32 | in_caps: &gst::Caps, |
33 | out_caps: &gst::Caps, |
34 | ) -> Result<(), glib::error::BoolError> { |
35 | unsafe { |
36 | glib::result_from_gboolean!( |
37 | ffi::gst_gl_color_convert_set_caps( |
38 | self.to_glib_none().0, |
39 | in_caps.to_glib_none().0, |
40 | out_caps.to_glib_none().0 |
41 | ), |
42 | "Failed to set caps" |
43 | ) |
44 | } |
45 | } |
46 | |
47 | #[cfg (feature = "v1_24" )] |
48 | #[cfg_attr (docsrs, doc(cfg(feature = "v1_24" )))] |
49 | #[doc (alias = "gst_gl_color_convert_swizzle_shader_string" )] |
50 | pub fn swizzle_shader_string(context: &impl IsA<GLContext>) -> glib::GString { |
51 | skip_assert_initialized!(); |
52 | unsafe { |
53 | from_glib_full(ffi::gst_gl_color_convert_swizzle_shader_string( |
54 | context.as_ref().to_glib_none().0, |
55 | )) |
56 | } |
57 | } |
58 | |
59 | #[doc (alias = "gst_gl_color_convert_transform_caps" )] |
60 | pub fn transform_caps( |
61 | context: &impl IsA<GLContext>, |
62 | direction: gst::PadDirection, |
63 | caps: &gst::Caps, |
64 | filter: &gst::Caps, |
65 | ) -> gst::Caps { |
66 | skip_assert_initialized!(); |
67 | unsafe { |
68 | from_glib_full(ffi::gst_gl_color_convert_transform_caps( |
69 | context.as_ref().to_glib_none().0, |
70 | direction.into_glib(), |
71 | caps.to_glib_none().0, |
72 | filter.to_glib_none().0, |
73 | )) |
74 | } |
75 | } |
76 | |
77 | #[cfg (feature = "v1_24" )] |
78 | #[cfg_attr (docsrs, doc(cfg(feature = "v1_24" )))] |
79 | #[doc (alias = "gst_gl_color_convert_yuv_to_rgb_shader_string" )] |
80 | pub fn yuv_to_rgb_shader_string(context: &impl IsA<GLContext>) -> glib::GString { |
81 | skip_assert_initialized!(); |
82 | unsafe { |
83 | from_glib_full(ffi::gst_gl_color_convert_yuv_to_rgb_shader_string( |
84 | context.as_ref().to_glib_none().0, |
85 | )) |
86 | } |
87 | } |
88 | } |
89 | |
90 | unsafe impl Send for GLColorConvert {} |
91 | unsafe impl Sync for GLColorConvert {} |
92 | |