1234567891011121314151617181920212223242526272829303132333435363738394041424344 |
- /*
- * Copyright (c) 2024, Jelle Raaijmakers <jelle@ladybird.org>
- *
- * SPDX-License-Identifier: BSD-2-Clause
- */
- #pragma once
- #include <LibWeb/DOM/EventTarget.h>
- namespace Web::MediaSourceExtensions {
- // https://w3c.github.io/media-source/#dom-sourcebuffer
- class SourceBuffer : public DOM::EventTarget {
- WEB_PLATFORM_OBJECT(SourceBuffer, DOM::EventTarget);
- GC_DECLARE_ALLOCATOR(SourceBuffer);
- public:
- void set_onupdatestart(GC::Ptr<WebIDL::CallbackType>);
- GC::Ptr<WebIDL::CallbackType> onupdatestart();
- void set_onupdate(GC::Ptr<WebIDL::CallbackType>);
- GC::Ptr<WebIDL::CallbackType> onupdate();
- void set_onupdateend(GC::Ptr<WebIDL::CallbackType>);
- GC::Ptr<WebIDL::CallbackType> onupdateend();
- void set_onerror(GC::Ptr<WebIDL::CallbackType>);
- GC::Ptr<WebIDL::CallbackType> onerror();
- void set_onabort(GC::Ptr<WebIDL::CallbackType>);
- GC::Ptr<WebIDL::CallbackType> onabort();
- protected:
- SourceBuffer(JS::Realm&);
- virtual ~SourceBuffer() override;
- virtual void initialize(JS::Realm&) override;
- private:
- };
- }
|