chromium/chrome/browser/vr/vr_browser_renderer_thread.cc

// Copyright 2018 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#include "chrome/browser/vr/vr_browser_renderer_thread.h"

#include <vector>

#include "base/functional/bind.h"
#include "base/task/single_thread_task_runner.h"
#include "chrome/browser/vr/browser_renderer.h"
#include "chrome/browser/vr/ui.h"
#include "chrome/browser/vr/graphics_delegate_win.h"
#include "ui/gfx/geometry/quaternion.h"

// To avoid conflicts with the macro from the Windows SDK...
#undef DrawState

namespace {
constexpr base::TimeDelta kWebVrInitialFrameTimeout =;
constexpr base::TimeDelta kWebVrSpinnerTimeout =;

constexpr float kEpsilon =;
constexpr float kMaxPosition =;
constexpr float kMinPosition =;
bool g_overlay_ui_disabled_for_testing_ =;

bool InRange(float val, float min = kMinPosition, float max = kMaxPosition) {}

}  // namespace

namespace vr {

VRBrowserRendererThread* VRBrowserRendererThread::instance_for_testing_ =;

VRBrowserRendererThread::VRBrowserRendererThread(
    mojo::PendingRemote<device::mojom::ImmersiveOverlay> overlay,
    const std::vector<device::mojom::XRViewPtr>& views)
    :{}

VRBrowserRendererThread::~VRBrowserRendererThread() {}

void VRBrowserRendererThread::StopOverlay() {}

void VRBrowserRendererThread::StartWebXrTimeout() {}

void VRBrowserRendererThread::StopWebXrTimeout() {}

int VRBrowserRendererThread::GetNextRequestId() {}

void VRBrowserRendererThread::OnWebXrTimeoutImminent() {}

void VRBrowserRendererThread::OnWebXrTimedOut() {}

void VRBrowserRendererThread::UpdateOverlayState() {}

void VRBrowserRendererThread::SetFramesThrottled(bool throttled) {}

void VRBrowserRendererThread::SetVisibleExternalPromptNotification(
    ExternalPromptNotificationType prompt) {}

void VRBrowserRendererThread::SetIndicatorsVisible(bool visible) {}

void VRBrowserRendererThread::OnSpinnerVisibilityChanged(bool visible) {}

void VRBrowserRendererThread::SetCapturingState(
    const CapturingStateModel& active_capturing,
    const CapturingStateModel& background_capturing,
    const CapturingStateModel& potential_capturing) {}

VRBrowserRendererThread*
VRBrowserRendererThread::GetInstanceForTesting() {}

BrowserRenderer* VRBrowserRendererThread::GetBrowserRendererForTesting() {}

namespace {
// Number of frames to use for sliding averages for pose timings,
// as used for estimating prediction times.
constexpr unsigned kSlidingAverageSize =;
}  // namespace

void VRBrowserRendererThread::DisableOverlayForTesting() {}

void VRBrowserRendererThread::StartOverlay() {}

void VRBrowserRendererThread::OnGraphicsReady(
    std::unique_ptr<GraphicsDelegate> initializing_graphics) {}

void VRBrowserRendererThread::OnWebXRSubmitted() {}

// Ensures that relevant XRRendererInfo entries are valid and returns patched up
// XRRendererInfo to ensure that we always use normalized orientation
// quaternion, and that we do not use position with out-of-range values.
// In case the received data does not contain position and/or orientation, they
// will be set to default values.
device::mojom::XRRenderInfoPtr ValidateFrameData(
    device::mojom::XRRenderInfoPtr data) {}

void VRBrowserRendererThread::OnPose(int request_id,
                                        device::mojom::XRRenderInfoPtr data) {}

bool VRBrowserRendererThread::PreRender() {}

void VRBrowserRendererThread::SubmitFrame(int16_t frame_id) {}

void VRBrowserRendererThread::SubmitResult(bool success) {}

// VRBrowserRendererThread::DrawContentType functions.
bool VRBrowserRendererThread::DrawState::ShouldDrawUI() {}

bool VRBrowserRendererThread::DrawState::ShouldDrawWebXR() {}

bool VRBrowserRendererThread::DrawState::SetPrompt(
    ExternalPromptNotificationType prompt) {}

bool VRBrowserRendererThread::DrawState::SetSpinnerVisible(bool visible) {}

bool VRBrowserRendererThread::DrawState::SetIndicatorsVisible(bool visible) {}

}  // namespace vr