#include "third_party/blink/renderer/modules/xr/xr_gpu_binding.h"
#include "third_party/blink/renderer/bindings/modules/v8/v8_xr_gpu_projection_layer_init.h"
#include "third_party/blink/renderer/modules/webgpu/dawn_conversions.h"
#include "third_party/blink/renderer/modules/webgpu/dawn_enum_conversions.h"
#include "third_party/blink/renderer/modules/webgpu/dawn_object.h"
#include "third_party/blink/renderer/modules/webgpu/gpu.h"
#include "third_party/blink/renderer/modules/webgpu/gpu_adapter.h"
#include "third_party/blink/renderer/modules/webgpu/gpu_device.h"
#include "third_party/blink/renderer/modules/webgpu/gpu_supported_limits.h"
#include "third_party/blink/renderer/modules/webgpu/gpu_texture.h"
#include "third_party/blink/renderer/modules/xr/xr_gpu_projection_layer.h"
#include "third_party/blink/renderer/modules/xr/xr_gpu_sub_image.h"
#include "third_party/blink/renderer/modules/xr/xr_session.h"
#include "third_party/blink/renderer/modules/xr/xr_view.h"
#include "third_party/blink/renderer/platform/bindings/exception_state.h"
#include "ui/gfx/geometry/size.h"
#include "ui/gfx/geometry/size_conversions.h"
#include "ui/gfx/geometry/size_f.h"
namespace blink {
namespace {
const double kMinScaleFactor = …;
class XRGPUStaticTextureLayerSwapChain : public XRGPULayerTextureSwapChain { … };
}
void XRGPULayerTextureSwapChain::OnFrameStart() { … }
void XRGPULayerTextureSwapChain::OnFrameEnd() { … }
void XRGPULayerTextureSwapChain::Trace(Visitor* visitor) const { … }
XRGPUBinding* XRGPUBinding::Create(XRSession* session,
GPUDevice* device,
ExceptionState& exception_state) { … }
XRGPUBinding::XRGPUBinding(XRSession* session, GPUDevice* device)
: … { … }
XRProjectionLayer* XRGPUBinding::createProjectionLayer(
const XRGPUProjectionLayerInit* init,
ExceptionState& exception_state) { … }
XRGPUSubImage* XRGPUBinding::getViewSubImage(XRProjectionLayer* layer,
XRView* view,
ExceptionState& exception_state) { … }
String XRGPUBinding::getPreferredColorFormat() { … }
void XRGPUBinding::Trace(Visitor* visitor) const { … }
}