//
// Copyright (C) 2023 The Android Open Source Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
//      http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.

// @generated by protoc-gen-es v2.2.2 with parameter "target=ts"
// @generated from file protos/perfetto/trace/android/surfaceflinger_common.proto (package perfetto.protos, syntax proto2)
/* eslint-disable */

import type { GenEnum, GenFile, GenMessage } from "@bufbuild/protobuf/codegenv1";
import { enumDesc, fileDesc, messageDesc } from "@bufbuild/protobuf/codegenv1";
import type { RectProto } from "./graphics/rect_pb";
import { file_protos_perfetto_trace_android_graphics_rect } from "./graphics/rect_pb";
import type { Message } from "@bufbuild/protobuf";

/**
 * Describes the file protos/perfetto/trace/android/surfaceflinger_common.proto.
 */
export const file_protos_perfetto_trace_android_surfaceflinger_common: GenFile = /*@__PURE__*/
  fileDesc("Cjlwcm90b3MvcGVyZmV0dG8vdHJhY2UvYW5kcm9pZC9zdXJmYWNlZmxpbmdlcl9jb21tb24ucHJvdG8SD3BlcmZldHRvLnByb3RvcyI9CgtSZWdpb25Qcm90bxIoCgRyZWN0GAIgAygLMhoucGVyZmV0dG8ucHJvdG9zLlJlY3RQcm90b0oECAEQAiIhCglTaXplUHJvdG8SCQoBdxgBIAEoBRIJCgFoGAIgASgFIlYKDlRyYW5zZm9ybVByb3RvEgwKBGRzZHgYASABKAISDAoEZHRkeBgCIAEoAhIMCgRkc2R5GAMgASgCEgwKBGR0ZHkYBCABKAISDAoEdHlwZRgFIAEoBSI4CgpDb2xvclByb3RvEgkKAXIYASABKAISCQoBZxgCIAEoAhIJCgFiGAMgASgCEgkKAWEYBCABKAIivwQKFElucHV0V2luZG93SW5mb1Byb3RvEhsKE2xheW91dF9wYXJhbXNfZmxhZ3MYASABKA0SGgoSbGF5b3V0X3BhcmFtc190eXBlGAIgASgFEikKBWZyYW1lGAMgASgLMhoucGVyZmV0dG8ucHJvdG9zLlJlY3RQcm90bxI2ChB0b3VjaGFibGVfcmVnaW9uGAQgASgLMhwucGVyZmV0dG8ucHJvdG9zLlJlZ2lvblByb3RvEhUKDXN1cmZhY2VfaW5zZXQYBSABKAUSDwoHdmlzaWJsZRgGIAEoCBIcChBjYW5fcmVjZWl2ZV9rZXlzGAcgASgIQgIYARIRCglmb2N1c2FibGUYCCABKAgSFQoNaGFzX3dhbGxwYXBlchgJIAEoCBIbChNnbG9iYWxfc2NhbGVfZmFjdG9yGAogASgCEhoKDndpbmRvd194X3NjYWxlGAsgASgCQgIYARIaCg53aW5kb3dfeV9zY2FsZRgMIAEoAkICGAESFQoNY3JvcF9sYXllcl9pZBgNIAEoBRIqCiJyZXBsYWNlX3RvdWNoYWJsZV9yZWdpb25fd2l0aF9jcm9wGA4gASgIEjkKFXRvdWNoYWJsZV9yZWdpb25fY3JvcBgPIAEoCzIaLnBlcmZldHRvLnByb3Rvcy5SZWN0UHJvdG8SMgoJdHJhbnNmb3JtGBAgASgLMh8ucGVyZmV0dG8ucHJvdG9zLlRyYW5zZm9ybVByb3RvEhQKDGlucHV0X2NvbmZpZxgRIAEoDSLSAQoKQmx1clJlZ2lvbhITCgtibHVyX3JhZGl1cxgBIAEoDRIYChBjb3JuZXJfcmFkaXVzX3RsGAIgASgNEhgKEGNvcm5lcl9yYWRpdXNfdHIYAyABKA0SGAoQY29ybmVyX3JhZGl1c19ibBgEIAEoDRIYChBjb3JuZXJfcmFkaXVzX2JyGAUgASgCEg0KBWFscGhhGAYgASgCEgwKBGxlZnQYByABKAUSCwoDdG9wGAggASgFEg0KBXJpZ2h0GAkgASgFEg4KBmJvdHRvbRgKIAEoBSImChNDb2xvclRyYW5zZm9ybVByb3RvEg8KA3ZhbBgBIAMoAkICEAEqNgoOVHJ1c3RlZE92ZXJsYXkSCQoFVU5TRVQQABIMCghESVNBQkxFRBABEgsKB0VOQUJMRUQQAg", [file_protos_perfetto_trace_android_graphics_rect]);

/**
 * @generated from message perfetto.protos.RegionProto
 */
export type RegionProto = Message<"perfetto.protos.RegionProto"> & {
  /**
   * @generated from field: repeated perfetto.protos.RectProto rect = 2;
   */
  rect: RectProto[];
};

/**
 * Describes the message perfetto.protos.RegionProto.
 * Use `create(RegionProtoSchema)` to create a new message.
 */
export const RegionProtoSchema: GenMessage<RegionProto> = /*@__PURE__*/
  messageDesc(file_protos_perfetto_trace_android_surfaceflinger_common, 0);

/**
 * @generated from message perfetto.protos.SizeProto
 */
export type SizeProto = Message<"perfetto.protos.SizeProto"> & {
  /**
   * @generated from field: optional int32 w = 1;
   */
  w: number;

  /**
   * @generated from field: optional int32 h = 2;
   */
  h: number;
};

/**
 * Describes the message perfetto.protos.SizeProto.
 * Use `create(SizeProtoSchema)` to create a new message.
 */
export const SizeProtoSchema: GenMessage<SizeProto> = /*@__PURE__*/
  messageDesc(file_protos_perfetto_trace_android_surfaceflinger_common, 1);

/**
 * @generated from message perfetto.protos.TransformProto
 */
export type TransformProto = Message<"perfetto.protos.TransformProto"> & {
  /**
   * @generated from field: optional float dsdx = 1;
   */
  dsdx: number;

  /**
   * @generated from field: optional float dtdx = 2;
   */
  dtdx: number;

  /**
   * @generated from field: optional float dsdy = 3;
   */
  dsdy: number;

  /**
   * @generated from field: optional float dtdy = 4;
   */
  dtdy: number;

  /**
   * @generated from field: optional int32 type = 5;
   */
  type: number;
};

/**
 * Describes the message perfetto.protos.TransformProto.
 * Use `create(TransformProtoSchema)` to create a new message.
 */
export const TransformProtoSchema: GenMessage<TransformProto> = /*@__PURE__*/
  messageDesc(file_protos_perfetto_trace_android_surfaceflinger_common, 2);

/**
 * @generated from message perfetto.protos.ColorProto
 */
export type ColorProto = Message<"perfetto.protos.ColorProto"> & {
  /**
   * @generated from field: optional float r = 1;
   */
  r: number;

  /**
   * @generated from field: optional float g = 2;
   */
  g: number;

  /**
   * @generated from field: optional float b = 3;
   */
  b: number;

  /**
   * @generated from field: optional float a = 4;
   */
  a: number;
};

/**
 * Describes the message perfetto.protos.ColorProto.
 * Use `create(ColorProtoSchema)` to create a new message.
 */
export const ColorProtoSchema: GenMessage<ColorProto> = /*@__PURE__*/
  messageDesc(file_protos_perfetto_trace_android_surfaceflinger_common, 3);

/**
 * @generated from message perfetto.protos.InputWindowInfoProto
 */
export type InputWindowInfoProto = Message<"perfetto.protos.InputWindowInfoProto"> & {
  /**
   * @generated from field: optional uint32 layout_params_flags = 1;
   */
  layoutParamsFlags: number;

  /**
   * @generated from field: optional int32 layout_params_type = 2;
   */
  layoutParamsType: number;

  /**
   * @generated from field: optional perfetto.protos.RectProto frame = 3;
   */
  frame?: RectProto;

  /**
   * @generated from field: optional perfetto.protos.RegionProto touchable_region = 4;
   */
  touchableRegion?: RegionProto;

  /**
   * @generated from field: optional int32 surface_inset = 5;
   */
  surfaceInset: number;

  /**
   * @generated from field: optional bool visible = 6;
   */
  visible: boolean;

  /**
   * @generated from field: optional bool can_receive_keys = 7 [deprecated = true];
   * @deprecated
   */
  canReceiveKeys: boolean;

  /**
   * @generated from field: optional bool focusable = 8;
   */
  focusable: boolean;

  /**
   * @generated from field: optional bool has_wallpaper = 9;
   */
  hasWallpaper: boolean;

  /**
   * @generated from field: optional float global_scale_factor = 10;
   */
  globalScaleFactor: number;

  /**
   * @generated from field: optional float window_x_scale = 11 [deprecated = true];
   * @deprecated
   */
  windowXScale: number;

  /**
   * @generated from field: optional float window_y_scale = 12 [deprecated = true];
   * @deprecated
   */
  windowYScale: number;

  /**
   * @generated from field: optional int32 crop_layer_id = 13;
   */
  cropLayerId: number;

  /**
   * @generated from field: optional bool replace_touchable_region_with_crop = 14;
   */
  replaceTouchableRegionWithCrop: boolean;

  /**
   * @generated from field: optional perfetto.protos.RectProto touchable_region_crop = 15;
   */
  touchableRegionCrop?: RectProto;

  /**
   * @generated from field: optional perfetto.protos.TransformProto transform = 16;
   */
  transform?: TransformProto;

  /**
   * @generated from field: optional uint32 input_config = 17;
   */
  inputConfig: number;
};

/**
 * Describes the message perfetto.protos.InputWindowInfoProto.
 * Use `create(InputWindowInfoProtoSchema)` to create a new message.
 */
export const InputWindowInfoProtoSchema: GenMessage<InputWindowInfoProto> = /*@__PURE__*/
  messageDesc(file_protos_perfetto_trace_android_surfaceflinger_common, 4);

/**
 * @generated from message perfetto.protos.BlurRegion
 */
export type BlurRegion = Message<"perfetto.protos.BlurRegion"> & {
  /**
   * @generated from field: optional uint32 blur_radius = 1;
   */
  blurRadius: number;

  /**
   * @generated from field: optional uint32 corner_radius_tl = 2;
   */
  cornerRadiusTl: number;

  /**
   * @generated from field: optional uint32 corner_radius_tr = 3;
   */
  cornerRadiusTr: number;

  /**
   * @generated from field: optional uint32 corner_radius_bl = 4;
   */
  cornerRadiusBl: number;

  /**
   * @generated from field: optional float corner_radius_br = 5;
   */
  cornerRadiusBr: number;

  /**
   * @generated from field: optional float alpha = 6;
   */
  alpha: number;

  /**
   * @generated from field: optional int32 left = 7;
   */
  left: number;

  /**
   * @generated from field: optional int32 top = 8;
   */
  top: number;

  /**
   * @generated from field: optional int32 right = 9;
   */
  right: number;

  /**
   * @generated from field: optional int32 bottom = 10;
   */
  bottom: number;
};

/**
 * Describes the message perfetto.protos.BlurRegion.
 * Use `create(BlurRegionSchema)` to create a new message.
 */
export const BlurRegionSchema: GenMessage<BlurRegion> = /*@__PURE__*/
  messageDesc(file_protos_perfetto_trace_android_surfaceflinger_common, 5);

/**
 * @generated from message perfetto.protos.ColorTransformProto
 */
export type ColorTransformProto = Message<"perfetto.protos.ColorTransformProto"> & {
  /**
   * This will be a 4x4 matrix of float values
   *
   * @generated from field: repeated float val = 1 [packed = true];
   */
  val: number[];
};

/**
 * Describes the message perfetto.protos.ColorTransformProto.
 * Use `create(ColorTransformProtoSchema)` to create a new message.
 */
export const ColorTransformProtoSchema: GenMessage<ColorTransformProto> = /*@__PURE__*/
  messageDesc(file_protos_perfetto_trace_android_surfaceflinger_common, 6);

/**
 * @generated from enum perfetto.protos.TrustedOverlay
 */
export enum TrustedOverlay {
  /**
   * @generated from enum value: UNSET = 0;
   */
  UNSET = 0,

  /**
   * @generated from enum value: DISABLED = 1;
   */
  DISABLED = 1,

  /**
   * @generated from enum value: ENABLED = 2;
   */
  ENABLED = 2,
}

/**
 * Describes the enum perfetto.protos.TrustedOverlay.
 */
export const TrustedOverlaySchema: GenEnum<TrustedOverlay> = /*@__PURE__*/
  enumDesc(file_protos_perfetto_trace_android_surfaceflinger_common, 0);

