1 module libwasm.bindings.RTCTrackEvent; 2 3 import libwasm.types; 4 5 import memutils.ct: tuple; 6 import libwasm.bindings.Event; 7 import libwasm.bindings.MediaStream; 8 import libwasm.bindings.MediaStreamTrack; 9 import libwasm.bindings.RTCRtpReceiver; 10 import libwasm.bindings.RTCRtpTransceiver; 11 12 @safe: 13 nothrow: 14 15 struct RTCTrackEvent { 16 nothrow: 17 libwasm.bindings.Event.Event _parent; 18 alias _parent this; 19 this(Handle h) { 20 _parent = .Event(h); 21 } 22 auto receiver()() { 23 return RTCRtpReceiver(Object_Getter__Handle(this._parent, "receiver")); 24 } 25 auto track()() { 26 return MediaStreamTrack(Object_Getter__Handle(this._parent, "track")); 27 } 28 auto streams()() { 29 return Sequence!(MediaStream)(Object_Getter__Handle(this._parent, "streams")); 30 } 31 auto transceiver()() { 32 return RTCRtpTransceiver(Object_Getter__Handle(this._parent, "transceiver")); 33 } 34 } 35 struct RTCTrackEventInit { 36 nothrow: 37 libwasm.bindings.Event.EventInit _parent; 38 alias _parent this; 39 this(Handle h) { 40 _parent = .EventInit(h); 41 } 42 static auto create() { 43 return RTCTrackEventInit(libwasm_add__object()); 44 } 45 void receiver()(scope ref RTCRtpReceiver receiver) { 46 Object_Call_Handle__void(this._parent, "receiver", receiver.handle); 47 } 48 auto receiver()() { 49 return RTCRtpReceiver(Object_Getter__Handle(this._parent, "receiver")); 50 } 51 void track()(scope ref MediaStreamTrack track) { 52 Object_Call_Handle__void(this._parent, "track", track.handle); 53 } 54 auto track()() { 55 return MediaStreamTrack(Object_Getter__Handle(this._parent, "track")); 56 } 57 void streams()(scope ref Sequence!(MediaStream) streams) { 58 Object_Call_Handle__void(this._parent, "streams", streams.handle); 59 } 60 auto streams()() { 61 return Sequence!(MediaStream)(Object_Getter__Handle(this._parent, "streams")); 62 } 63 void transceiver()(scope ref RTCRtpTransceiver transceiver) { 64 Object_Call_Handle__void(this._parent, "transceiver", transceiver.handle); 65 } 66 auto transceiver()() { 67 return RTCRtpTransceiver(Object_Getter__Handle(this._parent, "transceiver")); 68 } 69 } 70 71