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 | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 module device.mojom; | 5 module device.mojom; |
6 | 6 |
7 import "mojo/common/time.mojom"; | 7 import "mojo/common/time.mojom"; |
8 import "gpu/ipc/common/mailbox_holder.mojom"; | 8 import "gpu/ipc/common/mailbox_holder.mojom"; |
9 import "gpu/ipc/common/sync_token.mojom"; | 9 import "gpu/ipc/common/sync_token.mojom"; |
10 | 10 |
(...skipping 10 matching lines...) Expand all Loading... |
21 struct VRPose { | 21 struct VRPose { |
22 array<float, 4>? orientation; | 22 array<float, 4>? orientation; |
23 array<float, 3>? position; | 23 array<float, 3>? position; |
24 array<float, 3>? angularVelocity; | 24 array<float, 3>? angularVelocity; |
25 array<float, 3>? linearVelocity; | 25 array<float, 3>? linearVelocity; |
26 array<float, 3>? angularAcceleration; | 26 array<float, 3>? angularAcceleration; |
27 array<float, 3>? linearAcceleration; | 27 array<float, 3>? linearAcceleration; |
28 }; | 28 }; |
29 | 29 |
30 struct VRDisplayCapabilities { | 30 struct VRDisplayCapabilities { |
31 bool hasOrientation; | |
32 bool hasPosition; | 31 bool hasPosition; |
33 bool hasExternalDisplay; | 32 bool hasExternalDisplay; |
34 bool canPresent; | 33 bool canPresent; |
35 }; | 34 }; |
36 | 35 |
37 // Information about the optical properties for an eye in a VRDisplay. | 36 // Information about the optical properties for an eye in a VRDisplay. |
38 struct VREyeParameters { | 37 struct VREyeParameters { |
39 VRFieldOfView fieldOfView; | 38 VRFieldOfView fieldOfView; |
40 array<float, 3> offset; | 39 array<float, 3> offset; |
41 uint32 renderWidth; | 40 uint32 renderWidth; |
(...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
85 OnDisplayConnected(VRDisplay display, VRDisplayClient& request, | 84 OnDisplayConnected(VRDisplay display, VRDisplayClient& request, |
86 VRDisplayInfo displayInfo); | 85 VRDisplayInfo displayInfo); |
87 }; | 86 }; |
88 | 87 |
89 interface VRSubmitFrameClient { | 88 interface VRSubmitFrameClient { |
90 OnSubmitFrameTransferred(); | 89 OnSubmitFrameTransferred(); |
91 OnSubmitFrameRendered(); | 90 OnSubmitFrameRendered(); |
92 }; | 91 }; |
93 | 92 |
94 interface VRDisplay { | 93 interface VRDisplay { |
95 ResetPose(); | |
96 | |
97 RequestPresent(bool secureOrigin, VRSubmitFrameClient client) => (bool success
); | 94 RequestPresent(bool secureOrigin, VRSubmitFrameClient client) => (bool success
); |
98 ExitPresent(); | 95 ExitPresent(); |
99 SubmitFrame(int16 frameId, gpu.mojom.MailboxHolder mailboxHolder); | 96 SubmitFrame(int16 frameId, gpu.mojom.MailboxHolder mailboxHolder); |
100 UpdateLayerBounds(int16 frameId, VRLayerBounds leftBounds, | 97 UpdateLayerBounds(int16 frameId, VRLayerBounds leftBounds, |
101 VRLayerBounds rightBounds, int16 sourceWidth, | 98 VRLayerBounds rightBounds, int16 sourceWidth, |
102 int16 sourceHeight); | 99 int16 sourceHeight); |
103 GetVRVSyncProvider(VRVSyncProvider& request); | 100 GetVRVSyncProvider(VRVSyncProvider& request); |
104 }; | 101 }; |
105 | 102 |
106 interface VRVSyncProvider { | 103 interface VRVSyncProvider { |
107 enum Status { SUCCESS, CLOSING }; | 104 enum Status { SUCCESS, CLOSING }; |
108 | 105 |
109 // The frameId maps a VSync to a frame arriving from the compositor. IDs will | 106 // The frameId maps a VSync to a frame arriving from the compositor. IDs will |
110 // be reused after the frame arrives from the compositor. Negative IDs imply | 107 // be reused after the frame arrives from the compositor. Negative IDs imply |
111 // no mapping. | 108 // no mapping. |
112 GetVSync() => (VRPose? pose, mojo.common.mojom.TimeDelta time, int16 frameId, | 109 GetVSync() => (VRPose? pose, mojo.common.mojom.TimeDelta time, int16 frameId, |
113 Status status); | 110 Status status); |
114 }; | 111 }; |
115 | 112 |
116 interface VRDisplayClient { | 113 interface VRDisplayClient { |
117 OnChanged(VRDisplayInfo display); | 114 OnChanged(VRDisplayInfo display); |
118 OnExitPresent(); | 115 OnExitPresent(); |
119 OnBlur(); | 116 OnBlur(); |
120 OnFocus(); | 117 OnFocus(); |
121 OnActivate(VRDisplayEventReason reason); | 118 OnActivate(VRDisplayEventReason reason); |
122 OnDeactivate(VRDisplayEventReason reason); | 119 OnDeactivate(VRDisplayEventReason reason); |
123 }; | 120 }; |
OLD | NEW |