# -*- coding: utf-8 -*-
# Generated by the protocol buffer compiler.  DO NOT EDIT!
# source: dmi/hw_events_mgmt_service.proto
"""Generated protocol buffer code."""
from google.protobuf.internal import enum_type_wrapper
from google.protobuf import descriptor as _descriptor
from google.protobuf import message as _message
from google.protobuf import reflection as _reflection
from google.protobuf import symbol_database as _symbol_database
# @@protoc_insertion_point(imports)

_sym_db = _symbol_database.Default()


from dmi import commons_pb2 as dmi_dot_commons__pb2
from dmi import hw_pb2 as dmi_dot_hw__pb2
from google.protobuf import timestamp_pb2 as google_dot_protobuf_dot_timestamp__pb2
from google.protobuf import empty_pb2 as google_dot_protobuf_dot_empty__pb2


DESCRIPTOR = _descriptor.FileDescriptor(
  name='dmi/hw_events_mgmt_service.proto',
  package='dmi',
  syntax='proto3',
  serialized_options=b'Z9github.com/opencord/device-management-interface/v3/go/dmi',
  create_key=_descriptor._internal_create_key,
  serialized_pb=b'\n dmi/hw_events_mgmt_service.proto\x12\x03\x64mi\x1a\x11\x64mi/commons.proto\x1a\x0c\x64mi/hw.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x1bgoogle/protobuf/empty.proto\"N\n\tValueType\x12\x11\n\x07int_val\x18\x01 \x01(\x03H\x00\x12\x12\n\x08uint_val\x18\x02 \x01(\x04H\x00\x12\x13\n\tfloat_val\x18\x03 \x01(\x02H\x00\x42\x05\n\x03val\"G\n\nWaterMarks\x12\x1c\n\x04high\x18\x01 \x01(\x0b\x32\x0e.dmi.ValueType\x12\x1b\n\x03low\x18\x02 \x01(\x0b\x32\x0e.dmi.ValueType\"]\n\nThresholds\x12 \n\x05upper\x18\x01 \x01(\x0b\x32\x0f.dmi.WaterMarksH\x00\x12 \n\x05lower\x18\x02 \x01(\x0b\x32\x0f.dmi.WaterMarksH\x00\x42\x0b\n\tthreshold\"c\n\x14ThresholdInformation\x12&\n\x0eobserved_value\x18\x01 \x01(\x0b\x32\x0e.dmi.ValueType\x12#\n\nthresholds\x18\x02 \x01(\x0b\x32\x0f.dmi.Thresholds\"g\n\x08\x45ventCfg\x12\x1f\n\x08\x65vent_id\x18\x01 \x01(\x0e\x32\r.dmi.EventIds\x12\x15\n\ris_configured\x18\x02 \x01(\x08\x12#\n\nthresholds\x18\x03 \x01(\x0b\x32\x0f.dmi.Thresholds\")\n\tEventsCfg\x12\x1c\n\x05items\x18\x01 \x03(\x0b\x32\r.dmi.EventCfg\"\xf8\x01\n\x12ListEventsResponse\x12\x1b\n\x06status\x18\x01 \x01(\x0e\x32\x0b.dmi.Status\x12.\n\x06reason\x18\x02 \x01(\x0e\x32\x1e.dmi.ListEventsResponse.Reason\x12\x1e\n\x06\x65vents\x18\x03 \x01(\x0b\x32\x0e.dmi.EventsCfg\x12\x15\n\rreason_detail\x18\x04 \x01(\t\"^\n\x06Reason\x12\x14\n\x10UNDEFINED_REASON\x10\x00\x12\x12\n\x0eUNKNOWN_DEVICE\x10\x01\x12\x12\n\x0eINTERNAL_ERROR\x10\x02\x12\x16\n\x12\x44\x45VICE_UNREACHABLE\x10\x03\"\x88\x01\n\x1a\x45ventsConfigurationRequest\x12\x1e\n\x0b\x64\x65vice_uuid\x18\x01 \x01(\x0b\x32\t.dmi.Uuid\x12!\n\x07\x63hanges\x18\x02 \x01(\x0b\x32\x0e.dmi.EventsCfgH\x00\x12\x1a\n\x10reset_to_default\x18\x03 \x01(\x08H\x00\x42\x0b\n\toperation\"\xfe\x01\n\x1b\x45ventsConfigurationResponse\x12\x1b\n\x06status\x18\x01 \x01(\x0e\x32\x0b.dmi.Status\x12\x37\n\x06reason\x18\x02 \x01(\x0e\x32\'.dmi.EventsConfigurationResponse.Reason\x12\x15\n\rreason_detail\x18\x03 \x01(\t\"r\n\x06Reason\x12\x14\n\x10UNDEFINED_REASON\x10\x00\x12\x12\n\x0eUNKNOWN_DEVICE\x10\x01\x12\x12\n\x0eINTERNAL_ERROR\x10\x02\x12\x12\n\x0eINVALID_CONFIG\x10\x03\x12\x16\n\x12\x44\x45VICE_UNREACHABLE\x10\x04\"j\n\rEventMetaData\x12\x1e\n\x0b\x64\x65vice_uuid\x18\x01 \x01(\x0b\x32\t.dmi.Uuid\x12!\n\x0e\x63omponent_uuid\x18\x02 \x01(\x0b\x32\t.dmi.Uuid\x12\x16\n\x0e\x63omponent_name\x18\x03 \x01(\t\"\xc8\x01\n\x05\x45vent\x12*\n\x0e\x65vent_metadata\x18\x01 \x01(\x0b\x32\x12.dmi.EventMetaData\x12\x1f\n\x08\x65vent_id\x18\x02 \x01(\x0e\x32\r.dmi.EventIds\x12-\n\traised_ts\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x31\n\x0ethreshold_info\x18\x04 \x01(\x0b\x32\x19.dmi.ThresholdInformation\x12\x10\n\x08\x61\x64\x64_info\x18\x05 \x01(\t*\xc5\x0f\n\x08\x45ventIds\x12\x18\n\x14\x45VENT_NAME_UNDEFINED\x10\x00\x12\x1e\n\x1a\x45VENT_TRANSCEIVER_PLUG_OUT\x10\x64\x12\x1d\n\x19\x45VENT_TRANSCEIVER_PLUG_IN\x10\x65\x12-\n)EVENT_TRANSCEIVER_VOLTAGE_ABOVE_THRESHOLD\x10\x66\x12-\n)EVENT_TRANSCEIVER_VOLTAGE_BELOW_THRESHOLD\x10g\x12\x31\n-EVENT_TRANSCEIVER_TEMPERATURE_ABOVE_THRESHOLD\x10h\x12\x31\n-EVENT_TRANSCEIVER_TEMPERATURE_BELOW_THRESHOLD\x10i\x12-\n)EVENT_TRANSCEIVER_CURRENT_ABOVE_THRESHOLD\x10j\x12-\n)EVENT_TRANSCEIVER_CURRENT_BELOW_THRESHOLD\x10k\x12.\n*EVENT_TRANSCEIVER_RX_POWER_ABOVE_THRESHOLD\x10l\x12.\n*EVENT_TRANSCEIVER_RX_POWER_BELOW_THRESHOLD\x10m\x12.\n*EVENT_TRANSCEIVER_TX_POWER_ABOVE_THRESHOLD\x10n\x12.\n*EVENT_TRANSCEIVER_TX_POWER_BELOW_THRESHOLD\x10o\x12\x1d\n\x19\x45VENT_TRANSCEIVER_FAILURE\x10p\x12\x37\n3EVENT_TRANSCEIVER_VOLTAGE_ABOVE_THRESHOLD_RECOVERED\x10q\x12\x37\n3EVENT_TRANSCEIVER_VOLTAGE_BELOW_THRESHOLD_RECOVERED\x10r\x12;\n7EVENT_TRANSCEIVER_TEMPERATURE_ABOVE_THRESHOLD_RECOVERED\x10s\x12;\n7EVENT_TRANSCEIVER_TEMPERATURE_BELOW_THRESHOLD_RECOVERED\x10t\x12\x37\n3EVENT_TRANSCEIVER_CURRENT_ABOVE_THRESHOLD_RECOVERED\x10u\x12\x37\n3EVENT_TRANSCEIVER_CURRENT_BELOW_THRESHOLD_RECOVERED\x10v\x12\x38\n4EVENT_TRANSCEIVER_RX_POWER_ABOVE_THRESHOLD_RECOVERED\x10w\x12\x38\n4EVENT_TRANSCEIVER_RX_POWER_BELOW_THRESHOLD_RECOVERED\x10x\x12\x38\n4EVENT_TRANSCEIVER_TX_POWER_ABOVE_THRESHOLD_RECOVERED\x10y\x12\x38\n4EVENT_TRANSCEIVER_TX_POWER_BELOW_THRESHOLD_RECOVERED\x10z\x12\'\n#EVENT_TRANSCEIVER_FAILURE_RECOVERED\x10{\x12\x17\n\x12\x45VENT_PSU_PLUG_OUT\x10\xc8\x01\x12\x16\n\x11\x45VENT_PSU_PLUG_IN\x10\xc9\x01\x12\x16\n\x11\x45VENT_PSU_FAILURE\x10\xca\x01\x12 \n\x1b\x45VENT_PSU_FAILURE_RECOVERED\x10\xcb\x01\x12\x16\n\x11\x45VENT_FAN_FAILURE\x10\xac\x02\x12\x17\n\x12\x45VENT_FAN_PLUG_OUT\x10\xad\x02\x12\x16\n\x11\x45VENT_FAN_PLUG_IN\x10\xae\x02\x12 \n\x1b\x45VENT_FAN_FAILURE_RECOVERED\x10\xaf\x02\x12)\n$EVENT_CPU_TEMPERATURE_ABOVE_CRITICAL\x10\x90\x03\x12&\n!EVENT_CPU_TEMPERATURE_ABOVE_FATAL\x10\x91\x03\x12\x33\n.EVENT_CPU_TEMPERATURE_ABOVE_CRITICAL_RECOVERED\x10\x92\x03\x12\x30\n+EVENT_CPU_TEMPERATURE_ABOVE_FATAL_RECOVERED\x10\x93\x03\x12\x1a\n\x15\x45VENT_HW_DEVICE_RESET\x10\xf4\x03\x12/\n*EVENT_HW_DEVICE_TEMPERATURE_ABOVE_CRITICAL\x10\xf5\x03\x12,\n\'EVENT_HW_DEVICE_TEMPERATURE_ABOVE_FATAL\x10\xf6\x03\x12\x39\n4EVENT_HW_DEVICE_TEMPERATURE_ABOVE_CRITICAL_RECOVERED\x10\xf7\x03\x12\x36\n1EVENT_HW_DEVICE_TEMPERATURE_ABOVE_FATAL_RECOVERED\x10\xf8\x03\x12\x1b\n\x16\x45VENT_HW_DEVICE_REBOOT\x10\xf9\x03\x12\'\n\"EVENT_HW_TEMPERATURE_SENSOR_FAILED\x10\xfa\x03\x12,\n\'EVENT_HW_ALL_TEMPERATURE_SENSORS_FAILED\x10\xfb\x03\x32\xed\x01\n\x1dNativeEventsManagementService\x12\x36\n\nListEvents\x12\x0f.dmi.HardwareID\x1a\x17.dmi.ListEventsResponse\x12^\n\x19UpdateEventsConfiguration\x12\x1f.dmi.EventsConfigurationRequest\x1a .dmi.EventsConfigurationResponse\x12\x34\n\x0cStreamEvents\x12\x16.google.protobuf.Empty\x1a\n.dmi.Event0\x01\x42;Z9github.com/opencord/device-management-interface/v3/go/dmib\x06proto3'
  ,
  dependencies=[dmi_dot_commons__pb2.DESCRIPTOR,dmi_dot_hw__pb2.DESCRIPTOR,google_dot_protobuf_dot_timestamp__pb2.DESCRIPTOR,google_dot_protobuf_dot_empty__pb2.DESCRIPTOR,])

_EVENTIDS = _descriptor.EnumDescriptor(
  name='EventIds',
  full_name='dmi.EventIds',
  filename=None,
  file=DESCRIPTOR,
  create_key=_descriptor._internal_create_key,
  values=[
    _descriptor.EnumValueDescriptor(
      name='EVENT_NAME_UNDEFINED', index=0, number=0,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='EVENT_TRANSCEIVER_PLUG_OUT', index=1, number=100,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='EVENT_TRANSCEIVER_PLUG_IN', index=2, number=101,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='EVENT_TRANSCEIVER_VOLTAGE_ABOVE_THRESHOLD', index=3, number=102,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='EVENT_TRANSCEIVER_VOLTAGE_BELOW_THRESHOLD', index=4, number=103,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='EVENT_TRANSCEIVER_TEMPERATURE_ABOVE_THRESHOLD', index=5, number=104,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='EVENT_TRANSCEIVER_TEMPERATURE_BELOW_THRESHOLD', index=6, number=105,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='EVENT_TRANSCEIVER_CURRENT_ABOVE_THRESHOLD', index=7, number=106,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='EVENT_TRANSCEIVER_CURRENT_BELOW_THRESHOLD', index=8, number=107,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='EVENT_TRANSCEIVER_RX_POWER_ABOVE_THRESHOLD', index=9, number=108,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='EVENT_TRANSCEIVER_RX_POWER_BELOW_THRESHOLD', index=10, number=109,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='EVENT_TRANSCEIVER_TX_POWER_ABOVE_THRESHOLD', index=11, number=110,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='EVENT_TRANSCEIVER_TX_POWER_BELOW_THRESHOLD', index=12, number=111,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='EVENT_TRANSCEIVER_FAILURE', index=13, number=112,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='EVENT_TRANSCEIVER_VOLTAGE_ABOVE_THRESHOLD_RECOVERED', index=14, number=113,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='EVENT_TRANSCEIVER_VOLTAGE_BELOW_THRESHOLD_RECOVERED', index=15, number=114,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='EVENT_TRANSCEIVER_TEMPERATURE_ABOVE_THRESHOLD_RECOVERED', index=16, number=115,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='EVENT_TRANSCEIVER_TEMPERATURE_BELOW_THRESHOLD_RECOVERED', index=17, number=116,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='EVENT_TRANSCEIVER_CURRENT_ABOVE_THRESHOLD_RECOVERED', index=18, number=117,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='EVENT_TRANSCEIVER_CURRENT_BELOW_THRESHOLD_RECOVERED', index=19, number=118,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='EVENT_TRANSCEIVER_RX_POWER_ABOVE_THRESHOLD_RECOVERED', index=20, number=119,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='EVENT_TRANSCEIVER_RX_POWER_BELOW_THRESHOLD_RECOVERED', index=21, number=120,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='EVENT_TRANSCEIVER_TX_POWER_ABOVE_THRESHOLD_RECOVERED', index=22, number=121,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='EVENT_TRANSCEIVER_TX_POWER_BELOW_THRESHOLD_RECOVERED', index=23, number=122,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='EVENT_TRANSCEIVER_FAILURE_RECOVERED', index=24, number=123,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='EVENT_PSU_PLUG_OUT', index=25, number=200,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='EVENT_PSU_PLUG_IN', index=26, number=201,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='EVENT_PSU_FAILURE', index=27, number=202,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='EVENT_PSU_FAILURE_RECOVERED', index=28, number=203,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='EVENT_FAN_FAILURE', index=29, number=300,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='EVENT_FAN_PLUG_OUT', index=30, number=301,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='EVENT_FAN_PLUG_IN', index=31, number=302,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='EVENT_FAN_FAILURE_RECOVERED', index=32, number=303,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='EVENT_CPU_TEMPERATURE_ABOVE_CRITICAL', index=33, number=400,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='EVENT_CPU_TEMPERATURE_ABOVE_FATAL', index=34, number=401,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='EVENT_CPU_TEMPERATURE_ABOVE_CRITICAL_RECOVERED', index=35, number=402,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='EVENT_CPU_TEMPERATURE_ABOVE_FATAL_RECOVERED', index=36, number=403,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='EVENT_HW_DEVICE_RESET', index=37, number=500,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='EVENT_HW_DEVICE_TEMPERATURE_ABOVE_CRITICAL', index=38, number=501,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='EVENT_HW_DEVICE_TEMPERATURE_ABOVE_FATAL', index=39, number=502,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='EVENT_HW_DEVICE_TEMPERATURE_ABOVE_CRITICAL_RECOVERED', index=40, number=503,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='EVENT_HW_DEVICE_TEMPERATURE_ABOVE_FATAL_RECOVERED', index=41, number=504,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='EVENT_HW_DEVICE_REBOOT', index=42, number=505,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='EVENT_HW_TEMPERATURE_SENSOR_FAILED', index=43, number=506,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='EVENT_HW_ALL_TEMPERATURE_SENSORS_FAILED', index=44, number=507,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
  ],
  containing_type=None,
  serialized_options=None,
  serialized_start=1592,
  serialized_end=3581,
)
_sym_db.RegisterEnumDescriptor(_EVENTIDS)

EventIds = enum_type_wrapper.EnumTypeWrapper(_EVENTIDS)
EVENT_NAME_UNDEFINED = 0
EVENT_TRANSCEIVER_PLUG_OUT = 100
EVENT_TRANSCEIVER_PLUG_IN = 101
EVENT_TRANSCEIVER_VOLTAGE_ABOVE_THRESHOLD = 102
EVENT_TRANSCEIVER_VOLTAGE_BELOW_THRESHOLD = 103
EVENT_TRANSCEIVER_TEMPERATURE_ABOVE_THRESHOLD = 104
EVENT_TRANSCEIVER_TEMPERATURE_BELOW_THRESHOLD = 105
EVENT_TRANSCEIVER_CURRENT_ABOVE_THRESHOLD = 106
EVENT_TRANSCEIVER_CURRENT_BELOW_THRESHOLD = 107
EVENT_TRANSCEIVER_RX_POWER_ABOVE_THRESHOLD = 108
EVENT_TRANSCEIVER_RX_POWER_BELOW_THRESHOLD = 109
EVENT_TRANSCEIVER_TX_POWER_ABOVE_THRESHOLD = 110
EVENT_TRANSCEIVER_TX_POWER_BELOW_THRESHOLD = 111
EVENT_TRANSCEIVER_FAILURE = 112
EVENT_TRANSCEIVER_VOLTAGE_ABOVE_THRESHOLD_RECOVERED = 113
EVENT_TRANSCEIVER_VOLTAGE_BELOW_THRESHOLD_RECOVERED = 114
EVENT_TRANSCEIVER_TEMPERATURE_ABOVE_THRESHOLD_RECOVERED = 115
EVENT_TRANSCEIVER_TEMPERATURE_BELOW_THRESHOLD_RECOVERED = 116
EVENT_TRANSCEIVER_CURRENT_ABOVE_THRESHOLD_RECOVERED = 117
EVENT_TRANSCEIVER_CURRENT_BELOW_THRESHOLD_RECOVERED = 118
EVENT_TRANSCEIVER_RX_POWER_ABOVE_THRESHOLD_RECOVERED = 119
EVENT_TRANSCEIVER_RX_POWER_BELOW_THRESHOLD_RECOVERED = 120
EVENT_TRANSCEIVER_TX_POWER_ABOVE_THRESHOLD_RECOVERED = 121
EVENT_TRANSCEIVER_TX_POWER_BELOW_THRESHOLD_RECOVERED = 122
EVENT_TRANSCEIVER_FAILURE_RECOVERED = 123
EVENT_PSU_PLUG_OUT = 200
EVENT_PSU_PLUG_IN = 201
EVENT_PSU_FAILURE = 202
EVENT_PSU_FAILURE_RECOVERED = 203
EVENT_FAN_FAILURE = 300
EVENT_FAN_PLUG_OUT = 301
EVENT_FAN_PLUG_IN = 302
EVENT_FAN_FAILURE_RECOVERED = 303
EVENT_CPU_TEMPERATURE_ABOVE_CRITICAL = 400
EVENT_CPU_TEMPERATURE_ABOVE_FATAL = 401
EVENT_CPU_TEMPERATURE_ABOVE_CRITICAL_RECOVERED = 402
EVENT_CPU_TEMPERATURE_ABOVE_FATAL_RECOVERED = 403
EVENT_HW_DEVICE_RESET = 500
EVENT_HW_DEVICE_TEMPERATURE_ABOVE_CRITICAL = 501
EVENT_HW_DEVICE_TEMPERATURE_ABOVE_FATAL = 502
EVENT_HW_DEVICE_TEMPERATURE_ABOVE_CRITICAL_RECOVERED = 503
EVENT_HW_DEVICE_TEMPERATURE_ABOVE_FATAL_RECOVERED = 504
EVENT_HW_DEVICE_REBOOT = 505
EVENT_HW_TEMPERATURE_SENSOR_FAILED = 506
EVENT_HW_ALL_TEMPERATURE_SENSORS_FAILED = 507


_LISTEVENTSRESPONSE_REASON = _descriptor.EnumDescriptor(
  name='Reason',
  full_name='dmi.ListEventsResponse.Reason',
  filename=None,
  file=DESCRIPTOR,
  create_key=_descriptor._internal_create_key,
  values=[
    _descriptor.EnumValueDescriptor(
      name='UNDEFINED_REASON', index=0, number=0,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='UNKNOWN_DEVICE', index=1, number=1,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='INTERNAL_ERROR', index=2, number=2,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='DEVICE_UNREACHABLE', index=3, number=3,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
  ],
  containing_type=None,
  serialized_options=None,
  serialized_start=788,
  serialized_end=882,
)
_sym_db.RegisterEnumDescriptor(_LISTEVENTSRESPONSE_REASON)

_EVENTSCONFIGURATIONRESPONSE_REASON = _descriptor.EnumDescriptor(
  name='Reason',
  full_name='dmi.EventsConfigurationResponse.Reason',
  filename=None,
  file=DESCRIPTOR,
  create_key=_descriptor._internal_create_key,
  values=[
    _descriptor.EnumValueDescriptor(
      name='UNDEFINED_REASON', index=0, number=0,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='UNKNOWN_DEVICE', index=1, number=1,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='INTERNAL_ERROR', index=2, number=2,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='INVALID_CONFIG', index=3, number=3,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='DEVICE_UNREACHABLE', index=4, number=4,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
  ],
  containing_type=None,
  serialized_options=None,
  serialized_start=1164,
  serialized_end=1278,
)
_sym_db.RegisterEnumDescriptor(_EVENTSCONFIGURATIONRESPONSE_REASON)


_VALUETYPE = _descriptor.Descriptor(
  name='ValueType',
  full_name='dmi.ValueType',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='int_val', full_name='dmi.ValueType.int_val', index=0,
      number=1, type=3, cpp_type=2, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='uint_val', full_name='dmi.ValueType.uint_val', index=1,
      number=2, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='float_val', full_name='dmi.ValueType.float_val', index=2,
      number=3, type=2, cpp_type=6, label=1,
      has_default_value=False, default_value=float(0),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
    _descriptor.OneofDescriptor(
      name='val', full_name='dmi.ValueType.val',
      index=0, containing_type=None,
      create_key=_descriptor._internal_create_key,
    fields=[]),
  ],
  serialized_start=136,
  serialized_end=214,
)


_WATERMARKS = _descriptor.Descriptor(
  name='WaterMarks',
  full_name='dmi.WaterMarks',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='high', full_name='dmi.WaterMarks.high', index=0,
      number=1, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='low', full_name='dmi.WaterMarks.low', index=1,
      number=2, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=216,
  serialized_end=287,
)


_THRESHOLDS = _descriptor.Descriptor(
  name='Thresholds',
  full_name='dmi.Thresholds',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='upper', full_name='dmi.Thresholds.upper', index=0,
      number=1, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='lower', full_name='dmi.Thresholds.lower', index=1,
      number=2, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
    _descriptor.OneofDescriptor(
      name='threshold', full_name='dmi.Thresholds.threshold',
      index=0, containing_type=None,
      create_key=_descriptor._internal_create_key,
    fields=[]),
  ],
  serialized_start=289,
  serialized_end=382,
)


_THRESHOLDINFORMATION = _descriptor.Descriptor(
  name='ThresholdInformation',
  full_name='dmi.ThresholdInformation',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='observed_value', full_name='dmi.ThresholdInformation.observed_value', index=0,
      number=1, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='thresholds', full_name='dmi.ThresholdInformation.thresholds', index=1,
      number=2, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=384,
  serialized_end=483,
)


_EVENTCFG = _descriptor.Descriptor(
  name='EventCfg',
  full_name='dmi.EventCfg',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='event_id', full_name='dmi.EventCfg.event_id', index=0,
      number=1, type=14, cpp_type=8, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='is_configured', full_name='dmi.EventCfg.is_configured', index=1,
      number=2, type=8, cpp_type=7, label=1,
      has_default_value=False, default_value=False,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='thresholds', full_name='dmi.EventCfg.thresholds', index=2,
      number=3, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=485,
  serialized_end=588,
)


_EVENTSCFG = _descriptor.Descriptor(
  name='EventsCfg',
  full_name='dmi.EventsCfg',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='items', full_name='dmi.EventsCfg.items', index=0,
      number=1, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=590,
  serialized_end=631,
)


_LISTEVENTSRESPONSE = _descriptor.Descriptor(
  name='ListEventsResponse',
  full_name='dmi.ListEventsResponse',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='status', full_name='dmi.ListEventsResponse.status', index=0,
      number=1, type=14, cpp_type=8, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='reason', full_name='dmi.ListEventsResponse.reason', index=1,
      number=2, type=14, cpp_type=8, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='events', full_name='dmi.ListEventsResponse.events', index=2,
      number=3, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='reason_detail', full_name='dmi.ListEventsResponse.reason_detail', index=3,
      number=4, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=b"".decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
    _LISTEVENTSRESPONSE_REASON,
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=634,
  serialized_end=882,
)


_EVENTSCONFIGURATIONREQUEST = _descriptor.Descriptor(
  name='EventsConfigurationRequest',
  full_name='dmi.EventsConfigurationRequest',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='device_uuid', full_name='dmi.EventsConfigurationRequest.device_uuid', index=0,
      number=1, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='changes', full_name='dmi.EventsConfigurationRequest.changes', index=1,
      number=2, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='reset_to_default', full_name='dmi.EventsConfigurationRequest.reset_to_default', index=2,
      number=3, type=8, cpp_type=7, label=1,
      has_default_value=False, default_value=False,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
    _descriptor.OneofDescriptor(
      name='operation', full_name='dmi.EventsConfigurationRequest.operation',
      index=0, containing_type=None,
      create_key=_descriptor._internal_create_key,
    fields=[]),
  ],
  serialized_start=885,
  serialized_end=1021,
)


_EVENTSCONFIGURATIONRESPONSE = _descriptor.Descriptor(
  name='EventsConfigurationResponse',
  full_name='dmi.EventsConfigurationResponse',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='status', full_name='dmi.EventsConfigurationResponse.status', index=0,
      number=1, type=14, cpp_type=8, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='reason', full_name='dmi.EventsConfigurationResponse.reason', index=1,
      number=2, type=14, cpp_type=8, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='reason_detail', full_name='dmi.EventsConfigurationResponse.reason_detail', index=2,
      number=3, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=b"".decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
    _EVENTSCONFIGURATIONRESPONSE_REASON,
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1024,
  serialized_end=1278,
)


_EVENTMETADATA = _descriptor.Descriptor(
  name='EventMetaData',
  full_name='dmi.EventMetaData',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='device_uuid', full_name='dmi.EventMetaData.device_uuid', index=0,
      number=1, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='component_uuid', full_name='dmi.EventMetaData.component_uuid', index=1,
      number=2, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='component_name', full_name='dmi.EventMetaData.component_name', index=2,
      number=3, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=b"".decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1280,
  serialized_end=1386,
)


_EVENT = _descriptor.Descriptor(
  name='Event',
  full_name='dmi.Event',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='event_metadata', full_name='dmi.Event.event_metadata', index=0,
      number=1, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='event_id', full_name='dmi.Event.event_id', index=1,
      number=2, type=14, cpp_type=8, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='raised_ts', full_name='dmi.Event.raised_ts', index=2,
      number=3, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='threshold_info', full_name='dmi.Event.threshold_info', index=3,
      number=4, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='add_info', full_name='dmi.Event.add_info', index=4,
      number=5, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=b"".decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1389,
  serialized_end=1589,
)

_VALUETYPE.oneofs_by_name['val'].fields.append(
  _VALUETYPE.fields_by_name['int_val'])
_VALUETYPE.fields_by_name['int_val'].containing_oneof = _VALUETYPE.oneofs_by_name['val']
_VALUETYPE.oneofs_by_name['val'].fields.append(
  _VALUETYPE.fields_by_name['uint_val'])
_VALUETYPE.fields_by_name['uint_val'].containing_oneof = _VALUETYPE.oneofs_by_name['val']
_VALUETYPE.oneofs_by_name['val'].fields.append(
  _VALUETYPE.fields_by_name['float_val'])
_VALUETYPE.fields_by_name['float_val'].containing_oneof = _VALUETYPE.oneofs_by_name['val']
_WATERMARKS.fields_by_name['high'].message_type = _VALUETYPE
_WATERMARKS.fields_by_name['low'].message_type = _VALUETYPE
_THRESHOLDS.fields_by_name['upper'].message_type = _WATERMARKS
_THRESHOLDS.fields_by_name['lower'].message_type = _WATERMARKS
_THRESHOLDS.oneofs_by_name['threshold'].fields.append(
  _THRESHOLDS.fields_by_name['upper'])
_THRESHOLDS.fields_by_name['upper'].containing_oneof = _THRESHOLDS.oneofs_by_name['threshold']
_THRESHOLDS.oneofs_by_name['threshold'].fields.append(
  _THRESHOLDS.fields_by_name['lower'])
_THRESHOLDS.fields_by_name['lower'].containing_oneof = _THRESHOLDS.oneofs_by_name['threshold']
_THRESHOLDINFORMATION.fields_by_name['observed_value'].message_type = _VALUETYPE
_THRESHOLDINFORMATION.fields_by_name['thresholds'].message_type = _THRESHOLDS
_EVENTCFG.fields_by_name['event_id'].enum_type = _EVENTIDS
_EVENTCFG.fields_by_name['thresholds'].message_type = _THRESHOLDS
_EVENTSCFG.fields_by_name['items'].message_type = _EVENTCFG
_LISTEVENTSRESPONSE.fields_by_name['status'].enum_type = dmi_dot_commons__pb2._STATUS
_LISTEVENTSRESPONSE.fields_by_name['reason'].enum_type = _LISTEVENTSRESPONSE_REASON
_LISTEVENTSRESPONSE.fields_by_name['events'].message_type = _EVENTSCFG
_LISTEVENTSRESPONSE_REASON.containing_type = _LISTEVENTSRESPONSE
_EVENTSCONFIGURATIONREQUEST.fields_by_name['device_uuid'].message_type = dmi_dot_hw__pb2._UUID
_EVENTSCONFIGURATIONREQUEST.fields_by_name['changes'].message_type = _EVENTSCFG
_EVENTSCONFIGURATIONREQUEST.oneofs_by_name['operation'].fields.append(
  _EVENTSCONFIGURATIONREQUEST.fields_by_name['changes'])
_EVENTSCONFIGURATIONREQUEST.fields_by_name['changes'].containing_oneof = _EVENTSCONFIGURATIONREQUEST.oneofs_by_name['operation']
_EVENTSCONFIGURATIONREQUEST.oneofs_by_name['operation'].fields.append(
  _EVENTSCONFIGURATIONREQUEST.fields_by_name['reset_to_default'])
_EVENTSCONFIGURATIONREQUEST.fields_by_name['reset_to_default'].containing_oneof = _EVENTSCONFIGURATIONREQUEST.oneofs_by_name['operation']
_EVENTSCONFIGURATIONRESPONSE.fields_by_name['status'].enum_type = dmi_dot_commons__pb2._STATUS
_EVENTSCONFIGURATIONRESPONSE.fields_by_name['reason'].enum_type = _EVENTSCONFIGURATIONRESPONSE_REASON
_EVENTSCONFIGURATIONRESPONSE_REASON.containing_type = _EVENTSCONFIGURATIONRESPONSE
_EVENTMETADATA.fields_by_name['device_uuid'].message_type = dmi_dot_hw__pb2._UUID
_EVENTMETADATA.fields_by_name['component_uuid'].message_type = dmi_dot_hw__pb2._UUID
_EVENT.fields_by_name['event_metadata'].message_type = _EVENTMETADATA
_EVENT.fields_by_name['event_id'].enum_type = _EVENTIDS
_EVENT.fields_by_name['raised_ts'].message_type = google_dot_protobuf_dot_timestamp__pb2._TIMESTAMP
_EVENT.fields_by_name['threshold_info'].message_type = _THRESHOLDINFORMATION
DESCRIPTOR.message_types_by_name['ValueType'] = _VALUETYPE
DESCRIPTOR.message_types_by_name['WaterMarks'] = _WATERMARKS
DESCRIPTOR.message_types_by_name['Thresholds'] = _THRESHOLDS
DESCRIPTOR.message_types_by_name['ThresholdInformation'] = _THRESHOLDINFORMATION
DESCRIPTOR.message_types_by_name['EventCfg'] = _EVENTCFG
DESCRIPTOR.message_types_by_name['EventsCfg'] = _EVENTSCFG
DESCRIPTOR.message_types_by_name['ListEventsResponse'] = _LISTEVENTSRESPONSE
DESCRIPTOR.message_types_by_name['EventsConfigurationRequest'] = _EVENTSCONFIGURATIONREQUEST
DESCRIPTOR.message_types_by_name['EventsConfigurationResponse'] = _EVENTSCONFIGURATIONRESPONSE
DESCRIPTOR.message_types_by_name['EventMetaData'] = _EVENTMETADATA
DESCRIPTOR.message_types_by_name['Event'] = _EVENT
DESCRIPTOR.enum_types_by_name['EventIds'] = _EVENTIDS
_sym_db.RegisterFileDescriptor(DESCRIPTOR)

ValueType = _reflection.GeneratedProtocolMessageType('ValueType', (_message.Message,), {
  'DESCRIPTOR' : _VALUETYPE,
  '__module__' : 'dmi.hw_events_mgmt_service_pb2'
  # @@protoc_insertion_point(class_scope:dmi.ValueType)
  })
_sym_db.RegisterMessage(ValueType)

WaterMarks = _reflection.GeneratedProtocolMessageType('WaterMarks', (_message.Message,), {
  'DESCRIPTOR' : _WATERMARKS,
  '__module__' : 'dmi.hw_events_mgmt_service_pb2'
  # @@protoc_insertion_point(class_scope:dmi.WaterMarks)
  })
_sym_db.RegisterMessage(WaterMarks)

Thresholds = _reflection.GeneratedProtocolMessageType('Thresholds', (_message.Message,), {
  'DESCRIPTOR' : _THRESHOLDS,
  '__module__' : 'dmi.hw_events_mgmt_service_pb2'
  # @@protoc_insertion_point(class_scope:dmi.Thresholds)
  })
_sym_db.RegisterMessage(Thresholds)

ThresholdInformation = _reflection.GeneratedProtocolMessageType('ThresholdInformation', (_message.Message,), {
  'DESCRIPTOR' : _THRESHOLDINFORMATION,
  '__module__' : 'dmi.hw_events_mgmt_service_pb2'
  # @@protoc_insertion_point(class_scope:dmi.ThresholdInformation)
  })
_sym_db.RegisterMessage(ThresholdInformation)

EventCfg = _reflection.GeneratedProtocolMessageType('EventCfg', (_message.Message,), {
  'DESCRIPTOR' : _EVENTCFG,
  '__module__' : 'dmi.hw_events_mgmt_service_pb2'
  # @@protoc_insertion_point(class_scope:dmi.EventCfg)
  })
_sym_db.RegisterMessage(EventCfg)

EventsCfg = _reflection.GeneratedProtocolMessageType('EventsCfg', (_message.Message,), {
  'DESCRIPTOR' : _EVENTSCFG,
  '__module__' : 'dmi.hw_events_mgmt_service_pb2'
  # @@protoc_insertion_point(class_scope:dmi.EventsCfg)
  })
_sym_db.RegisterMessage(EventsCfg)

ListEventsResponse = _reflection.GeneratedProtocolMessageType('ListEventsResponse', (_message.Message,), {
  'DESCRIPTOR' : _LISTEVENTSRESPONSE,
  '__module__' : 'dmi.hw_events_mgmt_service_pb2'
  # @@protoc_insertion_point(class_scope:dmi.ListEventsResponse)
  })
_sym_db.RegisterMessage(ListEventsResponse)

EventsConfigurationRequest = _reflection.GeneratedProtocolMessageType('EventsConfigurationRequest', (_message.Message,), {
  'DESCRIPTOR' : _EVENTSCONFIGURATIONREQUEST,
  '__module__' : 'dmi.hw_events_mgmt_service_pb2'
  # @@protoc_insertion_point(class_scope:dmi.EventsConfigurationRequest)
  })
_sym_db.RegisterMessage(EventsConfigurationRequest)

EventsConfigurationResponse = _reflection.GeneratedProtocolMessageType('EventsConfigurationResponse', (_message.Message,), {
  'DESCRIPTOR' : _EVENTSCONFIGURATIONRESPONSE,
  '__module__' : 'dmi.hw_events_mgmt_service_pb2'
  # @@protoc_insertion_point(class_scope:dmi.EventsConfigurationResponse)
  })
_sym_db.RegisterMessage(EventsConfigurationResponse)

EventMetaData = _reflection.GeneratedProtocolMessageType('EventMetaData', (_message.Message,), {
  'DESCRIPTOR' : _EVENTMETADATA,
  '__module__' : 'dmi.hw_events_mgmt_service_pb2'
  # @@protoc_insertion_point(class_scope:dmi.EventMetaData)
  })
_sym_db.RegisterMessage(EventMetaData)

Event = _reflection.GeneratedProtocolMessageType('Event', (_message.Message,), {
  'DESCRIPTOR' : _EVENT,
  '__module__' : 'dmi.hw_events_mgmt_service_pb2'
  # @@protoc_insertion_point(class_scope:dmi.Event)
  })
_sym_db.RegisterMessage(Event)


DESCRIPTOR._options = None

_NATIVEEVENTSMANAGEMENTSERVICE = _descriptor.ServiceDescriptor(
  name='NativeEventsManagementService',
  full_name='dmi.NativeEventsManagementService',
  file=DESCRIPTOR,
  index=0,
  serialized_options=None,
  create_key=_descriptor._internal_create_key,
  serialized_start=3584,
  serialized_end=3821,
  methods=[
  _descriptor.MethodDescriptor(
    name='ListEvents',
    full_name='dmi.NativeEventsManagementService.ListEvents',
    index=0,
    containing_service=None,
    input_type=dmi_dot_hw__pb2._HARDWAREID,
    output_type=_LISTEVENTSRESPONSE,
    serialized_options=None,
    create_key=_descriptor._internal_create_key,
  ),
  _descriptor.MethodDescriptor(
    name='UpdateEventsConfiguration',
    full_name='dmi.NativeEventsManagementService.UpdateEventsConfiguration',
    index=1,
    containing_service=None,
    input_type=_EVENTSCONFIGURATIONREQUEST,
    output_type=_EVENTSCONFIGURATIONRESPONSE,
    serialized_options=None,
    create_key=_descriptor._internal_create_key,
  ),
  _descriptor.MethodDescriptor(
    name='StreamEvents',
    full_name='dmi.NativeEventsManagementService.StreamEvents',
    index=2,
    containing_service=None,
    input_type=google_dot_protobuf_dot_empty__pb2._EMPTY,
    output_type=_EVENT,
    serialized_options=None,
    create_key=_descriptor._internal_create_key,
  ),
])
_sym_db.RegisterServiceDescriptor(_NATIVEEVENTSMANAGEMENTSERVICE)

DESCRIPTOR.services_by_name['NativeEventsManagementService'] = _NATIVEEVENTSMANAGEMENTSERVICE

# @@protoc_insertion_point(module_scope)
