# -*- coding: utf-8 -*-
# Generated by the protocol buffer compiler.  DO NOT EDIT!
# source: dmi/hw_management_service.proto
"""Generated protocol buffer code."""
from google.protobuf import descriptor as _descriptor
from google.protobuf import descriptor_pool as _descriptor_pool
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 empty_pb2 as google_dot_protobuf_dot_empty__pb2


DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1f\x64mi/hw_management_service.proto\x12\x03\x64mi\x1a\x11\x64mi/commons.proto\x1a\x0c\x64mi/hw.proto\x1a\x1bgoogle/protobuf/empty.proto\":\n\x18PhysicalInventoryRequest\x12\x1e\n\x0b\x64\x65vice_uuid\x18\x01 \x01(\x0b\x32\t.dmi.Uuid\"\x88\x02\n\x19PhysicalInventoryResponse\x12\x1b\n\x06status\x18\x01 \x01(\x0e\x32\x0b.dmi.Status\x12\x35\n\x06reason\x18\x02 \x01(\x0e\x32%.dmi.PhysicalInventoryResponse.Reason\x12 \n\tinventory\x18\x03 \x01(\x0b\x32\r.dmi.Hardware\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\"v\n\x19HWComponentInfoGetRequest\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\"\xa2\x02\n\x1aHWComponentInfoGetResponse\x12\x1b\n\x06status\x18\x01 \x01(\x0e\x32\x0b.dmi.Status\x12\x36\n\x06reason\x18\x02 \x01(\x0e\x32&.dmi.HWComponentInfoGetResponse.Reason\x12!\n\tcomponent\x18\x03 \x01(\x0b\x32\x0e.dmi.Component\x12\x15\n\rreason_detail\x18\x04 \x01(\t\"u\n\x06Reason\x12\x14\n\x10UNDEFINED_REASON\x10\x00\x12\x12\n\x0eUNKNOWN_DEVICE\x10\x01\x12\x15\n\x11UNKNOWN_COMPONENT\x10\x02\x12\x12\n\x0eINTERNAL_ERROR\x10\x03\x12\x16\n\x12\x44\x45VICE_UNREACHABLE\x10\x04\"\xa1\x01\n\x19HWComponentInfoSetRequest\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\x12)\n\x07\x63hanges\x18\x04 \x01(\x0b\x32\x18.dmi.ModifiableComponent\"\xa9\x02\n\x1aHWComponentInfoSetResponse\x12\x1b\n\x06status\x18\x01 \x01(\x0e\x32\x0b.dmi.Status\x12\x36\n\x06reason\x18\x02 \x01(\x0e\x32&.dmi.HWComponentInfoSetResponse.Reason\x12\x15\n\rreason_detail\x18\x03 \x01(\t\"\x9e\x01\n\x06Reason\x12\x14\n\x10UNDEFINED_REASON\x10\x00\x12\x12\n\x0eUNKNOWN_DEVICE\x10\x01\x12\x15\n\x11UNKNOWN_COMPONENT\x10\x02\x12\x12\n\x0eINVALID_PARAMS\x10\x03\x12\x12\n\x0eINTERNAL_ERROR\x10\x04\x12\x16\n\x12\x44\x45VICE_UNREACHABLE\x10\x05\x12\x13\n\x0fSET_UNSUPPORTED\x10\x06\"\xe7\x02\n\x1bStartManagingDeviceResponse\x12\x1b\n\x06status\x18\x01 \x01(\x0e\x32\x0b.dmi.Status\x12\x37\n\x06reason\x18\x02 \x01(\x0e\x32\'.dmi.StartManagingDeviceResponse.Reason\x12\x1e\n\x0b\x64\x65vice_uuid\x18\x03 \x01(\x0b\x32\t.dmi.Uuid\x12\x15\n\rreason_detail\x18\x04 \x01(\t\"\xba\x01\n\x06Reason\x12\x14\n\x10UNDEFINED_REASON\x10\x00\x12\x1a\n\x16\x44\x45VICE_ALREADY_MANAGED\x10\x01\x12!\n\x1dOPERATION_ALREADY_IN_PROGRESS\x10\x02\x12\x12\n\x0eINVALID_PARAMS\x10\x03\x12\x12\n\x0eINTERNAL_ERROR\x10\x04\x12\x1a\n\x16\x41UTHENTICATION_FAILURE\x10\x05\x12\x17\n\x13INCOMPATIBLE_DEVICE\x10\x06\")\n\x19StopManagingDeviceRequest\x12\x0c\n\x04name\x18\x01 \x01(\t\"\xbc\x01\n\x1aStopManagingDeviceResponse\x12\x1b\n\x06status\x18\x01 \x01(\x0e\x32\x0b.dmi.Status\x12\x36\n\x06reason\x18\x02 \x01(\x0e\x32&.dmi.StopManagingDeviceResponse.Reason\x12\x15\n\rreason_detail\x18\x03 \x01(\t\"2\n\x06Reason\x12\x14\n\x10UNDEFINED_REASON\x10\x00\x12\x12\n\x0eUNKNOWN_DEVICE\x10\x01\"[\n\x11ManagedDeviceInfo\x12&\n\x04info\x18\x01 \x01(\x0b\x32\x18.dmi.ModifiableComponent\x12\x1e\n\x0b\x64\x65vice_uuid\x18\x02 \x01(\x0b\x32\t.dmi.Uuid\"\xc6\x01\n\x16ManagedDevicesResponse\x12\x1b\n\x06status\x18\x01 \x01(\x0e\x32\x0b.dmi.Status\x12\x32\n\x06reason\x18\x02 \x01(\x0e\x32\".dmi.ManagedDevicesResponse.Reason\x12\'\n\x07\x64\x65vices\x18\x03 \x03(\x0b\x32\x16.dmi.ManagedDeviceInfo\"2\n\x06Reason\x12\x14\n\x10UNDEFINED_REASON\x10\x00\x12\x12\n\x0eINTERNAL_ERROR\x10\x01\"o\n\x19SetLoggingEndpointRequest\x12\x1e\n\x0b\x64\x65vice_uuid\x18\x01 \x01(\x0b\x32\t.dmi.Uuid\x12\x18\n\x10logging_endpoint\x18\x02 \x01(\t\x12\x18\n\x10logging_protocol\x18\x03 \x01(\t\"\xc3\x02\n\x19SetRemoteEndpointResponse\x12\x1b\n\x06status\x18\x01 \x01(\x0e\x32\x0b.dmi.Status\x12\x35\n\x06reason\x18\x02 \x01(\x0e\x32%.dmi.SetRemoteEndpointResponse.Reason\x12\x15\n\rreason_detail\x18\x03 \x01(\t\"\xba\x01\n\x06Reason\x12\x14\n\x10UNDEFINED_REASON\x10\x00\x12\x12\n\x0eUNKNOWN_DEVICE\x10\x01\x12\x12\n\x0eINTERNAL_ERROR\x10\x02\x12\x1a\n\x16LOGGING_ENDPOINT_ERROR\x10\x03\x12#\n\x1fLOGGING_ENDPOINT_PROTOCOL_ERROR\x10\x04\x12\x19\n\x15MSGBUS_ENDPOINT_ERROR\x10\x05\x12\x16\n\x12\x44\x45VICE_UNREACHABLE\x10\x06\"\x9c\x02\n\x1aGetLoggingEndpointResponse\x12\x1b\n\x06status\x18\x01 \x01(\x0e\x32\x0b.dmi.Status\x12\x36\n\x06reason\x18\x02 \x01(\x0e\x32&.dmi.GetLoggingEndpointResponse.Reason\x12\x18\n\x10logging_endpoint\x18\x03 \x01(\t\x12\x18\n\x10logging_protocol\x18\x04 \x01(\t\x12\x15\n\rreason_detail\x18\x05 \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\"3\n\x18SetMsgBusEndpointRequest\x12\x17\n\x0fmsgbus_endpoint\x18\x01 \x01(\t\"\xeb\x01\n\x19GetMsgBusEndpointResponse\x12\x1b\n\x06status\x18\x01 \x01(\x0e\x32\x0b.dmi.Status\x12\x35\n\x06reason\x18\x02 \x01(\x0e\x32%.dmi.GetMsgBusEndpointResponse.Reason\x12\x17\n\x0fmsgbus_endpoint\x18\x03 \x01(\t\x12\x15\n\rreason_detail\x18\x04 \x01(\t\"J\n\x06Reason\x12\x14\n\x10UNDEFINED_REASON\x10\x00\x12\x12\n\x0eINTERNAL_ERROR\x10\x01\x12\x16\n\x12\x44\x45VICE_UNREACHABLE\x10\x02\"E\n\x10\x45ntitiesLogLevel\x12\x1f\n\x08logLevel\x18\x01 \x01(\x0e\x32\r.dmi.LogLevel\x12\x10\n\x08\x65ntities\x18\x02 \x03(\t\"^\n\x12SetLogLevelRequest\x12\x1e\n\x0b\x64\x65vice_uuid\x18\x01 \x01(\x0b\x32\t.dmi.Uuid\x12(\n\tloglevels\x18\x02 \x03(\x0b\x32\x15.dmi.EntitiesLogLevel\"\x92\x02\n\x13SetLogLevelResponse\x12\x1e\n\x0b\x64\x65vice_uuid\x18\x01 \x01(\x0b\x32\t.dmi.Uuid\x12\x1b\n\x06status\x18\x02 \x01(\x0e\x32\x0b.dmi.Status\x12/\n\x06reason\x18\x03 \x01(\x0e\x32\x1f.dmi.SetLogLevelResponse.Reason\x12\x15\n\rreason_detail\x18\x04 \x01(\t\"v\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\x12UNKNOWN_LOG_ENTITY\x10\x03\x12\x16\n\x12\x44\x45VICE_UNREACHABLE\x10\x04\"F\n\x12GetLogLevelRequest\x12\x1e\n\x0b\x64\x65vice_uuid\x18\x01 \x01(\x0b\x32\t.dmi.Uuid\x12\x10\n\x08\x65ntities\x18\x02 \x03(\t\"\xbc\x02\n\x13GetLogLevelResponse\x12\x1e\n\x0b\x64\x65vice_uuid\x18\x01 \x01(\x0b\x32\t.dmi.Uuid\x12(\n\tlogLevels\x18\x02 \x03(\x0b\x32\x15.dmi.EntitiesLogLevel\x12\x1b\n\x06status\x18\x03 \x01(\x0e\x32\x0b.dmi.Status\x12/\n\x06reason\x18\x04 \x01(\x0e\x32\x1f.dmi.GetLogLevelResponse.Reason\x12\x15\n\rreason_detail\x18\x05 \x01(\t\"v\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\x12UNKNOWN_LOG_ENTITY\x10\x03\x12\x16\n\x12\x44\x45VICE_UNREACHABLE\x10\x04\"<\n\x1aGetLoggableEntitiesRequest\x12\x1e\n\x0b\x64\x65vice_uuid\x18\x01 \x01(\x0b\x32\t.dmi.Uuid\"(\n\tHeartbeat\x12\x1b\n\x13heartbeat_signature\x18\x01 \x01(\x07\"5\n\x13RebootDeviceRequest\x12\x1e\n\x0b\x64\x65vice_uuid\x18\x01 \x01(\x0b\x32\t.dmi.Uuid\"\xf7\x01\n\x14RebootDeviceResponse\x12\x1b\n\x06status\x18\x03 \x01(\x0e\x32\x0b.dmi.Status\x12\x30\n\x06reason\x18\x04 \x01(\x0e\x32 .dmi.RebootDeviceResponse.Reason\x12\x15\n\rreason_detail\x18\x05 \x01(\t\"y\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\x12\x19\n\x15\x44\x45VICE_IN_WRONG_STATE\x10\x04\x32\xae\t\n\x19NativeHWManagementService\x12S\n\x13StartManagingDevice\x12\x18.dmi.ModifiableComponent\x1a .dmi.StartManagingDeviceResponse0\x01\x12U\n\x12StopManagingDevice\x12\x1e.dmi.StopManagingDeviceRequest\x1a\x1f.dmi.StopManagingDeviceResponse\x12H\n\x11GetManagedDevices\x12\x16.google.protobuf.Empty\x1a\x1b.dmi.ManagedDevicesResponse\x12W\n\x14GetPhysicalInventory\x12\x1d.dmi.PhysicalInventoryRequest\x1a\x1e.dmi.PhysicalInventoryResponse0\x01\x12W\n\x12GetHWComponentInfo\x12\x1e.dmi.HWComponentInfoGetRequest\x1a\x1f.dmi.HWComponentInfoGetResponse0\x01\x12U\n\x12SetHWComponentInfo\x12\x1e.dmi.HWComponentInfoSetRequest\x1a\x1f.dmi.HWComponentInfoSetResponse\x12T\n\x12SetLoggingEndpoint\x12\x1e.dmi.SetLoggingEndpointRequest\x1a\x1e.dmi.SetRemoteEndpointResponse\x12\x46\n\x12GetLoggingEndpoint\x12\x0f.dmi.HardwareID\x1a\x1f.dmi.GetLoggingEndpointResponse\x12R\n\x11SetMsgBusEndpoint\x12\x1d.dmi.SetMsgBusEndpointRequest\x1a\x1e.dmi.SetRemoteEndpointResponse\x12K\n\x11GetMsgBusEndpoint\x12\x16.google.protobuf.Empty\x1a\x1e.dmi.GetMsgBusEndpointResponse\x12P\n\x13GetLoggableEntities\x12\x1f.dmi.GetLoggableEntitiesRequest\x1a\x18.dmi.GetLogLevelResponse\x12@\n\x0bSetLogLevel\x12\x17.dmi.SetLogLevelRequest\x1a\x18.dmi.SetLogLevelResponse\x12@\n\x0bGetLogLevel\x12\x17.dmi.GetLogLevelRequest\x1a\x18.dmi.GetLogLevelResponse\x12\x38\n\x0eHeartbeatCheck\x12\x16.google.protobuf.Empty\x1a\x0e.dmi.Heartbeat\x12\x43\n\x0cRebootDevice\x12\x18.dmi.RebootDeviceRequest\x1a\x19.dmi.RebootDeviceResponseB;Z9github.com/opencord/device-management-interface/v3/go/dmib\x06proto3')



_PHYSICALINVENTORYREQUEST = DESCRIPTOR.message_types_by_name['PhysicalInventoryRequest']
_PHYSICALINVENTORYRESPONSE = DESCRIPTOR.message_types_by_name['PhysicalInventoryResponse']
_HWCOMPONENTINFOGETREQUEST = DESCRIPTOR.message_types_by_name['HWComponentInfoGetRequest']
_HWCOMPONENTINFOGETRESPONSE = DESCRIPTOR.message_types_by_name['HWComponentInfoGetResponse']
_HWCOMPONENTINFOSETREQUEST = DESCRIPTOR.message_types_by_name['HWComponentInfoSetRequest']
_HWCOMPONENTINFOSETRESPONSE = DESCRIPTOR.message_types_by_name['HWComponentInfoSetResponse']
_STARTMANAGINGDEVICERESPONSE = DESCRIPTOR.message_types_by_name['StartManagingDeviceResponse']
_STOPMANAGINGDEVICEREQUEST = DESCRIPTOR.message_types_by_name['StopManagingDeviceRequest']
_STOPMANAGINGDEVICERESPONSE = DESCRIPTOR.message_types_by_name['StopManagingDeviceResponse']
_MANAGEDDEVICEINFO = DESCRIPTOR.message_types_by_name['ManagedDeviceInfo']
_MANAGEDDEVICESRESPONSE = DESCRIPTOR.message_types_by_name['ManagedDevicesResponse']
_SETLOGGINGENDPOINTREQUEST = DESCRIPTOR.message_types_by_name['SetLoggingEndpointRequest']
_SETREMOTEENDPOINTRESPONSE = DESCRIPTOR.message_types_by_name['SetRemoteEndpointResponse']
_GETLOGGINGENDPOINTRESPONSE = DESCRIPTOR.message_types_by_name['GetLoggingEndpointResponse']
_SETMSGBUSENDPOINTREQUEST = DESCRIPTOR.message_types_by_name['SetMsgBusEndpointRequest']
_GETMSGBUSENDPOINTRESPONSE = DESCRIPTOR.message_types_by_name['GetMsgBusEndpointResponse']
_ENTITIESLOGLEVEL = DESCRIPTOR.message_types_by_name['EntitiesLogLevel']
_SETLOGLEVELREQUEST = DESCRIPTOR.message_types_by_name['SetLogLevelRequest']
_SETLOGLEVELRESPONSE = DESCRIPTOR.message_types_by_name['SetLogLevelResponse']
_GETLOGLEVELREQUEST = DESCRIPTOR.message_types_by_name['GetLogLevelRequest']
_GETLOGLEVELRESPONSE = DESCRIPTOR.message_types_by_name['GetLogLevelResponse']
_GETLOGGABLEENTITIESREQUEST = DESCRIPTOR.message_types_by_name['GetLoggableEntitiesRequest']
_HEARTBEAT = DESCRIPTOR.message_types_by_name['Heartbeat']
_REBOOTDEVICEREQUEST = DESCRIPTOR.message_types_by_name['RebootDeviceRequest']
_REBOOTDEVICERESPONSE = DESCRIPTOR.message_types_by_name['RebootDeviceResponse']
_PHYSICALINVENTORYRESPONSE_REASON = _PHYSICALINVENTORYRESPONSE.enum_types_by_name['Reason']
_HWCOMPONENTINFOGETRESPONSE_REASON = _HWCOMPONENTINFOGETRESPONSE.enum_types_by_name['Reason']
_HWCOMPONENTINFOSETRESPONSE_REASON = _HWCOMPONENTINFOSETRESPONSE.enum_types_by_name['Reason']
_STARTMANAGINGDEVICERESPONSE_REASON = _STARTMANAGINGDEVICERESPONSE.enum_types_by_name['Reason']
_STOPMANAGINGDEVICERESPONSE_REASON = _STOPMANAGINGDEVICERESPONSE.enum_types_by_name['Reason']
_MANAGEDDEVICESRESPONSE_REASON = _MANAGEDDEVICESRESPONSE.enum_types_by_name['Reason']
_SETREMOTEENDPOINTRESPONSE_REASON = _SETREMOTEENDPOINTRESPONSE.enum_types_by_name['Reason']
_GETLOGGINGENDPOINTRESPONSE_REASON = _GETLOGGINGENDPOINTRESPONSE.enum_types_by_name['Reason']
_GETMSGBUSENDPOINTRESPONSE_REASON = _GETMSGBUSENDPOINTRESPONSE.enum_types_by_name['Reason']
_SETLOGLEVELRESPONSE_REASON = _SETLOGLEVELRESPONSE.enum_types_by_name['Reason']
_GETLOGLEVELRESPONSE_REASON = _GETLOGLEVELRESPONSE.enum_types_by_name['Reason']
_REBOOTDEVICERESPONSE_REASON = _REBOOTDEVICERESPONSE.enum_types_by_name['Reason']
PhysicalInventoryRequest = _reflection.GeneratedProtocolMessageType('PhysicalInventoryRequest', (_message.Message,), {
  'DESCRIPTOR' : _PHYSICALINVENTORYREQUEST,
  '__module__' : 'dmi.hw_management_service_pb2'
  # @@protoc_insertion_point(class_scope:dmi.PhysicalInventoryRequest)
  })
_sym_db.RegisterMessage(PhysicalInventoryRequest)

PhysicalInventoryResponse = _reflection.GeneratedProtocolMessageType('PhysicalInventoryResponse', (_message.Message,), {
  'DESCRIPTOR' : _PHYSICALINVENTORYRESPONSE,
  '__module__' : 'dmi.hw_management_service_pb2'
  # @@protoc_insertion_point(class_scope:dmi.PhysicalInventoryResponse)
  })
_sym_db.RegisterMessage(PhysicalInventoryResponse)

HWComponentInfoGetRequest = _reflection.GeneratedProtocolMessageType('HWComponentInfoGetRequest', (_message.Message,), {
  'DESCRIPTOR' : _HWCOMPONENTINFOGETREQUEST,
  '__module__' : 'dmi.hw_management_service_pb2'
  # @@protoc_insertion_point(class_scope:dmi.HWComponentInfoGetRequest)
  })
_sym_db.RegisterMessage(HWComponentInfoGetRequest)

HWComponentInfoGetResponse = _reflection.GeneratedProtocolMessageType('HWComponentInfoGetResponse', (_message.Message,), {
  'DESCRIPTOR' : _HWCOMPONENTINFOGETRESPONSE,
  '__module__' : 'dmi.hw_management_service_pb2'
  # @@protoc_insertion_point(class_scope:dmi.HWComponentInfoGetResponse)
  })
_sym_db.RegisterMessage(HWComponentInfoGetResponse)

HWComponentInfoSetRequest = _reflection.GeneratedProtocolMessageType('HWComponentInfoSetRequest', (_message.Message,), {
  'DESCRIPTOR' : _HWCOMPONENTINFOSETREQUEST,
  '__module__' : 'dmi.hw_management_service_pb2'
  # @@protoc_insertion_point(class_scope:dmi.HWComponentInfoSetRequest)
  })
_sym_db.RegisterMessage(HWComponentInfoSetRequest)

HWComponentInfoSetResponse = _reflection.GeneratedProtocolMessageType('HWComponentInfoSetResponse', (_message.Message,), {
  'DESCRIPTOR' : _HWCOMPONENTINFOSETRESPONSE,
  '__module__' : 'dmi.hw_management_service_pb2'
  # @@protoc_insertion_point(class_scope:dmi.HWComponentInfoSetResponse)
  })
_sym_db.RegisterMessage(HWComponentInfoSetResponse)

StartManagingDeviceResponse = _reflection.GeneratedProtocolMessageType('StartManagingDeviceResponse', (_message.Message,), {
  'DESCRIPTOR' : _STARTMANAGINGDEVICERESPONSE,
  '__module__' : 'dmi.hw_management_service_pb2'
  # @@protoc_insertion_point(class_scope:dmi.StartManagingDeviceResponse)
  })
_sym_db.RegisterMessage(StartManagingDeviceResponse)

StopManagingDeviceRequest = _reflection.GeneratedProtocolMessageType('StopManagingDeviceRequest', (_message.Message,), {
  'DESCRIPTOR' : _STOPMANAGINGDEVICEREQUEST,
  '__module__' : 'dmi.hw_management_service_pb2'
  # @@protoc_insertion_point(class_scope:dmi.StopManagingDeviceRequest)
  })
_sym_db.RegisterMessage(StopManagingDeviceRequest)

StopManagingDeviceResponse = _reflection.GeneratedProtocolMessageType('StopManagingDeviceResponse', (_message.Message,), {
  'DESCRIPTOR' : _STOPMANAGINGDEVICERESPONSE,
  '__module__' : 'dmi.hw_management_service_pb2'
  # @@protoc_insertion_point(class_scope:dmi.StopManagingDeviceResponse)
  })
_sym_db.RegisterMessage(StopManagingDeviceResponse)

ManagedDeviceInfo = _reflection.GeneratedProtocolMessageType('ManagedDeviceInfo', (_message.Message,), {
  'DESCRIPTOR' : _MANAGEDDEVICEINFO,
  '__module__' : 'dmi.hw_management_service_pb2'
  # @@protoc_insertion_point(class_scope:dmi.ManagedDeviceInfo)
  })
_sym_db.RegisterMessage(ManagedDeviceInfo)

ManagedDevicesResponse = _reflection.GeneratedProtocolMessageType('ManagedDevicesResponse', (_message.Message,), {
  'DESCRIPTOR' : _MANAGEDDEVICESRESPONSE,
  '__module__' : 'dmi.hw_management_service_pb2'
  # @@protoc_insertion_point(class_scope:dmi.ManagedDevicesResponse)
  })
_sym_db.RegisterMessage(ManagedDevicesResponse)

SetLoggingEndpointRequest = _reflection.GeneratedProtocolMessageType('SetLoggingEndpointRequest', (_message.Message,), {
  'DESCRIPTOR' : _SETLOGGINGENDPOINTREQUEST,
  '__module__' : 'dmi.hw_management_service_pb2'
  # @@protoc_insertion_point(class_scope:dmi.SetLoggingEndpointRequest)
  })
_sym_db.RegisterMessage(SetLoggingEndpointRequest)

SetRemoteEndpointResponse = _reflection.GeneratedProtocolMessageType('SetRemoteEndpointResponse', (_message.Message,), {
  'DESCRIPTOR' : _SETREMOTEENDPOINTRESPONSE,
  '__module__' : 'dmi.hw_management_service_pb2'
  # @@protoc_insertion_point(class_scope:dmi.SetRemoteEndpointResponse)
  })
_sym_db.RegisterMessage(SetRemoteEndpointResponse)

GetLoggingEndpointResponse = _reflection.GeneratedProtocolMessageType('GetLoggingEndpointResponse', (_message.Message,), {
  'DESCRIPTOR' : _GETLOGGINGENDPOINTRESPONSE,
  '__module__' : 'dmi.hw_management_service_pb2'
  # @@protoc_insertion_point(class_scope:dmi.GetLoggingEndpointResponse)
  })
_sym_db.RegisterMessage(GetLoggingEndpointResponse)

SetMsgBusEndpointRequest = _reflection.GeneratedProtocolMessageType('SetMsgBusEndpointRequest', (_message.Message,), {
  'DESCRIPTOR' : _SETMSGBUSENDPOINTREQUEST,
  '__module__' : 'dmi.hw_management_service_pb2'
  # @@protoc_insertion_point(class_scope:dmi.SetMsgBusEndpointRequest)
  })
_sym_db.RegisterMessage(SetMsgBusEndpointRequest)

GetMsgBusEndpointResponse = _reflection.GeneratedProtocolMessageType('GetMsgBusEndpointResponse', (_message.Message,), {
  'DESCRIPTOR' : _GETMSGBUSENDPOINTRESPONSE,
  '__module__' : 'dmi.hw_management_service_pb2'
  # @@protoc_insertion_point(class_scope:dmi.GetMsgBusEndpointResponse)
  })
_sym_db.RegisterMessage(GetMsgBusEndpointResponse)

EntitiesLogLevel = _reflection.GeneratedProtocolMessageType('EntitiesLogLevel', (_message.Message,), {
  'DESCRIPTOR' : _ENTITIESLOGLEVEL,
  '__module__' : 'dmi.hw_management_service_pb2'
  # @@protoc_insertion_point(class_scope:dmi.EntitiesLogLevel)
  })
_sym_db.RegisterMessage(EntitiesLogLevel)

SetLogLevelRequest = _reflection.GeneratedProtocolMessageType('SetLogLevelRequest', (_message.Message,), {
  'DESCRIPTOR' : _SETLOGLEVELREQUEST,
  '__module__' : 'dmi.hw_management_service_pb2'
  # @@protoc_insertion_point(class_scope:dmi.SetLogLevelRequest)
  })
_sym_db.RegisterMessage(SetLogLevelRequest)

SetLogLevelResponse = _reflection.GeneratedProtocolMessageType('SetLogLevelResponse', (_message.Message,), {
  'DESCRIPTOR' : _SETLOGLEVELRESPONSE,
  '__module__' : 'dmi.hw_management_service_pb2'
  # @@protoc_insertion_point(class_scope:dmi.SetLogLevelResponse)
  })
_sym_db.RegisterMessage(SetLogLevelResponse)

GetLogLevelRequest = _reflection.GeneratedProtocolMessageType('GetLogLevelRequest', (_message.Message,), {
  'DESCRIPTOR' : _GETLOGLEVELREQUEST,
  '__module__' : 'dmi.hw_management_service_pb2'
  # @@protoc_insertion_point(class_scope:dmi.GetLogLevelRequest)
  })
_sym_db.RegisterMessage(GetLogLevelRequest)

GetLogLevelResponse = _reflection.GeneratedProtocolMessageType('GetLogLevelResponse', (_message.Message,), {
  'DESCRIPTOR' : _GETLOGLEVELRESPONSE,
  '__module__' : 'dmi.hw_management_service_pb2'
  # @@protoc_insertion_point(class_scope:dmi.GetLogLevelResponse)
  })
_sym_db.RegisterMessage(GetLogLevelResponse)

GetLoggableEntitiesRequest = _reflection.GeneratedProtocolMessageType('GetLoggableEntitiesRequest', (_message.Message,), {
  'DESCRIPTOR' : _GETLOGGABLEENTITIESREQUEST,
  '__module__' : 'dmi.hw_management_service_pb2'
  # @@protoc_insertion_point(class_scope:dmi.GetLoggableEntitiesRequest)
  })
_sym_db.RegisterMessage(GetLoggableEntitiesRequest)

Heartbeat = _reflection.GeneratedProtocolMessageType('Heartbeat', (_message.Message,), {
  'DESCRIPTOR' : _HEARTBEAT,
  '__module__' : 'dmi.hw_management_service_pb2'
  # @@protoc_insertion_point(class_scope:dmi.Heartbeat)
  })
_sym_db.RegisterMessage(Heartbeat)

RebootDeviceRequest = _reflection.GeneratedProtocolMessageType('RebootDeviceRequest', (_message.Message,), {
  'DESCRIPTOR' : _REBOOTDEVICEREQUEST,
  '__module__' : 'dmi.hw_management_service_pb2'
  # @@protoc_insertion_point(class_scope:dmi.RebootDeviceRequest)
  })
_sym_db.RegisterMessage(RebootDeviceRequest)

RebootDeviceResponse = _reflection.GeneratedProtocolMessageType('RebootDeviceResponse', (_message.Message,), {
  'DESCRIPTOR' : _REBOOTDEVICERESPONSE,
  '__module__' : 'dmi.hw_management_service_pb2'
  # @@protoc_insertion_point(class_scope:dmi.RebootDeviceResponse)
  })
_sym_db.RegisterMessage(RebootDeviceResponse)

_NATIVEHWMANAGEMENTSERVICE = DESCRIPTOR.services_by_name['NativeHWManagementService']
if _descriptor._USE_C_DESCRIPTORS == False:

  DESCRIPTOR._options = None
  DESCRIPTOR._serialized_options = b'Z9github.com/opencord/device-management-interface/v3/go/dmi'
  _PHYSICALINVENTORYREQUEST._serialized_start=102
  _PHYSICALINVENTORYREQUEST._serialized_end=160
  _PHYSICALINVENTORYRESPONSE._serialized_start=163
  _PHYSICALINVENTORYRESPONSE._serialized_end=427
  _PHYSICALINVENTORYRESPONSE_REASON._serialized_start=333
  _PHYSICALINVENTORYRESPONSE_REASON._serialized_end=427
  _HWCOMPONENTINFOGETREQUEST._serialized_start=429
  _HWCOMPONENTINFOGETREQUEST._serialized_end=547
  _HWCOMPONENTINFOGETRESPONSE._serialized_start=550
  _HWCOMPONENTINFOGETRESPONSE._serialized_end=840
  _HWCOMPONENTINFOGETRESPONSE_REASON._serialized_start=723
  _HWCOMPONENTINFOGETRESPONSE_REASON._serialized_end=840
  _HWCOMPONENTINFOSETREQUEST._serialized_start=843
  _HWCOMPONENTINFOSETREQUEST._serialized_end=1004
  _HWCOMPONENTINFOSETRESPONSE._serialized_start=1007
  _HWCOMPONENTINFOSETRESPONSE._serialized_end=1304
  _HWCOMPONENTINFOSETRESPONSE_REASON._serialized_start=1146
  _HWCOMPONENTINFOSETRESPONSE_REASON._serialized_end=1304
  _STARTMANAGINGDEVICERESPONSE._serialized_start=1307
  _STARTMANAGINGDEVICERESPONSE._serialized_end=1666
  _STARTMANAGINGDEVICERESPONSE_REASON._serialized_start=1480
  _STARTMANAGINGDEVICERESPONSE_REASON._serialized_end=1666
  _STOPMANAGINGDEVICEREQUEST._serialized_start=1668
  _STOPMANAGINGDEVICEREQUEST._serialized_end=1709
  _STOPMANAGINGDEVICERESPONSE._serialized_start=1712
  _STOPMANAGINGDEVICERESPONSE._serialized_end=1900
  _STOPMANAGINGDEVICERESPONSE_REASON._serialized_start=333
  _STOPMANAGINGDEVICERESPONSE_REASON._serialized_end=383
  _MANAGEDDEVICEINFO._serialized_start=1902
  _MANAGEDDEVICEINFO._serialized_end=1993
  _MANAGEDDEVICESRESPONSE._serialized_start=1996
  _MANAGEDDEVICESRESPONSE._serialized_end=2194
  _MANAGEDDEVICESRESPONSE_REASON._serialized_start=2144
  _MANAGEDDEVICESRESPONSE_REASON._serialized_end=2194
  _SETLOGGINGENDPOINTREQUEST._serialized_start=2196
  _SETLOGGINGENDPOINTREQUEST._serialized_end=2307
  _SETREMOTEENDPOINTRESPONSE._serialized_start=2310
  _SETREMOTEENDPOINTRESPONSE._serialized_end=2633
  _SETREMOTEENDPOINTRESPONSE_REASON._serialized_start=2447
  _SETREMOTEENDPOINTRESPONSE_REASON._serialized_end=2633
  _GETLOGGINGENDPOINTRESPONSE._serialized_start=2636
  _GETLOGGINGENDPOINTRESPONSE._serialized_end=2920
  _GETLOGGINGENDPOINTRESPONSE_REASON._serialized_start=333
  _GETLOGGINGENDPOINTRESPONSE_REASON._serialized_end=427
  _SETMSGBUSENDPOINTREQUEST._serialized_start=2922
  _SETMSGBUSENDPOINTREQUEST._serialized_end=2973
  _GETMSGBUSENDPOINTRESPONSE._serialized_start=2976
  _GETMSGBUSENDPOINTRESPONSE._serialized_end=3211
  _GETMSGBUSENDPOINTRESPONSE_REASON._serialized_start=3137
  _GETMSGBUSENDPOINTRESPONSE_REASON._serialized_end=3211
  _ENTITIESLOGLEVEL._serialized_start=3213
  _ENTITIESLOGLEVEL._serialized_end=3282
  _SETLOGLEVELREQUEST._serialized_start=3284
  _SETLOGLEVELREQUEST._serialized_end=3378
  _SETLOGLEVELRESPONSE._serialized_start=3381
  _SETLOGLEVELRESPONSE._serialized_end=3655
  _SETLOGLEVELRESPONSE_REASON._serialized_start=3537
  _SETLOGLEVELRESPONSE_REASON._serialized_end=3655
  _GETLOGLEVELREQUEST._serialized_start=3657
  _GETLOGLEVELREQUEST._serialized_end=3727
  _GETLOGLEVELRESPONSE._serialized_start=3730
  _GETLOGLEVELRESPONSE._serialized_end=4046
  _GETLOGLEVELRESPONSE_REASON._serialized_start=3537
  _GETLOGLEVELRESPONSE_REASON._serialized_end=3655
  _GETLOGGABLEENTITIESREQUEST._serialized_start=4048
  _GETLOGGABLEENTITIESREQUEST._serialized_end=4108
  _HEARTBEAT._serialized_start=4110
  _HEARTBEAT._serialized_end=4150
  _REBOOTDEVICEREQUEST._serialized_start=4152
  _REBOOTDEVICEREQUEST._serialized_end=4205
  _REBOOTDEVICERESPONSE._serialized_start=4208
  _REBOOTDEVICERESPONSE._serialized_end=4455
  _REBOOTDEVICERESPONSE_REASON._serialized_start=4334
  _REBOOTDEVICERESPONSE_REASON._serialized_end=4455
  _NATIVEHWMANAGEMENTSERVICE._serialized_start=4458
  _NATIVEHWMANAGEMENTSERVICE._serialized_end=5656
# @@protoc_insertion_point(module_scope)
