gstreamer_gl_egl_sys/
lib.rs

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#![allow(non_camel_case_types, non_upper_case_globals, non_snake_case)]
7#![allow(
8    clippy::approx_constant,
9    clippy::type_complexity,
10    clippy::unreadable_literal,
11    clippy::upper_case_acronyms
12)]
13#![cfg_attr(docsrs, feature(doc_cfg))]
14
15use glib_sys as glib;
16use gstreamer_gl_sys as gst_gl;
17
18#[cfg(unix)]
19#[allow(unused_imports)]
20use libc::{dev_t, gid_t, pid_t, socklen_t, uid_t};
21#[allow(unused_imports)]
22use libc::{intptr_t, off_t, size_t, ssize_t, time_t, uintptr_t, FILE};
23#[allow(unused_imports)]
24use std::ffi::{
25    c_char, c_double, c_float, c_int, c_long, c_short, c_uchar, c_uint, c_ulong, c_ushort, c_void,
26};
27
28#[allow(unused_imports)]
29use glib::{gboolean, gconstpointer, gpointer, GType};
30
31// Constants
32pub const GST_GL_DISPLAY_EGL_NAME: &[u8] = b"gst.gl.display.egl\0";
33
34// Records
35#[derive(Copy, Clone)]
36#[repr(C)]
37pub struct GstGLDisplayEGLClass {
38    pub object_class: gst_gl::GstGLDisplayClass,
39    pub _padding: [gpointer; 4],
40}
41
42impl ::std::fmt::Debug for GstGLDisplayEGLClass {
43    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
44        f.debug_struct(&format!("GstGLDisplayEGLClass @ {self:p}"))
45            .field("object_class", &self.object_class)
46            .field("_padding", &self._padding)
47            .finish()
48    }
49}
50
51// Classes
52#[derive(Copy, Clone)]
53#[repr(C)]
54pub struct GstGLDisplayEGL {
55    pub parent: gst_gl::GstGLDisplay,
56    pub display: gpointer,
57    pub foreign_display: gboolean,
58    pub _padding: [gpointer; 4],
59}
60
61impl ::std::fmt::Debug for GstGLDisplayEGL {
62    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
63        f.debug_struct(&format!("GstGLDisplayEGL @ {self:p}"))
64            .field("parent", &self.parent)
65            .finish()
66    }
67}
68
69extern "C" {
70
71    //=========================================================================
72    // GstGLDisplayEGL
73    //=========================================================================
74    pub fn gst_gl_display_egl_get_type() -> GType;
75    pub fn gst_gl_display_egl_new() -> *mut GstGLDisplayEGL;
76    #[cfg(feature = "v1_24")]
77    #[cfg_attr(docsrs, doc(cfg(feature = "v1_24")))]
78    pub fn gst_gl_display_egl_new_surfaceless() -> *mut GstGLDisplayEGL;
79    pub fn gst_gl_display_egl_new_with_egl_display(display: gpointer) -> *mut GstGLDisplayEGL;
80    pub fn gst_gl_display_egl_from_gl_display(
81        display: *mut gst_gl::GstGLDisplay,
82    ) -> *mut GstGLDisplayEGL;
83    pub fn gst_gl_display_egl_get_from_native(
84        type_: gst_gl::GstGLDisplayType,
85        display: uintptr_t,
86    ) -> gpointer;
87    #[cfg(feature = "v1_26")]
88    #[cfg_attr(docsrs, doc(cfg(feature = "v1_26")))]
89    pub fn gst_gl_display_egl_set_foreign(display_egl: *mut GstGLDisplayEGL, foreign: gboolean);
90
91}