maxcountryman_web_sys/features/
gen_RtcRtpSourceEntry.rs

1#![allow(unused_imports)]
2use super::*;
3use wasm_bindgen::prelude::*;
4#[wasm_bindgen]
5extern "C" {
6    # [wasm_bindgen (extends = :: js_sys :: Object , js_name = RTCRtpSourceEntry)]
7    #[derive(Debug, Clone, PartialEq, Eq)]
8    #[doc = "The `RtcRtpSourceEntry` dictionary."]
9    #[doc = ""]
10    #[doc = "*This API requires the following crate features to be activated: `RtcRtpSourceEntry`*"]
11    pub type RtcRtpSourceEntry;
12}
13impl RtcRtpSourceEntry {
14    #[cfg(feature = "RtcRtpSourceEntryType")]
15    #[doc = "Construct a new `RtcRtpSourceEntry`."]
16    #[doc = ""]
17    #[doc = "*This API requires the following crate features to be activated: `RtcRtpSourceEntry`, `RtcRtpSourceEntryType`*"]
18    pub fn new(source: u32, timestamp: f64, source_type: RtcRtpSourceEntryType) -> Self {
19        #[allow(unused_mut)]
20        let mut ret: Self = ::wasm_bindgen::JsCast::unchecked_into(::js_sys::Object::new());
21        ret.source(source);
22        ret.timestamp(timestamp);
23        ret.source_type(source_type);
24        ret
25    }
26    #[doc = "Change the `audioLevel` field of this object."]
27    #[doc = ""]
28    #[doc = "*This API requires the following crate features to be activated: `RtcRtpSourceEntry`*"]
29    pub fn audio_level(&mut self, val: f64) -> &mut Self {
30        use wasm_bindgen::JsValue;
31        let r = ::js_sys::Reflect::set(
32            self.as_ref(),
33            &JsValue::from("audioLevel"),
34            &JsValue::from(val),
35        );
36        debug_assert!(
37            r.is_ok(),
38            "setting properties should never fail on our dictionary objects"
39        );
40        let _ = r;
41        self
42    }
43    #[doc = "Change the `source` field of this object."]
44    #[doc = ""]
45    #[doc = "*This API requires the following crate features to be activated: `RtcRtpSourceEntry`*"]
46    pub fn source(&mut self, val: u32) -> &mut Self {
47        use wasm_bindgen::JsValue;
48        let r =
49            ::js_sys::Reflect::set(self.as_ref(), &JsValue::from("source"), &JsValue::from(val));
50        debug_assert!(
51            r.is_ok(),
52            "setting properties should never fail on our dictionary objects"
53        );
54        let _ = r;
55        self
56    }
57    #[doc = "Change the `timestamp` field of this object."]
58    #[doc = ""]
59    #[doc = "*This API requires the following crate features to be activated: `RtcRtpSourceEntry`*"]
60    pub fn timestamp(&mut self, val: f64) -> &mut Self {
61        use wasm_bindgen::JsValue;
62        let r = ::js_sys::Reflect::set(
63            self.as_ref(),
64            &JsValue::from("timestamp"),
65            &JsValue::from(val),
66        );
67        debug_assert!(
68            r.is_ok(),
69            "setting properties should never fail on our dictionary objects"
70        );
71        let _ = r;
72        self
73    }
74    #[doc = "Change the `voiceActivityFlag` field of this object."]
75    #[doc = ""]
76    #[doc = "*This API requires the following crate features to be activated: `RtcRtpSourceEntry`*"]
77    pub fn voice_activity_flag(&mut self, val: Option<bool>) -> &mut Self {
78        use wasm_bindgen::JsValue;
79        let r = ::js_sys::Reflect::set(
80            self.as_ref(),
81            &JsValue::from("voiceActivityFlag"),
82            &JsValue::from(val),
83        );
84        debug_assert!(
85            r.is_ok(),
86            "setting properties should never fail on our dictionary objects"
87        );
88        let _ = r;
89        self
90    }
91    #[cfg(feature = "RtcRtpSourceEntryType")]
92    #[doc = "Change the `sourceType` field of this object."]
93    #[doc = ""]
94    #[doc = "*This API requires the following crate features to be activated: `RtcRtpSourceEntry`, `RtcRtpSourceEntryType`*"]
95    pub fn source_type(&mut self, val: RtcRtpSourceEntryType) -> &mut Self {
96        use wasm_bindgen::JsValue;
97        let r = ::js_sys::Reflect::set(
98            self.as_ref(),
99            &JsValue::from("sourceType"),
100            &JsValue::from(val),
101        );
102        debug_assert!(
103            r.is_ok(),
104            "setting properties should never fail on our dictionary objects"
105        );
106        let _ = r;
107        self
108    }
109}