#include "third_party/blink/renderer/bindings/modules/v8/v8_video_frame.h"
#include "third_party/blink/public/mojom/origin_trial_feature/origin_trial_feature.mojom-shared.h"
#include "third_party/blink/renderer/bindings/core/v8/generated_code_helper.h"
#include "third_party/blink/renderer/bindings/core/v8/native_value_traits_impl.h"
#include "third_party/blink/renderer/bindings/core/v8/to_v8_traits.h"
#include "third_party/blink/renderer/bindings/core/v8/v8_css_image_value.h"
#include "third_party/blink/renderer/bindings/core/v8/v8_dom_rect_read_only.h"
#include "third_party/blink/renderer/bindings/core/v8/v8_html_canvas_element.h"
#include "third_party/blink/renderer/bindings/core/v8/v8_html_image_element.h"
#include "third_party/blink/renderer/bindings/core/v8/v8_html_video_element.h"
#include "third_party/blink/renderer/bindings/core/v8/v8_image_bitmap.h"
#include "third_party/blink/renderer/bindings/core/v8/v8_offscreen_canvas.h"
#include "third_party/blink/renderer/bindings/core/v8/v8_set_return_value_for_core.h"
#include "third_party/blink/renderer/bindings/core/v8/v8_svg_image_element.h"
#include "third_party/blink/renderer/bindings/core/v8/v8_union_arraybufferallowshared_arraybufferviewallowshared.h"
#include "third_party/blink/renderer/bindings/modules/v8/v8_plane_layout.h"
#include "third_party/blink/renderer/bindings/modules/v8/v8_union_cssimagevalue_htmlcanvaselement_htmlimageelement_htmlvideoelement_imagebitmap_offscreencanvas_svgimageelement_videoframe.h"
#include "third_party/blink/renderer/bindings/modules/v8/v8_video_color_space.h"
#include "third_party/blink/renderer/bindings/modules/v8/v8_video_frame_buffer_init.h"
#include "third_party/blink/renderer/bindings/modules/v8/v8_video_frame_copy_to_options.h"
#include "third_party/blink/renderer/bindings/modules/v8/v8_video_frame_init.h"
#include "third_party/blink/renderer/bindings/modules/v8/v8_video_pixel_format.h"
#include "third_party/blink/renderer/core/css/cssom/css_style_image_value.h"
#include "third_party/blink/renderer/core/execution_context/execution_context.h"
#include "third_party/blink/renderer/core/frame/web_feature.h"
#include "third_party/blink/renderer/core/geometry/dom_rect_read_only.h"
#include "third_party/blink/renderer/core/html/canvas/html_canvas_element.h"
#include "third_party/blink/renderer/core/html/html_image_element.h"
#include "third_party/blink/renderer/core/html/media/html_video_element.h"
#include "third_party/blink/renderer/core/imagebitmap/image_bitmap.h"
#include "third_party/blink/renderer/core/offscreencanvas/offscreen_canvas.h"
#include "third_party/blink/renderer/core/svg/svg_image_element.h"
#include "third_party/blink/renderer/modules/webcodecs/video_color_space.h"
#include "third_party/blink/renderer/modules/webcodecs/video_frame.h"
#include "third_party/blink/renderer/platform/bindings/exception_messages.h"
#include "third_party/blink/renderer/platform/bindings/idl_member_installer.h"
#include "third_party/blink/renderer/platform/bindings/runtime_call_stats.h"
#include "third_party/blink/renderer/platform/bindings/v8_binding.h"
#include "third_party/blink/renderer/platform/bindings/v8_object_constructor.h"
#include "third_party/blink/renderer/platform/bindings/wrapper_type_info.h"
#include "third_party/blink/renderer/platform/instrumentation/use_counter.h"
namespace blink {
bool V8VideoFrame::IsExposed(ExecutionContext* execution_context) { … }
#if defined(COMPONENT_BUILD) && defined(WIN32) && defined(__clang__)
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wglobal-constructors"
#endif
const WrapperTypeInfo V8VideoFrame::wrapper_type_info_{ … };
#if defined(COMPONENT_BUILD) && defined(WIN32) && defined(__clang__)
#pragma clang diagnostic pop
#endif
const WrapperTypeInfo& VideoFrame::wrapper_type_info_ = …;
static_assert …;
namespace {
namespace v8_video_frame {
void FormatAttributeGetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void TimestampAttributeGetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void DurationAttributeGetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void CodedWidthAttributeGetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void CodedHeightAttributeGetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void CodedRectAttributeGetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void VisibleRectAttributeGetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void DisplayWidthAttributeGetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void DisplayHeightAttributeGetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void ColorSpaceAttributeGetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void ConstructorOverload1(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void ConstructorOverload2(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void ConstructorCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void AllocationSizeOperationCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void CloneOperationCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void CloseOperationCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void CopyToOperationCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
}
usingnamespacev8_video_frame;
}
void V8VideoFrame::InstallInterfaceTemplate(v8::Isolate* isolate, const DOMWrapperWorld& world, v8::Local<v8::Template> interface_template) { … }
void V8VideoFrame::InstallUnconditionalProperties(v8::Isolate* isolate, const DOMWrapperWorld& world, v8::Local<v8::Template> instance_template, v8::Local<v8::Template> prototype_template, v8::Local<v8::Template> interface_template) { … }
}