Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(2655)

Unified Diff: cc/ipc/surface_id.mojom

Issue 2136413002: Update Surface ID Terminology (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fix webkit_unit_tests Created 4 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: cc/ipc/surface_id.mojom
diff --git a/cc/ipc/surface_id.mojom b/cc/ipc/surface_id.mojom
index f4f7427274192535556dcae04a93fa0905aecc2d..b0e6556d9b80adde33293482f7afb8038e199f90 100644
--- a/cc/ipc/surface_id.mojom
+++ b/cc/ipc/surface_id.mojom
@@ -4,19 +4,27 @@
module cc.mojom;
-// A surface ID is composed of three parts: a namespace, a local ID, and a
-// nonce. The local part and nonce are allocated by the client using any scheme
-// that avoids duplicates and makes IDs unguessable respectively. The namespace
-// is allocated by the service and will be different for each client.
+// A surface id is composed of four parts: a gpu id, a client id, a local id,
+// and a nonce. The local part and nonce are allocated by the client using any
+// scheme that avoids duplicates and makes ids unguessable respectively. The gpu
+// id is allocated by the service and uniquely identifies the generation of the
+// gpu service. The client id is allocated by the service and will be different
+// for each client.
//
-// The special id_namespace value 0 is equivalent to the namespace of the
-// client. This can be used to create, destroy and submit frames to
-// surfaces before learning the namespace and to reference other surfaces
-// owned by the same client. The actual id namespace must be used to pass
-// surface ids to other clients for them to reference.
+// The special gpu_id value 0 indicates software compositing. The special
+// client_id value 0 is equivalent to the client id of the current client. This
+// can be used to create, destroy and submit frames to surfaces before learning
+// the namespace and to reference other surfaces owned by the same client. The
+// actual client id must be used to pass surface ids to other clients for them
+// to reference.
struct SurfaceId {
- // A service allocated ID identifying a client.
- uint32 id_namespace;
+ // A service allocated id identifying the generation of the gpu service.
+ // TODO(fsamuel): We don't need this if the display compositor always lives
+ // in the same process as the gpu service.
piman 2016/07/12 20:57:19 TBH, I'm not sure that's true... This is to preven
Fady Samuel 2016/07/12 22:45:34 Well, I think I've confused myself. Really output_
+ uint32 gpu_id;
+
+ // A service allocated id identifying a client.
+ uint32 client_id;
// An identifier allocated by the client uniquely identifying a surface within
// a client process.

Powered by Google App Engine
This is Rietveld 408576698