gstreamer_validate/auto/
flags.rs1use crate::ffi;
7use glib::{bitflags::bitflags, prelude::*, translate::*};
8
9bitflags! {
10 #[derive(Clone, Copy, Debug, PartialEq, Eq, Hash)]
11 #[doc(alias = "GstValidateActionTypeFlags")]
12 pub struct ActionTypeFlags: u32 {
13 #[doc(alias = "GST_VALIDATE_ACTION_TYPE_NONE")]
15 const NONE = ffi::GST_VALIDATE_ACTION_TYPE_NONE as _;
16 #[doc(alias = "GST_VALIDATE_ACTION_TYPE_CONFIG")]
18 const CONFIG = ffi::GST_VALIDATE_ACTION_TYPE_CONFIG as _;
19 #[doc(alias = "GST_VALIDATE_ACTION_TYPE_ASYNC")]
21 const ASYNC = ffi::GST_VALIDATE_ACTION_TYPE_ASYNC as _;
22 #[doc(alias = "GST_VALIDATE_ACTION_TYPE_NON_BLOCKING")]
25 const NON_BLOCKING = ffi::GST_VALIDATE_ACTION_TYPE_NON_BLOCKING as _;
26 #[doc(alias = "GST_VALIDATE_ACTION_TYPE_INTERLACED")]
27 const INTERLACED = ffi::GST_VALIDATE_ACTION_TYPE_INTERLACED as _;
28 #[doc(alias = "GST_VALIDATE_ACTION_TYPE_CAN_EXECUTE_ON_ADDITION")]
32 const CAN_EXECUTE_ON_ADDITION = ffi::GST_VALIDATE_ACTION_TYPE_CAN_EXECUTE_ON_ADDITION as _;
33 #[doc(alias = "GST_VALIDATE_ACTION_TYPE_NEEDS_CLOCK")]
36 const NEEDS_CLOCK = ffi::GST_VALIDATE_ACTION_TYPE_NEEDS_CLOCK as _;
37 #[doc(alias = "GST_VALIDATE_ACTION_TYPE_NO_EXECUTION_NOT_FATAL")]
40 const NO_EXECUTION_NOT_FATAL = ffi::GST_VALIDATE_ACTION_TYPE_NO_EXECUTION_NOT_FATAL as _;
41 #[doc(alias = "GST_VALIDATE_ACTION_TYPE_CAN_BE_OPTIONAL")]
45 const CAN_BE_OPTIONAL = ffi::GST_VALIDATE_ACTION_TYPE_CAN_BE_OPTIONAL as _;
46 #[doc(alias = "GST_VALIDATE_ACTION_TYPE_DOESNT_NEED_PIPELINE")]
47 const DOESNT_NEED_PIPELINE = ffi::GST_VALIDATE_ACTION_TYPE_DOESNT_NEED_PIPELINE as _;
48 #[doc(alias = "GST_VALIDATE_ACTION_TYPE_HANDLED_IN_CONFIG")]
51 const HANDLED_IN_CONFIG = ffi::GST_VALIDATE_ACTION_TYPE_HANDLED_IN_CONFIG as _;
52 #[doc(alias = "GST_VALIDATE_ACTION_TYPE_CHECK")]
57 const CHECK = ffi::GST_VALIDATE_ACTION_TYPE_CHECK as _;
58 }
59}
60
61#[doc(hidden)]
62impl IntoGlib for ActionTypeFlags {
63 type GlibType = ffi::GstValidateActionTypeFlags;
64
65 #[inline]
66 fn into_glib(self) -> ffi::GstValidateActionTypeFlags {
67 self.bits()
68 }
69}
70
71#[doc(hidden)]
72impl FromGlib<ffi::GstValidateActionTypeFlags> for ActionTypeFlags {
73 #[inline]
74 unsafe fn from_glib(value: ffi::GstValidateActionTypeFlags) -> Self {
75 skip_assert_initialized!();
76 Self::from_bits_truncate(value)
77 }
78}
79
80impl StaticType for ActionTypeFlags {
81 #[inline]
82 #[doc(alias = "gst_validate_action_type_flags_get_type")]
83 fn static_type() -> glib::Type {
84 unsafe { from_glib(ffi::gst_validate_action_type_flags_get_type()) }
85 }
86}
87
88impl glib::HasParamSpec for ActionTypeFlags {
89 type ParamSpec = glib::ParamSpecFlags;
90 type SetValue = Self;
91 type BuilderFn = fn(&str) -> glib::ParamSpecFlagsBuilder<Self>;
92
93 fn param_spec_builder() -> Self::BuilderFn {
94 Self::ParamSpec::builder
95 }
96}
97
98impl glib::value::ValueType for ActionTypeFlags {
99 type Type = Self;
100}
101
102unsafe impl<'a> glib::value::FromValue<'a> for ActionTypeFlags {
103 type Checker = glib::value::GenericValueTypeChecker<Self>;
104
105 #[inline]
106 unsafe fn from_value(value: &'a glib::Value) -> Self {
107 skip_assert_initialized!();
108 from_glib(glib::gobject_ffi::g_value_get_flags(value.to_glib_none().0))
109 }
110}
111
112impl ToValue for ActionTypeFlags {
113 #[inline]
114 fn to_value(&self) -> glib::Value {
115 let mut value = glib::Value::for_value_type::<Self>();
116 unsafe {
117 glib::gobject_ffi::g_value_set_flags(value.to_glib_none_mut().0, self.into_glib());
118 }
119 value
120 }
121
122 #[inline]
123 fn value_type(&self) -> glib::Type {
124 Self::static_type()
125 }
126}
127
128impl From<ActionTypeFlags> for glib::Value {
129 #[inline]
130 fn from(v: ActionTypeFlags) -> Self {
131 skip_assert_initialized!();
132 ToValue::to_value(&v)
133 }
134}
135
136bitflags! {
137 #[derive(Clone, Copy, Debug, PartialEq, Eq, Hash)]
141 #[doc(alias = "GstValidateIssueFlags")]
142 pub struct IssueFlags: u32 {
143 #[doc(alias = "GST_VALIDATE_ISSUE_FLAGS_NONE")]
144 const NONE = ffi::GST_VALIDATE_ISSUE_FLAGS_NONE as _;
145 #[doc(alias = "GST_VALIDATE_ISSUE_FLAGS_FULL_DETAILS")]
146 const FULL_DETAILS = ffi::GST_VALIDATE_ISSUE_FLAGS_FULL_DETAILS as _;
147 #[doc(alias = "GST_VALIDATE_ISSUE_FLAGS_NO_BACKTRACE")]
148 const NO_BACKTRACE = ffi::GST_VALIDATE_ISSUE_FLAGS_NO_BACKTRACE as _;
149 #[doc(alias = "GST_VALIDATE_ISSUE_FLAGS_FORCE_BACKTRACE")]
151 const FORCE_BACKTRACE = ffi::GST_VALIDATE_ISSUE_FLAGS_FORCE_BACKTRACE as _;
152 }
153}
154
155#[doc(hidden)]
156impl IntoGlib for IssueFlags {
157 type GlibType = ffi::GstValidateIssueFlags;
158
159 #[inline]
160 fn into_glib(self) -> ffi::GstValidateIssueFlags {
161 self.bits()
162 }
163}
164
165#[doc(hidden)]
166impl FromGlib<ffi::GstValidateIssueFlags> for IssueFlags {
167 #[inline]
168 unsafe fn from_glib(value: ffi::GstValidateIssueFlags) -> Self {
169 skip_assert_initialized!();
170 Self::from_bits_truncate(value)
171 }
172}
173
174impl StaticType for IssueFlags {
175 #[inline]
176 #[doc(alias = "gst_validate_issue_flags_get_type")]
177 fn static_type() -> glib::Type {
178 unsafe { from_glib(ffi::gst_validate_issue_flags_get_type()) }
179 }
180}
181
182impl glib::HasParamSpec for IssueFlags {
183 type ParamSpec = glib::ParamSpecFlags;
184 type SetValue = Self;
185 type BuilderFn = fn(&str) -> glib::ParamSpecFlagsBuilder<Self>;
186
187 fn param_spec_builder() -> Self::BuilderFn {
188 Self::ParamSpec::builder
189 }
190}
191
192impl glib::value::ValueType for IssueFlags {
193 type Type = Self;
194}
195
196unsafe impl<'a> glib::value::FromValue<'a> for IssueFlags {
197 type Checker = glib::value::GenericValueTypeChecker<Self>;
198
199 #[inline]
200 unsafe fn from_value(value: &'a glib::Value) -> Self {
201 skip_assert_initialized!();
202 from_glib(glib::gobject_ffi::g_value_get_flags(value.to_glib_none().0))
203 }
204}
205
206impl ToValue for IssueFlags {
207 #[inline]
208 fn to_value(&self) -> glib::Value {
209 let mut value = glib::Value::for_value_type::<Self>();
210 unsafe {
211 glib::gobject_ffi::g_value_set_flags(value.to_glib_none_mut().0, self.into_glib());
212 }
213 value
214 }
215
216 #[inline]
217 fn value_type(&self) -> glib::Type {
218 Self::static_type()
219 }
220}
221
222impl From<IssueFlags> for glib::Value {
223 #[inline]
224 fn from(v: IssueFlags) -> Self {
225 skip_assert_initialized!();
226 ToValue::to_value(&v)
227 }
228}