Index: components/view_manager/public/interfaces/compositor_frame.mojom |
diff --git a/components/view_manager/public/interfaces/compositor_frame.mojom b/components/view_manager/public/interfaces/compositor_frame.mojom |
index 314aee5de56fa6e293a304544e30420042f47259..b63ad2c28f86ec19b67ff3ccb56309758c8d20ff 100644 |
--- a/components/view_manager/public/interfaces/compositor_frame.mojom |
+++ b/components/view_manager/public/interfaces/compositor_frame.mojom |
@@ -17,6 +17,17 @@ enum ResourceFormat { |
ETC1, |
}; |
+struct ReturnedResource { |
+ uint32 id; |
sky
2015/08/25 17:11:12
Document all these fields. For example, what does
Fady Samuel
2015/08/25 23:39:30
Done in a separate patch which you reviewed.
|
+ uint32 sync_point; |
+ int32 count; |
+ bool lost; |
+}; |
+ |
+interface ResourceReturner { |
+ ReturnResources(array<ReturnedResource> resources); |
+}; |
+ |
// See src/gpu/command_buffer/common/mailbox.h. |
struct Mailbox { |
array<int8, 64> name; |
@@ -50,3 +61,13 @@ struct CompositorFrame { |
array<TransferableResource> resources; |
array<Pass> passes; |
}; |
+ |
+// CompositorFrameReceiver is an interface for receiving CompositorFrame |
+// structs. This is a separate interface to allow CompositorFrames to be |
+// delivered from supplementary (not main) threads of a mojo app. |
+interface CompositorFrameReceiver { |
+ // After the submitted frame is drawn for the first time, the receiver will |
+ // respond to the SubmitFrame message. Clients should use this acknowledgement |
+ // to ratelimit frame submissions. |
+ SubmitCompositorFrame(CompositorFrame frame) => (); |
+}; |