//
// Copyright (C) 2021 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/common/android_energy_consumer_descriptor.proto (package perfetto.protos, syntax proto2)
/* eslint-disable */

import type { GenFile, GenMessage } from "@bufbuild/protobuf/codegenv1";
import { fileDesc, messageDesc } from "@bufbuild/protobuf/codegenv1";
import type { Message } from "@bufbuild/protobuf";

/**
 * Describes the file protos/perfetto/common/android_energy_consumer_descriptor.proto.
 */
export const file_protos_perfetto_common_android_energy_consumer_descriptor: GenFile = /*@__PURE__*/
  fileDesc("Cj9wcm90b3MvcGVyZmV0dG8vY29tbW9uL2FuZHJvaWRfZW5lcmd5X2NvbnN1bWVyX2Rlc2NyaXB0b3IucHJvdG8SD3BlcmZldHRvLnByb3RvcyJgChVBbmRyb2lkRW5lcmd5Q29uc3VtZXISGgoSZW5lcmd5X2NvbnN1bWVyX2lkGAEgASgFEg8KB29yZGluYWwYAiABKAUSDAoEdHlwZRgDIAEoCRIMCgRuYW1lGAQgASgJImMKH0FuZHJvaWRFbmVyZ3lDb25zdW1lckRlc2NyaXB0b3ISQAoQZW5lcmd5X2NvbnN1bWVycxgBIAMoCzImLnBlcmZldHRvLnByb3Rvcy5BbmRyb2lkRW5lcmd5Q29uc3VtZXI");

/**
 * Energy consumer based on aidl class:
 * android.hardware.power.stats.EnergyConsumer.
 *
 * @generated from message perfetto.protos.AndroidEnergyConsumer
 */
export type AndroidEnergyConsumer = Message<"perfetto.protos.AndroidEnergyConsumer"> & {
  /**
   * Unique ID of this energy consumer.  Matches the ID in a
   * AndroidEnergyEstimationBreakdown.
   *
   * @generated from field: optional int32 energy_consumer_id = 1;
   */
  energyConsumerId: number;

  /**
   * For a group of energy consumers of the same logical type, sorting by
   * ordinal gives their physical order. Ordinals must be consecutive integers
   * starting from 0.
   *
   * @generated from field: optional int32 ordinal = 2;
   */
  ordinal: number;

  /**
   * Type of this energy consumer.
   *
   * @generated from field: optional string type = 3;
   */
  type: string;

  /**
   * Unique name of this energy consumer. Vendor/device specific. Opaque to
   * framework.
   *
   * @generated from field: optional string name = 4;
   */
  name: string;
};

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

/**
 * @generated from message perfetto.protos.AndroidEnergyConsumerDescriptor
 */
export type AndroidEnergyConsumerDescriptor = Message<"perfetto.protos.AndroidEnergyConsumerDescriptor"> & {
  /**
   * @generated from field: repeated perfetto.protos.AndroidEnergyConsumer energy_consumers = 1;
   */
  energyConsumers: AndroidEnergyConsumer[];
};

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

