blob: c6f656ba0c9684b01027308bdbb4662f0592dd52 [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
Pablo Gamito7eb7ee72020-08-05 10:57:05 +000028 required bool synchronous = 3;
29 required bool animation = 4;
30 optional Origin origin = 5;
31 optional uint64 id = 6;
Sahil Dhanjua05cafa2016-07-29 09:37:48 -070032}
33
Irvel31ab9d02016-07-18 08:42:29 -070034message SurfaceChange {
35 required int32 id = 1;
Vishnu Nairdcce0e22018-08-23 08:35:19 -070036 reserved 7;
Irvel31ab9d02016-07-18 08:42:29 -070037 oneof SurfaceChange {
38 PositionChange position = 2;
39 SizeChange size = 3;
40 AlphaChange alpha = 4;
41 LayerChange layer = 5;
42 CropChange crop = 6;
Irvel31ab9d02016-07-18 08:42:29 -070043 MatrixChange matrix = 8;
Irvel31ab9d02016-07-18 08:42:29 -070044 TransparentRegionHintChange transparent_region_hint = 10;
45 LayerStackChange layer_stack = 11;
46 HiddenFlagChange hidden_flag = 12;
47 OpaqueFlagChange opaque_flag = 13;
48 SecureFlagChange secure_flag = 14;
49 DeferredTransactionChange deferred_transaction = 15;
Lucas Dupin1b6531c2018-07-05 17:18:21 -070050 CornerRadiusChange corner_radius = 16;
Vishnu Nair456bbb22019-07-18 16:02:00 -070051 ReparentChange reparent = 17;
52 RelativeParentChange relative_parent = 18;
53 DetachChildrenChange detach_children = 19;
54 ReparentChildrenChange reparent_children = 20;
Lucas Dupin19c8f0e2019-11-25 17:55:44 -080055 BackgroundBlurRadiusChange background_blur_radius = 21;
Vishnu Nair95a1ed42019-12-06 12:25:11 -080056 ShadowRadiusChange shadow_radius = 22;
Lucas Dupinc3800b82020-10-02 16:24:48 -070057 BlurRegionsChange blur_regions = 23;
Sahil Dhanjua05cafa2016-07-29 09:37:48 -070058 }
59}
60
61message PositionChange {
62 required float x = 1;
63 required float y = 2;
64}
65
66message SizeChange {
67 required uint32 w = 1;
68 required uint32 h = 2;
69}
70
71message AlphaChange {
72 required float alpha = 1;
73}
74
Lucas Dupin1b6531c2018-07-05 17:18:21 -070075message CornerRadiusChange {
76 required float corner_radius = 1;
77}
78
Lucas Dupin19c8f0e2019-11-25 17:55:44 -080079message BackgroundBlurRadiusChange {
80 required float background_blur_radius = 1;
81}
82
Sahil Dhanjua05cafa2016-07-29 09:37:48 -070083message LayerChange {
84 required uint32 layer = 1;
85}
86
87message CropChange {
88 required Rectangle rectangle = 1;
89}
90
Sahil Dhanjua05cafa2016-07-29 09:37:48 -070091message MatrixChange {
92 required float dsdx = 1;
93 required float dtdx = 2;
94 required float dsdy = 3;
95 required float dtdy = 4;
96}
97
Sahil Dhanjua05cafa2016-07-29 09:37:48 -070098message TransparentRegionHintChange {
99 repeated Rectangle region = 1;
100}
101
102message LayerStackChange {
103 required uint32 layer_stack = 1;
104}
105
106message HiddenFlagChange {
107 required bool hidden_flag = 1;
108}
109
110message OpaqueFlagChange {
111 required bool opaque_flag = 1;
112}
113
114message SecureFlagChange {
115 required bool secure_flag = 1;
116}
117
118message DeferredTransactionChange {
Irvel31ab9d02016-07-18 08:42:29 -0700119 required int32 layer_id = 1;
Sahil Dhanjua05cafa2016-07-29 09:37:48 -0700120 required uint64 frame_number = 2;
121}
122
Irvel31ab9d02016-07-18 08:42:29 -0700123message DisplayChange {
124 required int32 id = 1;
125
126 oneof DisplayChange {
127 DispSurfaceChange surface = 2;
128 LayerStackChange layer_stack = 3;
129 SizeChange size = 4;
130 ProjectionChange projection = 5;
131 }
132}
133
134message DispSurfaceChange {
135 required uint64 buffer_queue_id = 1;
136 required string buffer_queue_name = 2;
137}
138
139message ProjectionChange {
140 required int32 orientation = 1;
141 required Rectangle viewport = 2;
142 required Rectangle frame = 3;
143}
144
Sahil Dhanjua05cafa2016-07-29 09:37:48 -0700145message Rectangle {
146 required int32 left = 1;
147 required int32 top = 2;
148 required int32 right = 3;
149 required int32 bottom = 4;
150}
151
Irvel31ab9d02016-07-18 08:42:29 -0700152message SurfaceCreation {
153 required int32 id = 1;
154 required string name = 2;
155 required uint32 w = 3;
156 required uint32 h = 4;
Sahil Dhanjua05cafa2016-07-29 09:37:48 -0700157}
158
Irvel31ab9d02016-07-18 08:42:29 -0700159message SurfaceDeletion {
160 required int32 id = 1;
Sahil Dhanjua05cafa2016-07-29 09:37:48 -0700161}
162
163message BufferUpdate {
Irvel31ab9d02016-07-18 08:42:29 -0700164 required int32 id = 1;
165 required uint32 w = 2;
166 required uint32 h = 3;
167 required uint64 frame_number = 4;
Sahil Dhanjua05cafa2016-07-29 09:37:48 -0700168}
169
170message VSyncEvent {
171 required int64 when = 1;
172}
Irvel31ab9d02016-07-18 08:42:29 -0700173
174message DisplayCreation {
175 required int32 id = 1;
176 required string name = 2;
Dominik Laskowski075d3172018-05-24 15:50:06 -0700177 optional uint64 display_id = 3;
Irvel31ab9d02016-07-18 08:42:29 -0700178 required bool is_secure = 4;
179}
180
181message DisplayDeletion {
182 required int32 id = 1;
183}
184
185message PowerModeUpdate {
186 required int32 id = 1;
187 required int32 mode = 2;
188}
Vishnu Nair456bbb22019-07-18 16:02:00 -0700189
190message ReparentChange {
191 required int32 parent_id = 1;
192}
193
194message ReparentChildrenChange {
195 required int32 parent_id = 1;
196}
197
198message RelativeParentChange {
199 required int32 relative_parent_id = 1;
200 required int32 z = 2;
201}
202
203message DetachChildrenChange {
204 required bool detach_children = 1;
205}
Vishnu Nair95a1ed42019-12-06 12:25:11 -0800206
207message ShadowRadiusChange {
208 required float radius = 1;
Pablo Gamito3e8f0e62020-06-22 15:55:39 +0000209}
210
Lucas Dupinc3800b82020-10-02 16:24:48 -0700211message BlurRegionsChange {
212 repeated BlurRegionChange blur_regions = 1;
213}
214
215message BlurRegionChange {
216 required uint32 blur_radius = 1;
217 required float corner_radius_tl = 2;
218 required float corner_radius_tr = 3;
219 required float corner_radius_bl = 4;
220 required float corner_radius_br = 5;
221 required float alpha = 6;
222 required int32 left = 7;
223 required int32 top = 8;
224 required int32 right = 9;
225 required int32 bottom = 10;
226}
227
Pablo Gamito3e8f0e62020-06-22 15:55:39 +0000228message Origin {
229 required int32 pid = 1;
230 required int32 uid = 2;
Vishnu Nair95a1ed42019-12-06 12:25:11 -0800231}