Index: third_party/mojo_services/src/gpu/public/interfaces/context_provider.mojom |
diff --git a/third_party/mojo_services/src/gpu/public/interfaces/context_provider.mojom b/third_party/mojo_services/src/gpu/public/interfaces/context_provider.mojom |
new file mode 100644 |
index 0000000000000000000000000000000000000000..59d3b7b84aebfc4a7593bb9476ce3c16d84ec2cd |
--- /dev/null |
+++ b/third_party/mojo_services/src/gpu/public/interfaces/context_provider.mojom |
@@ -0,0 +1,28 @@ |
+// Copyright 2015 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. |
+ |
+module mojo; |
+ |
+import "gpu/public/interfaces/command_buffer.mojom"; |
+import "gpu/public/interfaces/viewport_parameter_listener.mojom"; |
+ |
+// A ContextProvider can be used to provide new command buffers related to a |
+// particular context, for instance configured to draw to a particular display. |
+interface ContextProvider { |
+ // This initializes a new command buffer for this provider when available, |
+ // closing connections to the previously created command buffer (if any). |
+ // |
+ // This call may not return for an extended period of time if a command |
+ // buffer cannot be produced immediately, for example if it is associated |
+ // with a view that is offscreen. |
+ // |
+ // If a viewport_parameter_listener is provided it will notified be when |
+ // vsync parameters change for this context. |
+ // |
+ // The returned handle will be null if no command buffer can be created for |
+ // this request, for example if another request is made on the same provider |
+ // before a previous call returns. |
+ Create(ViewportParameterListener? viewport_parameter_listener) |
+ => (CommandBuffer? gles2_client); |
+}; |