| 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 |