blob: b57409867f6ae18f6d5ec5485efdb8121593af8a [file] [log] [blame]
Sahil Dhanjua05cafa2016-07-29 09:37:48 -07001syntax = "proto2";
Colin Cross63549382016-10-26 12:52:53 -07002option optimize_for = LITE_RUNTIME;
Robert Delgadocb129942019-07-23 16:28:20 -07003package android.surfaceflinger;
Sahil Dhanjua05cafa2016-07-29 09:37:48 -07004
5message Trace {
6 repeated Increment increment = 1;
7}
8
9message Increment {
Irvel31ab9d02016-07-18 08:42:29 -070010 required int64 time_stamp = 1;
Sahil Dhanjua05cafa2016-07-29 09:37:48 -070011
12 oneof increment {
Irvel31ab9d02016-07-18 08:42:29 -070013 Transaction transaction = 2;
14 SurfaceCreation surface_creation = 3;
15 SurfaceDeletion surface_deletion = 4;
16 BufferUpdate buffer_update = 5;
17 VSyncEvent vsync_event = 6;
18 DisplayCreation display_creation = 7;
19 DisplayDeletion display_deletion = 8;
20 PowerModeUpdate power_mode_update = 9;
Sahil Dhanjua05cafa2016-07-29 09:37:48 -070021 }
22}
23
24message Transaction {
Irvel31ab9d02016-07-18 08:42:29 -070025 repeated SurfaceChange surface_change = 1;
26 repeated DisplayChange display_change = 2;
Sahil Dhanjua05cafa2016-07-29 09:37:48 -070027
Irvel31ab9d02016-07-18 08:42:29 -070028 required bool synchronous = 3;
29 required bool animation = 4;
Sahil Dhanjua05cafa2016-07-29 09:37:48 -070030}
31
Irvel31ab9d02016-07-18 08:42:29 -070032message SurfaceChange {
33 required int32 id = 1;
Vishnu Nairdcce0e22018-08-23 08:35:19 -070034 reserved 7;
Irvel31ab9d02016-07-18 08:42:29 -070035 oneof SurfaceChange {
36 PositionChange position = 2;
37 SizeChange size = 3;
38 AlphaChange alpha = 4;
39 LayerChange layer = 5;
40 CropChange crop = 6;
Irvel31ab9d02016-07-18 08:42:29 -070041 MatrixChange matrix = 8;
42 OverrideScalingModeChange override_scaling_mode = 9;
43 TransparentRegionHintChange transparent_region_hint = 10;
44 LayerStackChange layer_stack = 11;
45 HiddenFlagChange hidden_flag = 12;
46 OpaqueFlagChange opaque_flag = 13;
47 SecureFlagChange secure_flag = 14;
48 DeferredTransactionChange deferred_transaction = 15;
Lucas Dupin1b6531c2018-07-05 17:18:21 -070049 CornerRadiusChange corner_radius = 16;
Vishnu Nair456bbb22019-07-18 16:02:00 -070050 ReparentChange reparent = 17;
51 RelativeParentChange relative_parent = 18;
52 DetachChildrenChange detach_children = 19;
53 ReparentChildrenChange reparent_children = 20;
Lucas Dupin19c8f0e2019-11-25 17:55:44 -080054 BackgroundBlurRadiusChange background_blur_radius = 21;
Vishnu Nair95a1ed42019-12-06 12:25:11 -080055 ShadowRadiusChange shadow_radius = 22;
Sahil Dhanjua05cafa2016-07-29 09:37:48 -070056 }
57}
58
59message PositionChange {
60 required float x = 1;
61 required float y = 2;
62}
63
64message SizeChange {
65 required uint32 w = 1;
66 required uint32 h = 2;
67}
68
69message AlphaChange {
70 required float alpha = 1;
71}
72
Lucas Dupin1b6531c2018-07-05 17:18:21 -070073message CornerRadiusChange {
74 required float corner_radius = 1;
75}
76
Lucas Dupin19c8f0e2019-11-25 17:55:44 -080077message BackgroundBlurRadiusChange {
78 required float background_blur_radius = 1;
79}
80
Sahil Dhanjua05cafa2016-07-29 09:37:48 -070081message LayerChange {
82 required uint32 layer = 1;
83}
84
85message CropChange {
86 required Rectangle rectangle = 1;
87}
88
Sahil Dhanjua05cafa2016-07-29 09:37:48 -070089message MatrixChange {
90 required float dsdx = 1;
91 required float dtdx = 2;
92 required float dsdy = 3;
93 required float dtdy = 4;
94}
95
96message OverrideScalingModeChange {
97 required int32 override_scaling_mode = 1;
98}
99
100message TransparentRegionHintChange {
101 repeated Rectangle region = 1;
102}
103
104message LayerStackChange {
105 required uint32 layer_stack = 1;
106}
107
108message HiddenFlagChange {
109 required bool hidden_flag = 1;
110}
111
112message OpaqueFlagChange {
113 required bool opaque_flag = 1;
114}
115
116message SecureFlagChange {
117 required bool secure_flag = 1;
118}
119
120message DeferredTransactionChange {
Irvel31ab9d02016-07-18 08:42:29 -0700121 required int32 layer_id = 1;
Sahil Dhanjua05cafa2016-07-29 09:37:48 -0700122 required uint64 frame_number = 2;
123}
124
Irvel31ab9d02016-07-18 08:42:29 -0700125message DisplayChange {
126 required int32 id = 1;
127
128 oneof DisplayChange {
129 DispSurfaceChange surface = 2;
130 LayerStackChange layer_stack = 3;
131 SizeChange size = 4;
132 ProjectionChange projection = 5;
133 }
134}
135
136message DispSurfaceChange {
137 required uint64 buffer_queue_id = 1;
138 required string buffer_queue_name = 2;
139}
140
141message ProjectionChange {
142 required int32 orientation = 1;
143 required Rectangle viewport = 2;
144 required Rectangle frame = 3;
145}
146
Sahil Dhanjua05cafa2016-07-29 09:37:48 -0700147message Rectangle {
148 required int32 left = 1;
149 required int32 top = 2;
150 required int32 right = 3;
151 required int32 bottom = 4;
152}
153
Irvel31ab9d02016-07-18 08:42:29 -0700154message SurfaceCreation {
155 required int32 id = 1;
156 required string name = 2;
157 required uint32 w = 3;
158 required uint32 h = 4;
Sahil Dhanjua05cafa2016-07-29 09:37:48 -0700159}
160
Irvel31ab9d02016-07-18 08:42:29 -0700161message SurfaceDeletion {
162 required int32 id = 1;
Sahil Dhanjua05cafa2016-07-29 09:37:48 -0700163}
164
165message BufferUpdate {
Irvel31ab9d02016-07-18 08:42:29 -0700166 required int32 id = 1;
167 required uint32 w = 2;
168 required uint32 h = 3;
169 required uint64 frame_number = 4;
Sahil Dhanjua05cafa2016-07-29 09:37:48 -0700170}
171
172message VSyncEvent {
173 required int64 when = 1;
174}
Irvel31ab9d02016-07-18 08:42:29 -0700175
176message DisplayCreation {
177 required int32 id = 1;
178 required string name = 2;
Dominik Laskowski075d3172018-05-24 15:50:06 -0700179 optional uint64 display_id = 3;
Irvel31ab9d02016-07-18 08:42:29 -0700180 required bool is_secure = 4;
181}
182
183message DisplayDeletion {
184 required int32 id = 1;
185}
186
187message PowerModeUpdate {
188 required int32 id = 1;
189 required int32 mode = 2;
190}
Vishnu Nair456bbb22019-07-18 16:02:00 -0700191
192message ReparentChange {
193 required int32 parent_id = 1;
194}
195
196message ReparentChildrenChange {
197 required int32 parent_id = 1;
198}
199
200message RelativeParentChange {
201 required int32 relative_parent_id = 1;
202 required int32 z = 2;
203}
204
205message DetachChildrenChange {
206 required bool detach_children = 1;
207}
Vishnu Nair95a1ed42019-12-06 12:25:11 -0800208
209message ShadowRadiusChange {
210 required float radius = 1;
211}