gstreamer_validate/auto/
reporter.rs
1use crate::{ffi, Report, ReportingDetails, Runner};
7use glib::{prelude::*, translate::*};
8
9glib::wrapper! {
10 #[doc(alias = "GstValidateReporter")]
22 pub struct Reporter(Interface<ffi::GstValidateReporter, ffi::GstValidateReporterInterface>);
23
24 match fn {
25 type_ => || ffi::gst_validate_reporter_get_type(),
26 }
27}
28
29impl Reporter {
30 pub const NONE: Option<&'static Reporter> = None;
31}
32
33unsafe impl Send for Reporter {}
34unsafe impl Sync for Reporter {}
35
36mod sealed {
37 pub trait Sealed {}
38 impl<T: super::IsA<super::Reporter>> Sealed for T {}
39}
40
41pub trait ReporterExt: IsA<Reporter> + sealed::Sealed + 'static {
47 #[doc(alias = "gst_validate_reporter_get_name")]
53 #[doc(alias = "get_name")]
54 fn name(&self) -> Option<glib::GString> {
55 unsafe {
56 from_glib_none(ffi::gst_validate_reporter_get_name(
57 self.as_ref().to_glib_none().0,
58 ))
59 }
60 }
61
62 #[doc(alias = "gst_validate_reporter_get_pipeline")]
67 #[doc(alias = "get_pipeline")]
68 fn pipeline(&self) -> Option<gst::Pipeline> {
69 unsafe {
70 from_glib_full(ffi::gst_validate_reporter_get_pipeline(
71 self.as_ref().to_glib_none().0,
72 ))
73 }
74 }
75
76 #[doc(alias = "gst_validate_reporter_get_reporting_level")]
83 #[doc(alias = "get_reporting_level")]
84 fn reporting_level(&self) -> ReportingDetails {
85 unsafe {
86 from_glib(ffi::gst_validate_reporter_get_reporting_level(
87 self.as_ref().to_glib_none().0,
88 ))
89 }
90 }
91
92 #[doc(alias = "gst_validate_reporter_get_reports")]
100 #[doc(alias = "get_reports")]
101 fn reports(&self) -> Vec<Report> {
102 unsafe {
103 FromGlibPtrContainer::from_glib_full(ffi::gst_validate_reporter_get_reports(
104 self.as_ref().to_glib_none().0,
105 ))
106 }
107 }
108
109 #[doc(alias = "gst_validate_reporter_get_reports_count")]
115 #[doc(alias = "get_reports_count")]
116 fn reports_count(&self) -> i32 {
117 unsafe { ffi::gst_validate_reporter_get_reports_count(self.as_ref().to_glib_none().0) }
118 }
119
120 #[doc(alias = "gst_validate_reporter_get_runner")]
125 #[doc(alias = "get_runner")]
126 fn runner(&self) -> Option<Runner> {
127 unsafe {
128 from_glib_full(ffi::gst_validate_reporter_get_runner(
129 self.as_ref().to_glib_none().0,
130 ))
131 }
132 }
133
134 #[doc(alias = "gst_validate_reporter_init")]
135 fn init(&self, name: &str) {
136 unsafe {
137 ffi::gst_validate_reporter_init(self.as_ref().to_glib_none().0, name.to_glib_none().0);
138 }
139 }
140
141 #[doc(alias = "gst_validate_reporter_purge_reports")]
144 fn purge_reports(&self) {
145 unsafe {
146 ffi::gst_validate_reporter_purge_reports(self.as_ref().to_glib_none().0);
147 }
148 }
149
150 #[doc(alias = "gst_validate_reporter_set_handle_g_logs")]
163 fn set_handle_g_logs(&self) {
164 unsafe {
165 ffi::gst_validate_reporter_set_handle_g_logs(self.as_ref().to_glib_none().0);
166 }
167 }
168
169 #[doc(alias = "gst_validate_reporter_set_name")]
173 fn set_name(&self, name: Option<glib::GString>) {
174 unsafe {
175 ffi::gst_validate_reporter_set_name(
176 self.as_ref().to_glib_none().0,
177 name.into_glib_ptr(),
178 );
179 }
180 }
181
182 #[doc(alias = "gst_validate_reporter_set_runner")]
183 fn set_runner(&self, runner: &impl IsA<Runner>) {
184 unsafe {
185 ffi::gst_validate_reporter_set_runner(
186 self.as_ref().to_glib_none().0,
187 runner.as_ref().to_glib_none().0,
188 );
189 }
190 }
191
192 #[doc(alias = "validate-runner")]
193 fn validate_runner(&self) -> Option<Runner> {
194 ObjectExt::property(self.as_ref(), "validate-runner")
195 }
196}
197
198impl<O: IsA<Reporter>> ReporterExt for O {}