blob: bbf4f8dd38a736ae04c7779852184616000ff0c2 [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;
Sahil Dhanjua05cafa2016-07-29 09:37:48 -070057 }
58}
59
60message PositionChange {
61 required float x = 1;
62 required float y = 2;
63}
64
65message SizeChange {
66 required uint32 w = 1;
67 required uint32 h = 2;
68}
69
70message AlphaChange {
71 required float alpha = 1;
72}
73
Lucas Dupin1b6531c2018-07-05 17:18:21 -070074message CornerRadiusChange {
75 required float corner_radius = 1;
76}
77
Lucas Dupin19c8f0e2019-11-25 17:55:44 -080078message BackgroundBlurRadiusChange {
79 required float background_blur_radius = 1;
80}
81
Sahil Dhanjua05cafa2016-07-29 09:37:48 -070082message LayerChange {
83 required uint32 layer = 1;
84}
85
86message CropChange {
87 required Rectangle rectangle = 1;
88}
89
Sahil Dhanjua05cafa2016-07-29 09:37:48 -070090message MatrixChange {
91 required float dsdx = 1;
92 required float dtdx = 2;
93 required float dsdy = 3;
94 required float dtdy = 4;
95}
96
Sahil Dhanjua05cafa2016-07-29 09:37:48 -070097message TransparentRegionHintChange {
98 repeated Rectangle region = 1;
99}
100
101message LayerStackChange {
102 required uint32 layer_stack = 1;
103}
104
105message HiddenFlagChange {
106 required bool hidden_flag = 1;
107}
108
109message OpaqueFlagChange {
110 required bool opaque_flag = 1;
111}
112
113message SecureFlagChange {
114 required bool secure_flag = 1;
115}
116
117message DeferredTransactionChange {
Irvel31ab9d02016-07-18 08:42:29 -0700118 required int32 layer_id = 1;
Sahil Dhanjua05cafa2016-07-29 09:37:48 -0700119 required uint64 frame_number = 2;
120}
121
Irvel31ab9d02016-07-18 08:42:29 -0700122message DisplayChange {
123 required int32 id = 1;
124
125 oneof DisplayChange {
126 DispSurfaceChange surface = 2;
127 LayerStackChange layer_stack = 3;
128 SizeChange size = 4;
129 ProjectionChange projection = 5;
130 }
131}
132
133message DispSurfaceChange {
134 required uint64 buffer_queue_id = 1;
135 required string buffer_queue_name = 2;
136}
137
138message ProjectionChange {
139 required int32 orientation = 1;
140 required Rectangle viewport = 2;
141 required Rectangle frame = 3;
142}
143
Sahil Dhanjua05cafa2016-07-29 09:37:48 -0700144message Rectangle {
145 required int32 left = 1;
146 required int32 top = 2;
147 required int32 right = 3;
148 required int32 bottom = 4;
149}
150
Irvel31ab9d02016-07-18 08:42:29 -0700151message SurfaceCreation {
152 required int32 id = 1;
153 required string name = 2;
154 required uint32 w = 3;
155 required uint32 h = 4;
Sahil Dhanjua05cafa2016-07-29 09:37:48 -0700156}
157
Irvel31ab9d02016-07-18 08:42:29 -0700158message SurfaceDeletion {
159 required int32 id = 1;
Sahil Dhanjua05cafa2016-07-29 09:37:48 -0700160}
161
162message BufferUpdate {
Irvel31ab9d02016-07-18 08:42:29 -0700163 required int32 id = 1;
164 required uint32 w = 2;
165 required uint32 h = 3;
166 required uint64 frame_number = 4;
Sahil Dhanjua05cafa2016-07-29 09:37:48 -0700167}
168
169message VSyncEvent {
170 required int64 when = 1;
171}
Irvel31ab9d02016-07-18 08:42:29 -0700172
173message DisplayCreation {
174 required int32 id = 1;
175 required string name = 2;
Dominik Laskowski075d3172018-05-24 15:50:06 -0700176 optional uint64 display_id = 3;
Irvel31ab9d02016-07-18 08:42:29 -0700177 required bool is_secure = 4;
178}
179
180message DisplayDeletion {
181 required int32 id = 1;
182}
183
184message PowerModeUpdate {
185 required int32 id = 1;
186 required int32 mode = 2;
187}
Vishnu Nair456bbb22019-07-18 16:02:00 -0700188
189message ReparentChange {
190 required int32 parent_id = 1;
191}
192
193message ReparentChildrenChange {
194 required int32 parent_id = 1;
195}
196
197message RelativeParentChange {
198 required int32 relative_parent_id = 1;
199 required int32 z = 2;
200}
201
202message DetachChildrenChange {
203 required bool detach_children = 1;
204}
Vishnu Nair95a1ed42019-12-06 12:25:11 -0800205
206message ShadowRadiusChange {
207 required float radius = 1;
Pablo Gamito3e8f0e62020-06-22 15:55:39 +0000208}
209
210message Origin {
211 required int32 pid = 1;
212 required int32 uid = 2;
Vishnu Nair95a1ed42019-12-06 12:25:11 -0800213}