1 module libwasm.bindings.MediaStreamTrack;
2 
3 import libwasm.types;
4 
5 import memutils.ct: tuple;
6 import libwasm.bindings.EventHandler;
7 import libwasm.bindings.EventTarget;
8 import libwasm.bindings.MediaTrackConstraintSet;
9 import libwasm.bindings.MediaTrackSettings;
10 
11 @safe:
12 nothrow:
13 
14 alias ConstrainBoolean = SumType!(bool, ConstrainBooleanParameters);
15 alias ConstrainDOMString = SumType!(string, Sequence!(string), ConstrainDOMStringParameters);
16 alias ConstrainDouble = SumType!(double, ConstrainDoubleRange);
17 alias ConstrainLong = SumType!(int, ConstrainLongRange);
18 enum MediaSourceEnum {
19   camera,
20   screen,
21   application,
22   window,
23   browser,
24   microphone,
25   audioCapture,
26   other
27 }
28 struct MediaStreamTrack {
29   nothrow:
30   libwasm.bindings.EventTarget.EventTarget _parent;
31   alias _parent this;
32   this(Handle h) {
33     _parent = .EventTarget(h);
34   }
35   string kind()() {
36     return Object_Getter__string(this._parent, "kind");
37   }
38   string id()() {
39     return Object_Getter__string(this._parent, "id");
40   }
41   string label()() {
42     return Object_Getter__string(this._parent, "label");
43   }
44   void enabled()(bool enabled) {
45     Object_Call_bool__void(this._parent, "enabled", enabled);
46   }
47   bool enabled()() {
48     return Object_Getter__bool(this._parent, "enabled");
49   }
50   bool muted()() {
51     return Object_Getter__bool(this._parent, "muted");
52   }
53   void onmute(T0)(scope auto ref Optional!(T0) onmute) if (isTOrPointer!(T0, EventHandlerNonNull)) {
54     Object_Call_EventHandler__void(this._parent, "onmute", !onmute.empty, onmute.front);
55   }
56   EventHandler onmute()() {
57     return Object_Getter__EventHandler(this._parent, "onmute");
58   }
59   void onunmute(T0)(scope auto ref Optional!(T0) onunmute) if (isTOrPointer!(T0, EventHandlerNonNull)) {
60     Object_Call_EventHandler__void(this._parent, "onunmute", !onunmute.empty, onunmute.front);
61   }
62   EventHandler onunmute()() {
63     return Object_Getter__EventHandler(this._parent, "onunmute");
64   }
65   MediaStreamTrackState readyState()() {
66     return Object_Getter__int(this._parent, "readyState");
67   }
68   void onended(T0)(scope auto ref Optional!(T0) onended) if (isTOrPointer!(T0, EventHandlerNonNull)) {
69     Object_Call_EventHandler__void(this._parent, "onended", !onended.empty, onended.front);
70   }
71   EventHandler onended()() {
72     return Object_Getter__EventHandler(this._parent, "onended");
73   }
74   auto clone()() {
75     return MediaStreamTrack(Object_Getter__Handle(this._parent, "clone"));
76   }
77   void stop()() {
78     Object_Call__void(this._parent, "stop");
79   }
80   auto getConstraints()() {
81     return MediaTrackConstraints(Object_Getter__Handle(this._parent, "getConstraints"));
82   }
83   auto getSettings()() {
84     return MediaTrackSettings(Object_Getter__Handle(this._parent, "getSettings"));
85   }
86   auto applyConstraints()(scope ref MediaTrackConstraints constraints) {
87     return JsPromise!(void)(Object_Call_Handle__Handle(this._parent, "applyConstraints", constraints._parent));
88   }
89   auto applyConstraints()() {
90     return JsPromise!(void)(Object_Getter__Handle(this._parent, "applyConstraints"));
91   }
92   void mutedChanged()(bool muted) {
93     Object_Call_bool__void(this._parent, "mutedChanged", muted);
94   }
95 }
96 enum MediaStreamTrackState {
97   live,
98   ended
99 }
100 struct MediaTrackConstraintSet {
101   nothrow:
102   JsHandle handle;
103   alias handle this;
104   this(Handle h) {
105     this.handle = JsHandle(h);
106   }
107   static auto create() {
108     return MediaTrackConstraintSet(libwasm_add__object());
109   }
110   void width()(scope ref ConstrainLong width) {
111     Serialize_Object_VarArgCall!void(this.handle, "width", "SumType!(int,Handle)", tuple(libwasm.sumtype.match!(((int v) => 0),((ref width.Types[1] v) => 1))(width),tuple(libwasm.sumtype.match!(((int v) => v),((ref width.Types[1] v) => int.init))(width),libwasm.sumtype.match!(((int v) => Handle.init),((ref width.Types[1] v) => cast(Handle)v.handle))(width))));
112   }
113   auto width()() {
114     return Object_Getter__Handle(this.handle, "width");
115   }
116   void height()(scope ref ConstrainLong height) {
117     Serialize_Object_VarArgCall!void(this.handle, "height", "SumType!(int,Handle)", tuple(libwasm.sumtype.match!(((int v) => 0),((ref height.Types[1] v) => 1))(height),tuple(libwasm.sumtype.match!(((int v) => v),((ref height.Types[1] v) => int.init))(height),libwasm.sumtype.match!(((int v) => Handle.init),((ref height.Types[1] v) => cast(Handle)v.handle))(height))));
118   }
119   auto height()() {
120     return Object_Getter__Handle(this.handle, "height");
121   }
122   void frameRate()(scope ref ConstrainDouble frameRate) {
123     Serialize_Object_VarArgCall!void(this.handle, "frameRate", "SumType!(double,Handle)", tuple(libwasm.sumtype.match!(((double v) => 0),((ref frameRate.Types[1] v) => 1))(frameRate),tuple(libwasm.sumtype.match!(((double v) => v),((ref frameRate.Types[1] v) => double.init))(frameRate),libwasm.sumtype.match!(((double v) => Handle.init),((ref frameRate.Types[1] v) => cast(Handle)v.handle))(frameRate))));
124   }
125   auto frameRate()() {
126     return Object_Getter__Handle(this.handle, "frameRate");
127   }
128   void facingMode()(scope ref ConstrainDOMString facingMode) {
129     Serialize_Object_VarArgCall!void(this.handle, "facingMode", "SumType!(string,Handle,Handle)", tuple(libwasm.sumtype.match!(((string v) => 0),((ref facingMode.Types[1] v) => 1),((ref facingMode.Types[2] v) => 2))(facingMode),tuple(libwasm.sumtype.match!(((string v) => v),((ref facingMode.Types[1] v) => string.init),((ref facingMode.Types[2] v) => string.init))(facingMode),libwasm.sumtype.match!(((string v) => Handle.init),((ref facingMode.Types[1] v) => cast(Handle)v.handle),((ref facingMode.Types[2] v) => Handle.init))(facingMode),libwasm.sumtype.match!(((string v) => Handle.init),((ref facingMode.Types[1] v) => Handle.init),((ref facingMode.Types[2] v) => cast(Handle)v.handle))(facingMode))));
130   }
131   auto facingMode()() {
132     return Object_Getter__Handle(this.handle, "facingMode");
133   }
134   void mediaSource()(string mediaSource) {
135     Object_Call_string__void(this.handle, "mediaSource", mediaSource);
136   }
137   string mediaSource()() {
138     return Object_Getter__string(this.handle, "mediaSource");
139   }
140   void browserWindow()(int browserWindow) {
141     Object_Call_int__void(this.handle, "browserWindow", browserWindow);
142   }
143   int browserWindow()() {
144     return Object_Getter__int(this.handle, "browserWindow");
145   }
146   void scrollWithPage()(bool scrollWithPage) {
147     Object_Call_bool__void(this.handle, "scrollWithPage", scrollWithPage);
148   }
149   bool scrollWithPage()() {
150     return Object_Getter__bool(this.handle, "scrollWithPage");
151   }
152   void deviceId()(scope ref ConstrainDOMString deviceId) {
153     Serialize_Object_VarArgCall!void(this.handle, "deviceId", "SumType!(string,Handle,Handle)", tuple(libwasm.sumtype.match!(((string v) => 0),((ref deviceId.Types[1] v) => 1),((ref deviceId.Types[2] v) => 2))(deviceId),tuple(libwasm.sumtype.match!(((string v) => v),((ref deviceId.Types[1] v) => string.init),((ref deviceId.Types[2] v) => string.init))(deviceId),libwasm.sumtype.match!(((string v) => Handle.init),((ref deviceId.Types[1] v) => cast(Handle)v.handle),((ref deviceId.Types[2] v) => Handle.init))(deviceId),libwasm.sumtype.match!(((string v) => Handle.init),((ref deviceId.Types[1] v) => Handle.init),((ref deviceId.Types[2] v) => cast(Handle)v.handle))(deviceId))));
154   }
155   auto deviceId()() {
156     return Object_Getter__Handle(this.handle, "deviceId");
157   }
158   void viewportOffsetX()(scope ref ConstrainLong viewportOffsetX) {
159     Serialize_Object_VarArgCall!void(this.handle, "viewportOffsetX", "SumType!(int,Handle)", tuple(libwasm.sumtype.match!(((int v) => 0),((ref viewportOffsetX.Types[1] v) => 1))(viewportOffsetX),tuple(libwasm.sumtype.match!(((int v) => v),((ref viewportOffsetX.Types[1] v) => int.init))(viewportOffsetX),libwasm.sumtype.match!(((int v) => Handle.init),((ref viewportOffsetX.Types[1] v) => cast(Handle)v.handle))(viewportOffsetX))));
160   }
161   auto viewportOffsetX()() {
162     return Object_Getter__Handle(this.handle, "viewportOffsetX");
163   }
164   void viewportOffsetY()(scope ref ConstrainLong viewportOffsetY) {
165     Serialize_Object_VarArgCall!void(this.handle, "viewportOffsetY", "SumType!(int,Handle)", tuple(libwasm.sumtype.match!(((int v) => 0),((ref viewportOffsetY.Types[1] v) => 1))(viewportOffsetY),tuple(libwasm.sumtype.match!(((int v) => v),((ref viewportOffsetY.Types[1] v) => int.init))(viewportOffsetY),libwasm.sumtype.match!(((int v) => Handle.init),((ref viewportOffsetY.Types[1] v) => cast(Handle)v.handle))(viewportOffsetY))));
166   }
167   auto viewportOffsetY()() {
168     return Object_Getter__Handle(this.handle, "viewportOffsetY");
169   }
170   void viewportWidth()(scope ref ConstrainLong viewportWidth) {
171     Serialize_Object_VarArgCall!void(this.handle, "viewportWidth", "SumType!(int,Handle)", tuple(libwasm.sumtype.match!(((int v) => 0),((ref viewportWidth.Types[1] v) => 1))(viewportWidth),tuple(libwasm.sumtype.match!(((int v) => v),((ref viewportWidth.Types[1] v) => int.init))(viewportWidth),libwasm.sumtype.match!(((int v) => Handle.init),((ref viewportWidth.Types[1] v) => cast(Handle)v.handle))(viewportWidth))));
172   }
173   auto viewportWidth()() {
174     return Object_Getter__Handle(this.handle, "viewportWidth");
175   }
176   void viewportHeight()(scope ref ConstrainLong viewportHeight) {
177     Serialize_Object_VarArgCall!void(this.handle, "viewportHeight", "SumType!(int,Handle)", tuple(libwasm.sumtype.match!(((int v) => 0),((ref viewportHeight.Types[1] v) => 1))(viewportHeight),tuple(libwasm.sumtype.match!(((int v) => v),((ref viewportHeight.Types[1] v) => int.init))(viewportHeight),libwasm.sumtype.match!(((int v) => Handle.init),((ref viewportHeight.Types[1] v) => cast(Handle)v.handle))(viewportHeight))));
178   }
179   auto viewportHeight()() {
180     return Object_Getter__Handle(this.handle, "viewportHeight");
181   }
182   void echoCancellation()(scope ref ConstrainBoolean echoCancellation) {
183     Serialize_Object_VarArgCall!void(this.handle, "echoCancellation", "SumType!(bool,Handle)", tuple(libwasm.sumtype.match!(((bool v) => 0),((ref echoCancellation.Types[1] v) => 1))(echoCancellation),tuple(libwasm.sumtype.match!(((bool v) => v),((ref echoCancellation.Types[1] v) => bool.init))(echoCancellation),libwasm.sumtype.match!(((bool v) => Handle.init),((ref echoCancellation.Types[1] v) => cast(Handle)v.handle))(echoCancellation))));
184   }
185   auto echoCancellation()() {
186     return Object_Getter__Handle(this.handle, "echoCancellation");
187   }
188   void noiseSuppression()(scope ref ConstrainBoolean noiseSuppression) {
189     Serialize_Object_VarArgCall!void(this.handle, "noiseSuppression", "SumType!(bool,Handle)", tuple(libwasm.sumtype.match!(((bool v) => 0),((ref noiseSuppression.Types[1] v) => 1))(noiseSuppression),tuple(libwasm.sumtype.match!(((bool v) => v),((ref noiseSuppression.Types[1] v) => bool.init))(noiseSuppression),libwasm.sumtype.match!(((bool v) => Handle.init),((ref noiseSuppression.Types[1] v) => cast(Handle)v.handle))(noiseSuppression))));
190   }
191   auto noiseSuppression()() {
192     return Object_Getter__Handle(this.handle, "noiseSuppression");
193   }
194   void autoGainControl()(scope ref ConstrainBoolean autoGainControl) {
195     Serialize_Object_VarArgCall!void(this.handle, "autoGainControl", "SumType!(bool,Handle)", tuple(libwasm.sumtype.match!(((bool v) => 0),((ref autoGainControl.Types[1] v) => 1))(autoGainControl),tuple(libwasm.sumtype.match!(((bool v) => v),((ref autoGainControl.Types[1] v) => bool.init))(autoGainControl),libwasm.sumtype.match!(((bool v) => Handle.init),((ref autoGainControl.Types[1] v) => cast(Handle)v.handle))(autoGainControl))));
196   }
197   auto autoGainControl()() {
198     return Object_Getter__Handle(this.handle, "autoGainControl");
199   }
200   void channelCount()(scope ref ConstrainLong channelCount) {
201     Serialize_Object_VarArgCall!void(this.handle, "channelCount", "SumType!(int,Handle)", tuple(libwasm.sumtype.match!(((int v) => 0),((ref channelCount.Types[1] v) => 1))(channelCount),tuple(libwasm.sumtype.match!(((int v) => v),((ref channelCount.Types[1] v) => int.init))(channelCount),libwasm.sumtype.match!(((int v) => Handle.init),((ref channelCount.Types[1] v) => cast(Handle)v.handle))(channelCount))));
202   }
203   auto channelCount()() {
204     return Object_Getter__Handle(this.handle, "channelCount");
205   }
206 }
207 struct MediaTrackConstraints {
208   nothrow:
209   libwasm.bindings.MediaStreamTrack.MediaTrackConstraintSet _parent;
210   alias _parent this;
211   this(Handle h) {
212     _parent = .MediaTrackConstraintSet(h);
213   }
214   static auto create() {
215     return MediaTrackConstraints(libwasm_add__object());
216   }
217   void advanced()(scope ref Sequence!(MediaTrackConstraintSet) advanced) {
218     Object_Call_Handle__void(this._parent, "advanced", advanced.handle);
219   }
220   auto advanced()() {
221     return Sequence!(MediaTrackConstraintSet)(Object_Getter__Handle(this._parent, "advanced"));
222   }
223 }
224 enum VideoFacingModeEnum {
225   user,
226   environment,
227   left,
228   right
229 }
230 
231