gstreamer_validate/auto/
reporter.rs1use crate::{ffi, Report, ReportingDetails, Runner};
7use glib::{prelude::*, translate::*};
8
9glib::wrapper! {
10 #[doc(alias = "GstValidateReporter")]
11 pub struct Reporter(Interface<ffi::GstValidateReporter, ffi::GstValidateReporterInterface>);
12
13 match fn {
14 type_ => || ffi::gst_validate_reporter_get_type(),
15 }
16}
17
18impl Reporter {
19 pub const NONE: Option<&'static Reporter> = None;
20}
21
22unsafe impl Send for Reporter {}
23unsafe impl Sync for Reporter {}
24
25mod sealed {
26 pub trait Sealed {}
27 impl<T: super::IsA<super::Reporter>> Sealed for T {}
28}
29
30pub trait ReporterExt: IsA<Reporter> + sealed::Sealed + 'static {
31 #[doc(alias = "gst_validate_reporter_get_name")]
32 #[doc(alias = "get_name")]
33 fn name(&self) -> Option<glib::GString> {
34 unsafe {
35 from_glib_none(ffi::gst_validate_reporter_get_name(
36 self.as_ref().to_glib_none().0,
37 ))
38 }
39 }
40
41 #[doc(alias = "gst_validate_reporter_get_pipeline")]
42 #[doc(alias = "get_pipeline")]
43 fn pipeline(&self) -> Option<gst::Pipeline> {
44 unsafe {
45 from_glib_full(ffi::gst_validate_reporter_get_pipeline(
46 self.as_ref().to_glib_none().0,
47 ))
48 }
49 }
50
51 #[doc(alias = "gst_validate_reporter_get_reporting_level")]
58 #[doc(alias = "get_reporting_level")]
59 fn reporting_level(&self) -> ReportingDetails {
60 unsafe {
61 from_glib(ffi::gst_validate_reporter_get_reporting_level(
62 self.as_ref().to_glib_none().0,
63 ))
64 }
65 }
66
67 #[doc(alias = "gst_validate_reporter_get_reports")]
68 #[doc(alias = "get_reports")]
69 fn reports(&self) -> Vec<Report> {
70 unsafe {
71 FromGlibPtrContainer::from_glib_full(ffi::gst_validate_reporter_get_reports(
72 self.as_ref().to_glib_none().0,
73 ))
74 }
75 }
76
77 #[doc(alias = "gst_validate_reporter_get_reports_count")]
78 #[doc(alias = "get_reports_count")]
79 fn reports_count(&self) -> i32 {
80 unsafe { ffi::gst_validate_reporter_get_reports_count(self.as_ref().to_glib_none().0) }
81 }
82
83 #[doc(alias = "gst_validate_reporter_get_runner")]
84 #[doc(alias = "get_runner")]
85 fn runner(&self) -> Option<Runner> {
86 unsafe {
87 from_glib_full(ffi::gst_validate_reporter_get_runner(
88 self.as_ref().to_glib_none().0,
89 ))
90 }
91 }
92
93 #[doc(alias = "gst_validate_reporter_init")]
94 fn init(&self, name: &str) {
95 unsafe {
96 ffi::gst_validate_reporter_init(self.as_ref().to_glib_none().0, name.to_glib_none().0);
97 }
98 }
99
100 #[doc(alias = "gst_validate_reporter_purge_reports")]
101 fn purge_reports(&self) {
102 unsafe {
103 ffi::gst_validate_reporter_purge_reports(self.as_ref().to_glib_none().0);
104 }
105 }
106
107 #[doc(alias = "gst_validate_reporter_set_handle_g_logs")]
113 fn set_handle_g_logs(&self) {
114 unsafe {
115 ffi::gst_validate_reporter_set_handle_g_logs(self.as_ref().to_glib_none().0);
116 }
117 }
118
119 #[doc(alias = "gst_validate_reporter_set_name")]
120 fn set_name(&self, name: Option<glib::GString>) {
121 unsafe {
122 ffi::gst_validate_reporter_set_name(
123 self.as_ref().to_glib_none().0,
124 name.into_glib_ptr(),
125 );
126 }
127 }
128
129 #[doc(alias = "gst_validate_reporter_set_runner")]
130 fn set_runner(&self, runner: &impl IsA<Runner>) {
131 unsafe {
132 ffi::gst_validate_reporter_set_runner(
133 self.as_ref().to_glib_none().0,
134 runner.as_ref().to_glib_none().0,
135 );
136 }
137 }
138
139 #[doc(alias = "validate-runner")]
140 fn validate_runner(&self) -> Option<Runner> {
141 ObjectExt::property(self.as_ref(), "validate-runner")
142 }
143}
144
145impl<O: IsA<Reporter>> ReporterExt for O {}