gstreamer_validate/auto/
report.rs1use crate::{Issue, ReportLevel, Reporter, ReportingDetails, ffi};
7use glib::{prelude::*, translate::*};
8
9glib::wrapper! {
10 #[derive(Debug, PartialEq, Eq, PartialOrd, Ord, Hash)]
11 pub struct Report(Shared<ffi::GstValidateReport>);
12
13 match fn {
14 ref => |ptr| ffi::gst_validate_report_ref(ptr),
15 unref => |ptr| ffi::gst_validate_report_unref(ptr),
16 type_ => || ffi::gst_validate_report_get_type(),
17 }
18}
19
20impl Report {
21 #[doc(alias = "gst_validate_report_new")]
22 pub fn new(issue: &mut Issue, reporter: &impl IsA<Reporter>, message: &str) -> Report {
23 skip_assert_initialized!();
24 unsafe {
25 from_glib_full(ffi::gst_validate_report_new(
26 issue.to_glib_none_mut().0,
27 reporter.as_ref().to_glib_none().0,
28 message.to_glib_none().0,
29 ))
30 }
31 }
32
33 #[doc(alias = "gst_validate_report_add_repeated_report")]
34 pub fn add_repeated_report(&self, repeated_report: &Report) {
35 unsafe {
36 ffi::gst_validate_report_add_repeated_report(
37 self.to_glib_none().0,
38 repeated_report.to_glib_none().0,
39 );
40 }
41 }
42
43 #[doc(alias = "gst_validate_report_check_abort")]
44 pub fn check_abort(&self) -> bool {
45 unsafe { from_glib(ffi::gst_validate_report_check_abort(self.to_glib_none().0)) }
46 }
47
48 #[doc(alias = "gst_validate_report_get_dotfile_name")]
53 #[doc(alias = "get_dotfile_name")]
54 pub fn dotfile_name(&self) -> Option<glib::GString> {
55 unsafe {
56 from_glib_full(ffi::gst_validate_report_get_dotfile_name(
57 self.to_glib_none().0,
58 ))
59 }
60 }
61
62 #[doc(alias = "gst_validate_report_get_issue")]
67 #[doc(alias = "get_issue")]
68 pub fn issue(&self) -> Issue {
69 unsafe { from_glib_full(ffi::gst_validate_report_get_issue(self.to_glib_none().0)) }
70 }
71
72 #[doc(alias = "gst_validate_report_get_issue_id")]
73 #[doc(alias = "get_issue_id")]
74 pub fn issue_id(&self) -> u32 {
75 unsafe { ffi::gst_validate_report_get_issue_id(self.to_glib_none().0) }
76 }
77
78 #[doc(alias = "gst_validate_report_get_level")]
83 #[doc(alias = "get_level")]
84 pub fn level(&self) -> ReportLevel {
85 unsafe { from_glib(ffi::gst_validate_report_get_level(self.to_glib_none().0)) }
86 }
87
88 #[doc(alias = "gst_validate_report_get_message")]
93 #[doc(alias = "get_message")]
94 pub fn message(&self) -> glib::GString {
95 unsafe { from_glib_full(ffi::gst_validate_report_get_message(self.to_glib_none().0)) }
96 }
97
98 #[doc(alias = "gst_validate_report_get_reporter")]
103 #[doc(alias = "get_reporter")]
104 pub fn reporter(&self) -> Reporter {
105 unsafe { from_glib_full(ffi::gst_validate_report_get_reporter(self.to_glib_none().0)) }
106 }
107
108 #[doc(alias = "gst_validate_report_get_reporter_name")]
113 #[doc(alias = "get_reporter_name")]
114 pub fn reporter_name(&self) -> glib::GString {
115 unsafe {
116 from_glib_full(ffi::gst_validate_report_get_reporter_name(
117 self.to_glib_none().0,
118 ))
119 }
120 }
121
122 #[doc(alias = "gst_validate_report_get_reporting_level")]
127 #[doc(alias = "get_reporting_level")]
128 pub fn reporting_level(&self) -> ReportingDetails {
129 unsafe {
130 from_glib(ffi::gst_validate_report_get_reporting_level(
131 self.to_glib_none().0,
132 ))
133 }
134 }
135
136 #[doc(alias = "gst_validate_report_get_trace")]
147 #[doc(alias = "get_trace")]
148 pub fn trace(&self) -> Option<glib::GString> {
149 unsafe { from_glib_full(ffi::gst_validate_report_get_trace(self.to_glib_none().0)) }
150 }
151
152 #[doc(alias = "gst_validate_report_print_description")]
153 pub fn print_description(&self) {
154 unsafe {
155 ffi::gst_validate_report_print_description(self.to_glib_none().0);
156 }
157 }
158
159 #[doc(alias = "gst_validate_report_print_details")]
160 pub fn print_details(&self) {
161 unsafe {
162 ffi::gst_validate_report_print_details(self.to_glib_none().0);
163 }
164 }
165
166 #[doc(alias = "gst_validate_report_print_detected_on")]
167 pub fn print_detected_on(&self) {
168 unsafe {
169 ffi::gst_validate_report_print_detected_on(self.to_glib_none().0);
170 }
171 }
172
173 #[doc(alias = "gst_validate_report_print_level")]
174 pub fn print_level(&self) {
175 unsafe {
176 ffi::gst_validate_report_print_level(self.to_glib_none().0);
177 }
178 }
179
180 #[doc(alias = "gst_validate_report_printf")]
181 pub fn printf(&self) {
182 unsafe {
183 ffi::gst_validate_report_printf(self.to_glib_none().0);
184 }
185 }
186
187 #[doc(alias = "gst_validate_report_set_master_report")]
188 pub fn set_master_report(&self, master_report: &Report) -> bool {
189 unsafe {
190 from_glib(ffi::gst_validate_report_set_master_report(
191 self.to_glib_none().0,
192 master_report.to_glib_none().0,
193 ))
194 }
195 }
196
197 #[doc(alias = "gst_validate_report_set_reporting_level")]
198 pub fn set_reporting_level(&self, level: ReportingDetails) {
199 unsafe {
200 ffi::gst_validate_report_set_reporting_level(self.to_glib_none().0, level.into_glib());
201 }
202 }
203
204 #[doc(alias = "gst_validate_report_should_print")]
205 pub fn should_print(&self) -> bool {
206 unsafe { from_glib(ffi::gst_validate_report_should_print(self.to_glib_none().0)) }
207 }
208
209 #[doc(alias = "gst_validate_report_init")]
215 pub fn init() {
216 assert_initialized_main_thread!();
217 unsafe {
218 ffi::gst_validate_report_init();
219 }
220 }
221
222 }
227
228unsafe impl Send for Report {}
229unsafe impl Sync for Report {}