gstreamer_audio/auto/
flags.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
6use crate::ffi;
7use glib::{bitflags::bitflags, prelude::*, translate::*};
8
9bitflags! {
10    #[derive(Clone, Copy, Debug, PartialEq, Eq, Hash)]
11    #[doc(alias = "GstAudioFlags")]
12    pub struct AudioFlags: u32 {
13        #[doc(alias = "GST_AUDIO_FLAG_UNPOSITIONED")]
14        const UNPOSITIONED = ffi::GST_AUDIO_FLAG_UNPOSITIONED as _;
15    }
16}
17
18#[doc(hidden)]
19impl IntoGlib for AudioFlags {
20    type GlibType = ffi::GstAudioFlags;
21
22    #[inline]
23    fn into_glib(self) -> ffi::GstAudioFlags {
24        self.bits()
25    }
26}
27
28#[doc(hidden)]
29impl FromGlib<ffi::GstAudioFlags> for AudioFlags {
30    #[inline]
31    unsafe fn from_glib(value: ffi::GstAudioFlags) -> Self {
32        skip_assert_initialized!();
33        Self::from_bits_truncate(value)
34    }
35}
36
37impl StaticType for AudioFlags {
38    #[inline]
39    #[doc(alias = "gst_audio_flags_get_type")]
40    fn static_type() -> glib::Type {
41        unsafe { from_glib(ffi::gst_audio_flags_get_type()) }
42    }
43}
44
45impl glib::HasParamSpec for AudioFlags {
46    type ParamSpec = glib::ParamSpecFlags;
47    type SetValue = Self;
48    type BuilderFn = fn(&str) -> glib::ParamSpecFlagsBuilder<Self>;
49
50    fn param_spec_builder() -> Self::BuilderFn {
51        Self::ParamSpec::builder
52    }
53}
54
55impl glib::value::ValueType for AudioFlags {
56    type Type = Self;
57}
58
59unsafe impl<'a> glib::value::FromValue<'a> for AudioFlags {
60    type Checker = glib::value::GenericValueTypeChecker<Self>;
61
62    #[inline]
63    unsafe fn from_value(value: &'a glib::Value) -> Self {
64        skip_assert_initialized!();
65        from_glib(glib::gobject_ffi::g_value_get_flags(value.to_glib_none().0))
66    }
67}
68
69impl ToValue for AudioFlags {
70    #[inline]
71    fn to_value(&self) -> glib::Value {
72        let mut value = glib::Value::for_value_type::<Self>();
73        unsafe {
74            glib::gobject_ffi::g_value_set_flags(value.to_glib_none_mut().0, self.into_glib());
75        }
76        value
77    }
78
79    #[inline]
80    fn value_type(&self) -> glib::Type {
81        Self::static_type()
82    }
83}
84
85impl From<AudioFlags> for glib::Value {
86    #[inline]
87    fn from(v: AudioFlags) -> Self {
88        skip_assert_initialized!();
89        ToValue::to_value(&v)
90    }
91}
92
93bitflags! {
94    #[derive(Clone, Copy, Debug, PartialEq, Eq, Hash)]
95    #[doc(alias = "GstAudioFormatFlags")]
96    pub struct AudioFormatFlags: u32 {
97        #[doc(alias = "GST_AUDIO_FORMAT_FLAG_INTEGER")]
98        const INTEGER = ffi::GST_AUDIO_FORMAT_FLAG_INTEGER as _;
99        #[doc(alias = "GST_AUDIO_FORMAT_FLAG_FLOAT")]
100        const FLOAT = ffi::GST_AUDIO_FORMAT_FLAG_FLOAT as _;
101        #[doc(alias = "GST_AUDIO_FORMAT_FLAG_SIGNED")]
102        const SIGNED = ffi::GST_AUDIO_FORMAT_FLAG_SIGNED as _;
103        #[doc(alias = "GST_AUDIO_FORMAT_FLAG_COMPLEX")]
104        const COMPLEX = ffi::GST_AUDIO_FORMAT_FLAG_COMPLEX as _;
105        #[doc(alias = "GST_AUDIO_FORMAT_FLAG_UNPACK")]
106        const UNPACK = ffi::GST_AUDIO_FORMAT_FLAG_UNPACK as _;
107    }
108}
109
110#[doc(hidden)]
111impl IntoGlib for AudioFormatFlags {
112    type GlibType = ffi::GstAudioFormatFlags;
113
114    #[inline]
115    fn into_glib(self) -> ffi::GstAudioFormatFlags {
116        self.bits()
117    }
118}
119
120#[doc(hidden)]
121impl FromGlib<ffi::GstAudioFormatFlags> for AudioFormatFlags {
122    #[inline]
123    unsafe fn from_glib(value: ffi::GstAudioFormatFlags) -> Self {
124        skip_assert_initialized!();
125        Self::from_bits_truncate(value)
126    }
127}
128
129impl StaticType for AudioFormatFlags {
130    #[inline]
131    #[doc(alias = "gst_audio_format_flags_get_type")]
132    fn static_type() -> glib::Type {
133        unsafe { from_glib(ffi::gst_audio_format_flags_get_type()) }
134    }
135}
136
137impl glib::HasParamSpec for AudioFormatFlags {
138    type ParamSpec = glib::ParamSpecFlags;
139    type SetValue = Self;
140    type BuilderFn = fn(&str) -> glib::ParamSpecFlagsBuilder<Self>;
141
142    fn param_spec_builder() -> Self::BuilderFn {
143        Self::ParamSpec::builder
144    }
145}
146
147impl glib::value::ValueType for AudioFormatFlags {
148    type Type = Self;
149}
150
151unsafe impl<'a> glib::value::FromValue<'a> for AudioFormatFlags {
152    type Checker = glib::value::GenericValueTypeChecker<Self>;
153
154    #[inline]
155    unsafe fn from_value(value: &'a glib::Value) -> Self {
156        skip_assert_initialized!();
157        from_glib(glib::gobject_ffi::g_value_get_flags(value.to_glib_none().0))
158    }
159}
160
161impl ToValue for AudioFormatFlags {
162    #[inline]
163    fn to_value(&self) -> glib::Value {
164        let mut value = glib::Value::for_value_type::<Self>();
165        unsafe {
166            glib::gobject_ffi::g_value_set_flags(value.to_glib_none_mut().0, self.into_glib());
167        }
168        value
169    }
170
171    #[inline]
172    fn value_type(&self) -> glib::Type {
173        Self::static_type()
174    }
175}
176
177impl From<AudioFormatFlags> for glib::Value {
178    #[inline]
179    fn from(v: AudioFormatFlags) -> Self {
180        skip_assert_initialized!();
181        ToValue::to_value(&v)
182    }
183}
184
185bitflags! {
186    #[derive(Clone, Copy, Debug, PartialEq, Eq, Hash)]
187    #[doc(alias = "GstAudioPackFlags")]
188    pub struct AudioPackFlags: u32 {
189        #[doc(alias = "GST_AUDIO_PACK_FLAG_TRUNCATE_RANGE")]
190        const TRUNCATE_RANGE = ffi::GST_AUDIO_PACK_FLAG_TRUNCATE_RANGE as _;
191    }
192}
193
194#[doc(hidden)]
195impl IntoGlib for AudioPackFlags {
196    type GlibType = ffi::GstAudioPackFlags;
197
198    #[inline]
199    fn into_glib(self) -> ffi::GstAudioPackFlags {
200        self.bits()
201    }
202}
203
204#[doc(hidden)]
205impl FromGlib<ffi::GstAudioPackFlags> for AudioPackFlags {
206    #[inline]
207    unsafe fn from_glib(value: ffi::GstAudioPackFlags) -> Self {
208        skip_assert_initialized!();
209        Self::from_bits_truncate(value)
210    }
211}
212
213impl StaticType for AudioPackFlags {
214    #[inline]
215    #[doc(alias = "gst_audio_pack_flags_get_type")]
216    fn static_type() -> glib::Type {
217        unsafe { from_glib(ffi::gst_audio_pack_flags_get_type()) }
218    }
219}
220
221impl glib::HasParamSpec for AudioPackFlags {
222    type ParamSpec = glib::ParamSpecFlags;
223    type SetValue = Self;
224    type BuilderFn = fn(&str) -> glib::ParamSpecFlagsBuilder<Self>;
225
226    fn param_spec_builder() -> Self::BuilderFn {
227        Self::ParamSpec::builder
228    }
229}
230
231impl glib::value::ValueType for AudioPackFlags {
232    type Type = Self;
233}
234
235unsafe impl<'a> glib::value::FromValue<'a> for AudioPackFlags {
236    type Checker = glib::value::GenericValueTypeChecker<Self>;
237
238    #[inline]
239    unsafe fn from_value(value: &'a glib::Value) -> Self {
240        skip_assert_initialized!();
241        from_glib(glib::gobject_ffi::g_value_get_flags(value.to_glib_none().0))
242    }
243}
244
245impl ToValue for AudioPackFlags {
246    #[inline]
247    fn to_value(&self) -> glib::Value {
248        let mut value = glib::Value::for_value_type::<Self>();
249        unsafe {
250            glib::gobject_ffi::g_value_set_flags(value.to_glib_none_mut().0, self.into_glib());
251        }
252        value
253    }
254
255    #[inline]
256    fn value_type(&self) -> glib::Type {
257        Self::static_type()
258    }
259}
260
261impl From<AudioPackFlags> for glib::Value {
262    #[inline]
263    fn from(v: AudioPackFlags) -> Self {
264        skip_assert_initialized!();
265        ToValue::to_value(&v)
266    }
267}