summaryrefslogtreecommitdiff
path: root/chromium/third_party/blink/renderer/modules/vr/vr_display_capabilities.idl
blob: 78cd1f5eca079bf4f5fa751a6000f631f52182f6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
// Copyright 2016 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

// https://w3c.github.io/webvr/#interface-vrdisplaycapabilities
[
    RuntimeEnabled=WebVR
] interface VRDisplayCapabilities {
  // Whether or not the VR display is capable of reporting user position.
  // If false position may still be reported using simulated values like
  // neck modeling.
  readonly attribute boolean hasPosition;

  // Whether or not the VRDisplay is separate from the device’s primary display.
  // If presenting VR content will obscure other content on the device, this
  // should be false. When false VR content should not be mirrored.
  readonly attribute boolean hasExternalDisplay;

  // Whether or not the VRDisplay is capable of presenting content to an HMD or
  // similar device. Can be used to indicate “magic window” devices that are
  // capable of 6DoF tracking but for which requestPresent is not meaningful. If
  // false then calls to requestPresent should always fail, and getEyeParameters
  // should return null.
  readonly attribute boolean canPresent;

  // The maximum length of the array that VRDisplay.requestPresent will accept.
  readonly attribute unsigned long maxLayers;
};