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 = GainOptions)]
7     #[derive(Debug, Clone, PartialEq, Eq)]
8     #[doc = "The `GainOptions` dictionary."]
9     #[doc = ""]
10     #[doc = "*This API requires the following crate features to be activated: `GainOptions`*"]
11     pub type GainOptions;
12 }
13 impl GainOptions {
14     #[doc = "Construct a new `GainOptions`."]
15     #[doc = ""]
16     #[doc = "*This API requires the following crate features to be activated: `GainOptions`*"]
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 `channelCount` field of this object."]
23     #[doc = ""]
24     #[doc = "*This API requires the following crate features to be activated: `GainOptions`*"]
channel_count(&mut self, val: u32) -> &mut Self25     pub fn channel_count(&mut self, val: u32) -> &mut Self {
26         use wasm_bindgen::JsValue;
27         let r = ::js_sys::Reflect::set(
28             self.as_ref(),
29             &JsValue::from("channelCount"),
30             &JsValue::from(val),
31         );
32         debug_assert!(
33             r.is_ok(),
34             "setting properties should never fail on our dictionary objects"
35         );
36         let _ = r;
37         self
38     }
39     #[cfg(feature = "ChannelCountMode")]
40     #[doc = "Change the `channelCountMode` field of this object."]
41     #[doc = ""]
42     #[doc = "*This API requires the following crate features to be activated: `ChannelCountMode`, `GainOptions`*"]
channel_count_mode(&mut self, val: ChannelCountMode) -> &mut Self43     pub fn channel_count_mode(&mut self, val: ChannelCountMode) -> &mut Self {
44         use wasm_bindgen::JsValue;
45         let r = ::js_sys::Reflect::set(
46             self.as_ref(),
47             &JsValue::from("channelCountMode"),
48             &JsValue::from(val),
49         );
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     #[cfg(feature = "ChannelInterpretation")]
58     #[doc = "Change the `channelInterpretation` field of this object."]
59     #[doc = ""]
60     #[doc = "*This API requires the following crate features to be activated: `ChannelInterpretation`, `GainOptions`*"]
channel_interpretation(&mut self, val: ChannelInterpretation) -> &mut Self61     pub fn channel_interpretation(&mut self, val: ChannelInterpretation) -> &mut Self {
62         use wasm_bindgen::JsValue;
63         let r = ::js_sys::Reflect::set(
64             self.as_ref(),
65             &JsValue::from("channelInterpretation"),
66             &JsValue::from(val),
67         );
68         debug_assert!(
69             r.is_ok(),
70             "setting properties should never fail on our dictionary objects"
71         );
72         let _ = r;
73         self
74     }
75     #[doc = "Change the `gain` field of this object."]
76     #[doc = ""]
77     #[doc = "*This API requires the following crate features to be activated: `GainOptions`*"]
gain(&mut self, val: f32) -> &mut Self78     pub fn gain(&mut self, val: f32) -> &mut Self {
79         use wasm_bindgen::JsValue;
80         let r = ::js_sys::Reflect::set(self.as_ref(), &JsValue::from("gain"), &JsValue::from(val));
81         debug_assert!(
82             r.is_ok(),
83             "setting properties should never fail on our dictionary objects"
84         );
85         let _ = r;
86         self
87     }
88 }
89 impl Default for GainOptions {
default() -> Self90     fn default() -> Self {
91         Self::new()
92     }
93 }
94