gstreamer_validate/auto/
report.rs1use crate::{ffi, Issue, ReportLevel, Reporter, ReportingDetails};
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_message")]
34 pub fn add_message(&self, message: &str) {
35 unsafe {
36 ffi::gst_validate_report_add_message(self.to_glib_none().0, message.to_glib_none().0);
37 }
38 }
39
40 #[doc(alias = "gst_validate_report_add_repeated_report")]
41 pub fn add_repeated_report(&self, repeated_report: &Report) {
42 unsafe {
43 ffi::gst_validate_report_add_repeated_report(
44 self.to_glib_none().0,
45 repeated_report.to_glib_none().0,
46 );
47 }
48 }
49
50 #[doc(alias = "gst_validate_report_check_abort")]
51 pub fn check_abort(&self) -> bool {
52 unsafe { from_glib(ffi::gst_validate_report_check_abort(self.to_glib_none().0)) }
53 }
54
55 #[doc(alias = "gst_validate_report_get_dotfile_name")]
56 #[doc(alias = "get_dotfile_name")]
57 pub fn dotfile_name(&self) -> Option<glib::GString> {
58 unsafe {
59 from_glib_full(ffi::gst_validate_report_get_dotfile_name(
60 self.to_glib_none().0,
61 ))
62 }
63 }
64
65 #[doc(alias = "gst_validate_report_get_issue")]
66 #[doc(alias = "get_issue")]
67 pub fn issue(&self) -> Issue {
68 unsafe { from_glib_full(ffi::gst_validate_report_get_issue(self.to_glib_none().0)) }
69 }
70
71 #[doc(alias = "gst_validate_report_get_issue_id")]
72 #[doc(alias = "get_issue_id")]
73 pub fn issue_id(&self) -> u32 {
74 unsafe { ffi::gst_validate_report_get_issue_id(self.to_glib_none().0) }
75 }
76
77 #[doc(alias = "gst_validate_report_get_level")]
78 #[doc(alias = "get_level")]
79 pub fn level(&self) -> ReportLevel {
80 unsafe { from_glib(ffi::gst_validate_report_get_level(self.to_glib_none().0)) }
81 }
82
83 #[doc(alias = "gst_validate_report_get_message")]
84 #[doc(alias = "get_message")]
85 pub fn message(&self) -> glib::GString {
86 unsafe { from_glib_full(ffi::gst_validate_report_get_message(self.to_glib_none().0)) }
87 }
88
89 #[doc(alias = "gst_validate_report_get_reporter")]
90 #[doc(alias = "get_reporter")]
91 pub fn reporter(&self) -> Reporter {
92 unsafe { from_glib_full(ffi::gst_validate_report_get_reporter(self.to_glib_none().0)) }
93 }
94
95 #[doc(alias = "gst_validate_report_get_reporter_name")]
96 #[doc(alias = "get_reporter_name")]
97 pub fn reporter_name(&self) -> glib::GString {
98 unsafe {
99 from_glib_full(ffi::gst_validate_report_get_reporter_name(
100 self.to_glib_none().0,
101 ))
102 }
103 }
104
105 #[doc(alias = "gst_validate_report_get_reporting_level")]
106 #[doc(alias = "get_reporting_level")]
107 pub fn reporting_level(&self) -> ReportingDetails {
108 unsafe {
109 from_glib(ffi::gst_validate_report_get_reporting_level(
110 self.to_glib_none().0,
111 ))
112 }
113 }
114
115 #[doc(alias = "gst_validate_report_get_trace")]
122 #[doc(alias = "get_trace")]
123 pub fn trace(&self) -> Option<glib::GString> {
124 unsafe { from_glib_full(ffi::gst_validate_report_get_trace(self.to_glib_none().0)) }
125 }
126
127 #[doc(alias = "gst_validate_report_print_description")]
128 pub fn print_description(&self) {
129 unsafe {
130 ffi::gst_validate_report_print_description(self.to_glib_none().0);
131 }
132 }
133
134 #[doc(alias = "gst_validate_report_print_details")]
135 pub fn print_details(&self) {
136 unsafe {
137 ffi::gst_validate_report_print_details(self.to_glib_none().0);
138 }
139 }
140
141 #[doc(alias = "gst_validate_report_print_detected_on")]
142 pub fn print_detected_on(&self) {
143 unsafe {
144 ffi::gst_validate_report_print_detected_on(self.to_glib_none().0);
145 }
146 }
147
148 #[doc(alias = "gst_validate_report_print_level")]
149 pub fn print_level(&self) {
150 unsafe {
151 ffi::gst_validate_report_print_level(self.to_glib_none().0);
152 }
153 }
154
155 #[doc(alias = "gst_validate_report_printf")]
156 pub fn printf(&self) {
157 unsafe {
158 ffi::gst_validate_report_printf(self.to_glib_none().0);
159 }
160 }
161
162 #[doc(alias = "gst_validate_report_set_master_report")]
163 pub fn set_master_report(&self, master_report: &Report) -> bool {
164 unsafe {
165 from_glib(ffi::gst_validate_report_set_master_report(
166 self.to_glib_none().0,
167 master_report.to_glib_none().0,
168 ))
169 }
170 }
171
172 #[doc(alias = "gst_validate_report_set_reporting_level")]
173 pub fn set_reporting_level(&self, level: ReportingDetails) {
174 unsafe {
175 ffi::gst_validate_report_set_reporting_level(self.to_glib_none().0, level.into_glib());
176 }
177 }
178
179 #[doc(alias = "gst_validate_report_should_print")]
180 pub fn should_print(&self) -> bool {
181 unsafe { from_glib(ffi::gst_validate_report_should_print(self.to_glib_none().0)) }
182 }
183
184 #[doc(alias = "gst_validate_report_init")]
190 pub fn init() {
191 assert_initialized_main_thread!();
192 unsafe {
193 ffi::gst_validate_report_init();
194 }
195 }
196
197 }
202
203unsafe impl Send for Report {}
204unsafe impl Sync for Report {}