1 #![allow(unused_imports)]
2 use super::*;
3 use wasm_bindgen::prelude::*;
4 #[wasm_bindgen]
5 extern "C" {
6     # [wasm_bindgen (extends = :: js_sys :: Object , js_name = RTCMediaStreamTrackStats)]
7     #[derive(Debug, Clone, PartialEq, Eq)]
8     #[doc = "The `RtcMediaStreamTrackStats` dictionary."]
9     #[doc = ""]
10     #[doc = "*This API requires the following crate features to be activated: `RtcMediaStreamTrackStats`*"]
11     pub type RtcMediaStreamTrackStats;
12 }
13 impl RtcMediaStreamTrackStats {
14     #[doc = "Construct a new `RtcMediaStreamTrackStats`."]
15     #[doc = ""]
16     #[doc = "*This API requires the following crate features to be activated: `RtcMediaStreamTrackStats`*"]
new() -> Self17     pub fn new() -> Self {
18         #[allow(unused_mut)]
19         let mut ret: Self = ::wasm_bindgen::JsCast::unchecked_into(::js_sys::Object::new());
20         ret
21     }
22     #[doc = "Change the `id` field of this object."]
23     #[doc = ""]
24     #[doc = "*This API requires the following crate features to be activated: `RtcMediaStreamTrackStats`*"]
id(&mut self, val: &str) -> &mut Self25     pub fn id(&mut self, val: &str) -> &mut Self {
26         use wasm_bindgen::JsValue;
27         let r = ::js_sys::Reflect::set(self.as_ref(), &JsValue::from("id"), &JsValue::from(val));
28         debug_assert!(
29             r.is_ok(),
30             "setting properties should never fail on our dictionary objects"
31         );
32         let _ = r;
33         self
34     }
35     #[doc = "Change the `timestamp` field of this object."]
36     #[doc = ""]
37     #[doc = "*This API requires the following crate features to be activated: `RtcMediaStreamTrackStats`*"]
timestamp(&mut self, val: f64) -> &mut Self38     pub fn timestamp(&mut self, val: f64) -> &mut Self {
39         use wasm_bindgen::JsValue;
40         let r = ::js_sys::Reflect::set(
41             self.as_ref(),
42             &JsValue::from("timestamp"),
43             &JsValue::from(val),
44         );
45         debug_assert!(
46             r.is_ok(),
47             "setting properties should never fail on our dictionary objects"
48         );
49         let _ = r;
50         self
51     }
52     #[cfg(feature = "RtcStatsType")]
53     #[doc = "Change the `type` field of this object."]
54     #[doc = ""]
55     #[doc = "*This API requires the following crate features to be activated: `RtcMediaStreamTrackStats`, `RtcStatsType`*"]
type_(&mut self, val: RtcStatsType) -> &mut Self56     pub fn type_(&mut self, val: RtcStatsType) -> &mut Self {
57         use wasm_bindgen::JsValue;
58         let r = ::js_sys::Reflect::set(self.as_ref(), &JsValue::from("type"), &JsValue::from(val));
59         debug_assert!(
60             r.is_ok(),
61             "setting properties should never fail on our dictionary objects"
62         );
63         let _ = r;
64         self
65     }
66     #[doc = "Change the `audioLevel` field of this object."]
67     #[doc = ""]
68     #[doc = "*This API requires the following crate features to be activated: `RtcMediaStreamTrackStats`*"]
audio_level(&mut self, val: f64) -> &mut Self69     pub fn audio_level(&mut self, val: f64) -> &mut Self {
70         use wasm_bindgen::JsValue;
71         let r = ::js_sys::Reflect::set(
72             self.as_ref(),
73             &JsValue::from("audioLevel"),
74             &JsValue::from(val),
75         );
76         debug_assert!(
77             r.is_ok(),
78             "setting properties should never fail on our dictionary objects"
79         );
80         let _ = r;
81         self
82     }
83     #[doc = "Change the `echoReturnLoss` field of this object."]
84     #[doc = ""]
85     #[doc = "*This API requires the following crate features to be activated: `RtcMediaStreamTrackStats`*"]
echo_return_loss(&mut self, val: f64) -> &mut Self86     pub fn echo_return_loss(&mut self, val: f64) -> &mut Self {
87         use wasm_bindgen::JsValue;
88         let r = ::js_sys::Reflect::set(
89             self.as_ref(),
90             &JsValue::from("echoReturnLoss"),
91             &JsValue::from(val),
92         );
93         debug_assert!(
94             r.is_ok(),
95             "setting properties should never fail on our dictionary objects"
96         );
97         let _ = r;
98         self
99     }
100     #[doc = "Change the `echoReturnLossEnhancement` field of this object."]
101     #[doc = ""]
102     #[doc = "*This API requires the following crate features to be activated: `RtcMediaStreamTrackStats`*"]
echo_return_loss_enhancement(&mut self, val: f64) -> &mut Self103     pub fn echo_return_loss_enhancement(&mut self, val: f64) -> &mut Self {
104         use wasm_bindgen::JsValue;
105         let r = ::js_sys::Reflect::set(
106             self.as_ref(),
107             &JsValue::from("echoReturnLossEnhancement"),
108             &JsValue::from(val),
109         );
110         debug_assert!(
111             r.is_ok(),
112             "setting properties should never fail on our dictionary objects"
113         );
114         let _ = r;
115         self
116     }
117     #[doc = "Change the `frameHeight` field of this object."]
118     #[doc = ""]
119     #[doc = "*This API requires the following crate features to be activated: `RtcMediaStreamTrackStats`*"]
frame_height(&mut self, val: u32) -> &mut Self120     pub fn frame_height(&mut self, val: u32) -> &mut Self {
121         use wasm_bindgen::JsValue;
122         let r = ::js_sys::Reflect::set(
123             self.as_ref(),
124             &JsValue::from("frameHeight"),
125             &JsValue::from(val),
126         );
127         debug_assert!(
128             r.is_ok(),
129             "setting properties should never fail on our dictionary objects"
130         );
131         let _ = r;
132         self
133     }
134     #[doc = "Change the `frameWidth` field of this object."]
135     #[doc = ""]
136     #[doc = "*This API requires the following crate features to be activated: `RtcMediaStreamTrackStats`*"]
frame_width(&mut self, val: u32) -> &mut Self137     pub fn frame_width(&mut self, val: u32) -> &mut Self {
138         use wasm_bindgen::JsValue;
139         let r = ::js_sys::Reflect::set(
140             self.as_ref(),
141             &JsValue::from("frameWidth"),
142             &JsValue::from(val),
143         );
144         debug_assert!(
145             r.is_ok(),
146             "setting properties should never fail on our dictionary objects"
147         );
148         let _ = r;
149         self
150     }
151     #[doc = "Change the `framesCorrupted` field of this object."]
152     #[doc = ""]
153     #[doc = "*This API requires the following crate features to be activated: `RtcMediaStreamTrackStats`*"]
frames_corrupted(&mut self, val: u32) -> &mut Self154     pub fn frames_corrupted(&mut self, val: u32) -> &mut Self {
155         use wasm_bindgen::JsValue;
156         let r = ::js_sys::Reflect::set(
157             self.as_ref(),
158             &JsValue::from("framesCorrupted"),
159             &JsValue::from(val),
160         );
161         debug_assert!(
162             r.is_ok(),
163             "setting properties should never fail on our dictionary objects"
164         );
165         let _ = r;
166         self
167     }
168     #[doc = "Change the `framesDecoded` field of this object."]
169     #[doc = ""]
170     #[doc = "*This API requires the following crate features to be activated: `RtcMediaStreamTrackStats`*"]
frames_decoded(&mut self, val: u32) -> &mut Self171     pub fn frames_decoded(&mut self, val: u32) -> &mut Self {
172         use wasm_bindgen::JsValue;
173         let r = ::js_sys::Reflect::set(
174             self.as_ref(),
175             &JsValue::from("framesDecoded"),
176             &JsValue::from(val),
177         );
178         debug_assert!(
179             r.is_ok(),
180             "setting properties should never fail on our dictionary objects"
181         );
182         let _ = r;
183         self
184     }
185     #[doc = "Change the `framesDropped` field of this object."]
186     #[doc = ""]
187     #[doc = "*This API requires the following crate features to be activated: `RtcMediaStreamTrackStats`*"]
frames_dropped(&mut self, val: u32) -> &mut Self188     pub fn frames_dropped(&mut self, val: u32) -> &mut Self {
189         use wasm_bindgen::JsValue;
190         let r = ::js_sys::Reflect::set(
191             self.as_ref(),
192             &JsValue::from("framesDropped"),
193             &JsValue::from(val),
194         );
195         debug_assert!(
196             r.is_ok(),
197             "setting properties should never fail on our dictionary objects"
198         );
199         let _ = r;
200         self
201     }
202     #[doc = "Change the `framesPerSecond` field of this object."]
203     #[doc = ""]
204     #[doc = "*This API requires the following crate features to be activated: `RtcMediaStreamTrackStats`*"]
frames_per_second(&mut self, val: f64) -> &mut Self205     pub fn frames_per_second(&mut self, val: f64) -> &mut Self {
206         use wasm_bindgen::JsValue;
207         let r = ::js_sys::Reflect::set(
208             self.as_ref(),
209             &JsValue::from("framesPerSecond"),
210             &JsValue::from(val),
211         );
212         debug_assert!(
213             r.is_ok(),
214             "setting properties should never fail on our dictionary objects"
215         );
216         let _ = r;
217         self
218     }
219     #[doc = "Change the `framesReceived` field of this object."]
220     #[doc = ""]
221     #[doc = "*This API requires the following crate features to be activated: `RtcMediaStreamTrackStats`*"]
frames_received(&mut self, val: u32) -> &mut Self222     pub fn frames_received(&mut self, val: u32) -> &mut Self {
223         use wasm_bindgen::JsValue;
224         let r = ::js_sys::Reflect::set(
225             self.as_ref(),
226             &JsValue::from("framesReceived"),
227             &JsValue::from(val),
228         );
229         debug_assert!(
230             r.is_ok(),
231             "setting properties should never fail on our dictionary objects"
232         );
233         let _ = r;
234         self
235     }
236     #[doc = "Change the `framesSent` field of this object."]
237     #[doc = ""]
238     #[doc = "*This API requires the following crate features to be activated: `RtcMediaStreamTrackStats`*"]
frames_sent(&mut self, val: u32) -> &mut Self239     pub fn frames_sent(&mut self, val: u32) -> &mut Self {
240         use wasm_bindgen::JsValue;
241         let r = ::js_sys::Reflect::set(
242             self.as_ref(),
243             &JsValue::from("framesSent"),
244             &JsValue::from(val),
245         );
246         debug_assert!(
247             r.is_ok(),
248             "setting properties should never fail on our dictionary objects"
249         );
250         let _ = r;
251         self
252     }
253     #[doc = "Change the `remoteSource` field of this object."]
254     #[doc = ""]
255     #[doc = "*This API requires the following crate features to be activated: `RtcMediaStreamTrackStats`*"]
remote_source(&mut self, val: bool) -> &mut Self256     pub fn remote_source(&mut self, val: bool) -> &mut Self {
257         use wasm_bindgen::JsValue;
258         let r = ::js_sys::Reflect::set(
259             self.as_ref(),
260             &JsValue::from("remoteSource"),
261             &JsValue::from(val),
262         );
263         debug_assert!(
264             r.is_ok(),
265             "setting properties should never fail on our dictionary objects"
266         );
267         let _ = r;
268         self
269     }
270     #[doc = "Change the `ssrcIds` field of this object."]
271     #[doc = ""]
272     #[doc = "*This API requires the following crate features to be activated: `RtcMediaStreamTrackStats`*"]
ssrc_ids(&mut self, val: &::wasm_bindgen::JsValue) -> &mut Self273     pub fn ssrc_ids(&mut self, val: &::wasm_bindgen::JsValue) -> &mut Self {
274         use wasm_bindgen::JsValue;
275         let r = ::js_sys::Reflect::set(
276             self.as_ref(),
277             &JsValue::from("ssrcIds"),
278             &JsValue::from(val),
279         );
280         debug_assert!(
281             r.is_ok(),
282             "setting properties should never fail on our dictionary objects"
283         );
284         let _ = r;
285         self
286     }
287     #[doc = "Change the `trackIdentifier` field of this object."]
288     #[doc = ""]
289     #[doc = "*This API requires the following crate features to be activated: `RtcMediaStreamTrackStats`*"]
track_identifier(&mut self, val: &str) -> &mut Self290     pub fn track_identifier(&mut self, val: &str) -> &mut Self {
291         use wasm_bindgen::JsValue;
292         let r = ::js_sys::Reflect::set(
293             self.as_ref(),
294             &JsValue::from("trackIdentifier"),
295             &JsValue::from(val),
296         );
297         debug_assert!(
298             r.is_ok(),
299             "setting properties should never fail on our dictionary objects"
300         );
301         let _ = r;
302         self
303     }
304 }
305 impl Default for RtcMediaStreamTrackStats {
default() -> Self306     fn default() -> Self {
307         Self::new()
308     }
309 }
310