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

Side by Side Diff: cc/proto/layer.proto

Issue 1527863002: Serialize PictureLayer properties. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Addressed comments Created 5 years 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 unified diff | Download patch
OLDNEW
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 syntax = "proto2"; 5 syntax = "proto2";
6 6
7 import "display_list_recording_source.proto";
8 import "size.proto";
9 import "rect.proto";
10 import "region.proto";
11
7 package cc.proto; 12 package cc.proto;
8 13
9 option optimize_for = LITE_RUNTIME; 14 option optimize_for = LITE_RUNTIME;
10 15
11 // Identifies the type of cc:Layer a LayerNode represents. It is used to 16 // Identifies the type of cc:Layer a LayerNode represents. It is used to
12 // facilitate reconstruction of a Layer of the correct type on the client. 17 // facilitate reconstruction of a Layer of the correct type on the client.
13 enum LayerType { 18 enum LayerType {
14 Base = 1; 19 UNKNOWN = 0;
20 LAYER = 1;
21 PICTURE_LAYER = 2;
15 22
16 // TODO(nyquist): Add the rest of the necessary LayerTypes. 23 // TODO(nyquist): Add the rest of the necessary LayerTypes.
17 }; 24 };
18 25
19 // Hierarchical structure for serializing the Layer tree. 26 // Hierarchical structure for serializing the Layer tree.
20 message LayerNode { 27 message LayerNode {
21 // required 28 // required
22 optional int32 id = 1; 29 optional int32 id = 1;
23 // required 30 // required
24 optional LayerType type = 2; 31 optional LayerType type = 2;
(...skipping 15 matching lines...) Expand all
40 optional int32 id = 1; 47 optional int32 id = 1;
41 // required 48 // required
42 optional bool needs_push_properties = 3; 49 optional bool needs_push_properties = 3;
43 // required 50 // required
44 optional int32 num_dependents_need_push_properties = 4; 51 optional int32 num_dependents_need_push_properties = 4;
45 52
46 // The properties below are only read if |needs_push_properties| is set. 53 // The properties below are only read if |needs_push_properties| is set.
47 // The Layer base class and each descendant have different proto messages 54 // The Layer base class and each descendant have different proto messages
48 // for their specific properties. 55 // for their specific properties.
49 optional BaseLayerProperties base = 5; 56 optional BaseLayerProperties base = 5;
57
58 // Only one of these fields may be set per LayerProperties.
59 // TODO(dtrainor): use a 'oneof' union when it's supported in Chromium. See
60 // crbug.com/570371.
61 optional PictureLayerProperties picture = 6;
50 } 62 }
51 63
52 message BaseLayerProperties { 64 message BaseLayerProperties {
53 // TODO(nyquist): Add all the required properties below. Huzzah! 65 // TODO(nyquist): Add all the required properties below. Huzzah!
54 } 66 }
67
68 message PictureLayerProperties {
69 optional DisplayListRecordingSource recording_source = 1;
70 optional Region invalidation = 2;
71 optional Rect last_updated_visible_layer_rect = 3;
72 optional bool is_mask = 4;
73 optional bool nearest_neighbor = 5;
74
75 optional int64 update_source_frame_number = 6;
76 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698