OLD | NEW |
1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be // fou
nd in the LICENSE file. | 2 // Use of this source code is governed by a BSD-style license that can be // fou
nd in the LICENSE file. |
3 | 3 |
4 module device.mojom; | 4 module device.mojom; |
5 | 5 |
| 6 import "mojo/common/time.mojom"; |
| 7 |
6 // A field of view, given by 4 degrees describing the view from a center point. | 8 // A field of view, given by 4 degrees describing the view from a center point. |
7 struct VRFieldOfView { | 9 struct VRFieldOfView { |
8 float upDegrees; | 10 float upDegrees; |
9 float downDegrees; | 11 float downDegrees; |
10 float leftDegrees; | 12 float leftDegrees; |
11 float rightDegrees; | 13 float rightDegrees; |
12 }; | 14 }; |
13 | 15 |
14 // A display's position, orientation, velocity, and acceleration state at the | 16 // A display's position, orientation, velocity, and acceleration state at the |
15 // given timestamp. | 17 // given timestamp. |
(...skipping 61 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
77 SetClient(VRServiceClient client) => (uint32 numberOfConnectedDevices); | 79 SetClient(VRServiceClient client) => (uint32 numberOfConnectedDevices); |
78 // Inform the service that the page is listening for vrdisplayactivate events. | 80 // Inform the service that the page is listening for vrdisplayactivate events. |
79 SetListeningForActivate(bool listening); | 81 SetListeningForActivate(bool listening); |
80 }; | 82 }; |
81 | 83 |
82 interface VRServiceClient { | 84 interface VRServiceClient { |
83 OnDisplayConnected(VRDisplay display, VRDisplayClient& request, VRDisplayInfo
displayInfo); | 85 OnDisplayConnected(VRDisplay display, VRDisplayClient& request, VRDisplayInfo
displayInfo); |
84 }; | 86 }; |
85 | 87 |
86 interface VRDisplay { | 88 interface VRDisplay { |
87 [Sync] | |
88 GetPose() => (VRPose? pose); | |
89 ResetPose(); | 89 ResetPose(); |
90 | 90 |
91 RequestPresent(bool secureOrigin) => (bool success); | 91 RequestPresent(bool secureOrigin) => (bool success); |
92 ExitPresent(); | 92 ExitPresent(); |
93 SubmitFrame(VRPose? pose); | 93 SubmitFrame(VRPose? pose); |
94 UpdateLayerBounds(VRLayerBounds leftBounds, VRLayerBounds rightBounds); | 94 UpdateLayerBounds(VRLayerBounds leftBounds, VRLayerBounds rightBounds); |
| 95 GetVRVSyncProvider(VRVSyncProvider& request); |
| 96 }; |
| 97 |
| 98 interface VRVSyncProvider { |
| 99 GetVSync() => (VRPose? pose, mojo.common.mojom.TimeDelta time); |
95 }; | 100 }; |
96 | 101 |
97 interface VRDisplayClient { | 102 interface VRDisplayClient { |
98 OnChanged(VRDisplayInfo display); | 103 OnChanged(VRDisplayInfo display); |
99 OnExitPresent(); | 104 OnExitPresent(); |
100 OnBlur(); | 105 OnBlur(); |
101 OnFocus(); | 106 OnFocus(); |
102 OnActivate(VRDisplayEventReason reason); | 107 OnActivate(VRDisplayEventReason reason); |
103 OnDeactivate(VRDisplayEventReason reason); | 108 OnDeactivate(VRDisplayEventReason reason); |
104 }; | 109 }; |
OLD | NEW |