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(bits: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(val: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(val: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: 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(bits: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(val: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(val: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: 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(bits: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(val: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(val: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: 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}
268