# -*- coding: utf-8 -*-
# Generated by the protocol buffer compiler.  DO NOT EDIT!
# source: minknow/rpc/device.proto

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 minknow.rpc import rpc_options_pb2 as minknow_dot_rpc_dot_rpc__options__pb2
from google.protobuf import wrappers_pb2 as google_dot_protobuf_dot_wrappers__pb2


DESCRIPTOR = _descriptor.FileDescriptor(
  name='minknow/rpc/device.proto',
  package='ont.rpc.device',
  syntax='proto3',
  serialized_options=None,
  serialized_pb=b'\n\x18minknow/rpc/device.proto\x12\x0eont.rpc.device\x1a\x1dminknow/rpc/rpc_options.proto\x1a\x1egoogle/protobuf/wrappers.proto\"a\n\x14\x43hannelConfiguration\x12\x0c\n\x04well\x18\x01 \x01(\r\x12\x14\n\x0ctest_current\x18\x02 \x01(\x08\x12\x14\n\x0cregeneration\x18\x03 \x01(\x08\x12\x0f\n\x07unblock\x18\x04 \x01(\x08\"\x16\n\x14GetDeviceInfoRequest\"\x8d\x04\n\x15GetDeviceInfoResponse\x12\x11\n\tdevice_id\x18\x01 \x01(\t\x12\x45\n\x0b\x64\x65vice_type\x18\x02 \x01(\x0e\x32\x30.ont.rpc.device.GetDeviceInfoResponse.DeviceType\x12\x14\n\x0cis_simulated\x18\x03 \x01(\x08\x12\x19\n\x11max_channel_count\x18\x04 \x01(\r\x12\x1d\n\x15max_wells_per_channel\x18\x05 \x01(\r\x12\x1b\n\x13\x63\x61n_set_temperature\x18\x06 \x01(\x08\x12\x14\n\x0c\x64igitisation\x18\x07 \x01(\r\x12\x18\n\x10location_defined\x18\x08 \x01(\x08\x12\x16\n\x0elocation_index\x18\t \x01(\r\x12P\n\x10\x66irmware_version\x18\n \x03(\x0b\x32\x36.ont.rpc.device.GetDeviceInfoResponse.ComponentVersion\x1a\x36\n\x10\x43omponentVersion\x12\x11\n\tcomponent\x18\x01 \x01(\t\x12\x0f\n\x07version\x18\x02 \x01(\t\"[\n\nDeviceType\x12\n\n\x06MINION\x10\x00\x12\x0e\n\nPROMETHION\x10\x01\x12\x0b\n\x07GRIDION\x10\x02\x12\x13\n\x0fPROMETHION_BETA\x10\x03\x12\x0f\n\x0bMINION_MK1C\x10\x04\"\x17\n\x15GetDeviceStateRequest\"\x9c\x01\n\x16GetDeviceStateResponse\x12H\n\x0c\x64\x65vice_state\x18\x01 \x01(\x0e\x32\x32.ont.rpc.device.GetDeviceStateResponse.DeviceState\"8\n\x0b\x44\x65viceState\x12\x17\n\x13\x44\x45VICE_DISCONNECTED\x10\x00\x12\x10\n\x0c\x44\x45VICE_READY\x10\x01\"\x1a\n\x18StreamDeviceStateRequest\"\x18\n\x16GetFlowCellInfoRequest\"\xfa\x02\n\x17GetFlowCellInfoResponse\x12\x15\n\rhas_flow_cell\x18\x01 \x01(\x08\x12\x15\n\rchannel_count\x18\x02 \x01(\r\x12\x19\n\x11wells_per_channel\x18\x03 \x01(\r\x12\x14\n\x0c\x66low_cell_id\x18\x04 \x01(\t\x12\x0f\n\x07\x61sic_id\x18\x05 \x01(\r\x12\x13\n\x0b\x61sic_id_str\x18\r \x01(\t\x12\x14\n\x0cproduct_code\x18\x06 \x01(\t\x12#\n\x1buser_specified_flow_cell_id\x18\x07 \x01(\t\x12#\n\x1buser_specified_product_code\x18\x08 \x01(\t\x12\x13\n\x0bhas_adapter\x18\t \x01(\x08\x12\x12\n\nadapter_id\x18\n \x01(\t\x12\x1c\n\x12temperature_offset\x18\x0b \x01(\x02H\x00\x12\x14\n\x0c\x61sic_version\x18\x0c \x01(\tB\x1d\n\x1btemperature_offset_nullable\"\x1b\n\x19StreamFlowCellInfoRequest\"5\n!SetUserSpecifiedFlowCellIdRequest\x12\x10\n\x02id\x18\x01 \x01(\tB\x04\x88\xb5\x18\x01\"$\n\"SetUserSpecifiedFlowCellIdResponse\"8\n\"SetUserSpecifiedProductCodeRequest\x12\x12\n\x04\x63ode\x18\x01 \x01(\tB\x04\x88\xb5\x18\x01\"%\n#SetUserSpecifiedProductCodeResponse\"\x1a\n\x18GetChannelsLayoutRequest\"S\n\x19GetChannelsLayoutResponse\x12\x36\n\x0f\x63hannel_records\x18\x01 \x03(\x0b\x32\x1d.ont.rpc.device.ChannelRecord\"\xa0\x01\n\rChannelRecord\x12\n\n\x02id\x18\x01 \x01(\r\x12\x0c\n\x04name\x18\x02 \x01(\t\x12<\n\x0bmux_records\x18\x03 \x03(\x0b\x32\'.ont.rpc.device.ChannelRecord.MuxRecord\x1a\x37\n\tMuxRecord\x12\n\n\x02id\x18\x01 \x01(\r\x12\x0e\n\x06phys_x\x18\x02 \x01(\r\x12\x0e\n\x06phys_y\x18\x03 \x01(\r2\xa7\x07\n\rDeviceService\x12`\n\x0fget_device_info\x12$.ont.rpc.device.GetDeviceInfoRequest\x1a%.ont.rpc.device.GetDeviceInfoResponse\"\x00\x12\x63\n\x10get_device_state\x12%.ont.rpc.device.GetDeviceStateRequest\x1a&.ont.rpc.device.GetDeviceStateResponse\"\x00\x12k\n\x13stream_device_state\x12(.ont.rpc.device.StreamDeviceStateRequest\x1a&.ont.rpc.device.GetDeviceStateResponse\"\x00\x30\x01\x12g\n\x12get_flow_cell_info\x12&.ont.rpc.device.GetFlowCellInfoRequest\x1a\'.ont.rpc.device.GetFlowCellInfoResponse\"\x00\x12o\n\x15stream_flow_cell_info\x12).ont.rpc.device.StreamFlowCellInfoRequest\x1a\'.ont.rpc.device.GetFlowCellInfoResponse\"\x00\x30\x01\x12\x8a\x01\n\x1fset_user_specified_flow_cell_id\x12\x31.ont.rpc.device.SetUserSpecifiedFlowCellIdRequest\x1a\x32.ont.rpc.device.SetUserSpecifiedFlowCellIdResponse\"\x00\x12\x8c\x01\n\x1fset_user_specified_product_code\x12\x32.ont.rpc.device.SetUserSpecifiedProductCodeRequest\x1a\x33.ont.rpc.device.SetUserSpecifiedProductCodeResponse\"\x00\x12l\n\x13get_channels_layout\x12(.ont.rpc.device.GetChannelsLayoutRequest\x1a).ont.rpc.device.GetChannelsLayoutResponse\"\x00\x62\x06proto3'
  ,
  dependencies=[minknow_dot_rpc_dot_rpc__options__pb2.DESCRIPTOR,google_dot_protobuf_dot_wrappers__pb2.DESCRIPTOR,])



_GETDEVICEINFORESPONSE_DEVICETYPE = _descriptor.EnumDescriptor(
  name='DeviceType',
  full_name='ont.rpc.device.GetDeviceInfoResponse.DeviceType',
  filename=None,
  file=DESCRIPTOR,
  values=[
    _descriptor.EnumValueDescriptor(
      name='MINION', index=0, number=0,
      serialized_options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='PROMETHION', index=1, number=1,
      serialized_options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='GRIDION', index=2, number=2,
      serialized_options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='PROMETHION_BETA', index=3, number=3,
      serialized_options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='MINION_MK1C', index=4, number=4,
      serialized_options=None,
      type=None),
  ],
  containing_type=None,
  serialized_options=None,
  serialized_start=665,
  serialized_end=756,
)
_sym_db.RegisterEnumDescriptor(_GETDEVICEINFORESPONSE_DEVICETYPE)

_GETDEVICESTATERESPONSE_DEVICESTATE = _descriptor.EnumDescriptor(
  name='DeviceState',
  full_name='ont.rpc.device.GetDeviceStateResponse.DeviceState',
  filename=None,
  file=DESCRIPTOR,
  values=[
    _descriptor.EnumValueDescriptor(
      name='DEVICE_DISCONNECTED', index=0, number=0,
      serialized_options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='DEVICE_READY', index=1, number=1,
      serialized_options=None,
      type=None),
  ],
  containing_type=None,
  serialized_options=None,
  serialized_start=884,
  serialized_end=940,
)
_sym_db.RegisterEnumDescriptor(_GETDEVICESTATERESPONSE_DEVICESTATE)


_CHANNELCONFIGURATION = _descriptor.Descriptor(
  name='ChannelConfiguration',
  full_name='ont.rpc.device.ChannelConfiguration',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='well', full_name='ont.rpc.device.ChannelConfiguration.well', index=0,
      number=1, type=13, cpp_type=3, 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),
    _descriptor.FieldDescriptor(
      name='test_current', full_name='ont.rpc.device.ChannelConfiguration.test_current', 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),
    _descriptor.FieldDescriptor(
      name='regeneration', full_name='ont.rpc.device.ChannelConfiguration.regeneration', 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),
    _descriptor.FieldDescriptor(
      name='unblock', full_name='ont.rpc.device.ChannelConfiguration.unblock', index=3,
      number=4, 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),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=107,
  serialized_end=204,
)


_GETDEVICEINFOREQUEST = _descriptor.Descriptor(
  name='GetDeviceInfoRequest',
  full_name='ont.rpc.device.GetDeviceInfoRequest',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=206,
  serialized_end=228,
)


_GETDEVICEINFORESPONSE_COMPONENTVERSION = _descriptor.Descriptor(
  name='ComponentVersion',
  full_name='ont.rpc.device.GetDeviceInfoResponse.ComponentVersion',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='component', full_name='ont.rpc.device.GetDeviceInfoResponse.ComponentVersion.component', index=0,
      number=1, 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),
    _descriptor.FieldDescriptor(
      name='version', full_name='ont.rpc.device.GetDeviceInfoResponse.ComponentVersion.version', index=1,
      number=2, 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),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=609,
  serialized_end=663,
)

_GETDEVICEINFORESPONSE = _descriptor.Descriptor(
  name='GetDeviceInfoResponse',
  full_name='ont.rpc.device.GetDeviceInfoResponse',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='device_id', full_name='ont.rpc.device.GetDeviceInfoResponse.device_id', index=0,
      number=1, 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),
    _descriptor.FieldDescriptor(
      name='device_type', full_name='ont.rpc.device.GetDeviceInfoResponse.device_type', 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),
    _descriptor.FieldDescriptor(
      name='is_simulated', full_name='ont.rpc.device.GetDeviceInfoResponse.is_simulated', 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),
    _descriptor.FieldDescriptor(
      name='max_channel_count', full_name='ont.rpc.device.GetDeviceInfoResponse.max_channel_count', index=3,
      number=4, type=13, cpp_type=3, 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),
    _descriptor.FieldDescriptor(
      name='max_wells_per_channel', full_name='ont.rpc.device.GetDeviceInfoResponse.max_wells_per_channel', index=4,
      number=5, type=13, cpp_type=3, 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),
    _descriptor.FieldDescriptor(
      name='can_set_temperature', full_name='ont.rpc.device.GetDeviceInfoResponse.can_set_temperature', index=5,
      number=6, 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),
    _descriptor.FieldDescriptor(
      name='digitisation', full_name='ont.rpc.device.GetDeviceInfoResponse.digitisation', index=6,
      number=7, type=13, cpp_type=3, 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),
    _descriptor.FieldDescriptor(
      name='location_defined', full_name='ont.rpc.device.GetDeviceInfoResponse.location_defined', index=7,
      number=8, 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),
    _descriptor.FieldDescriptor(
      name='location_index', full_name='ont.rpc.device.GetDeviceInfoResponse.location_index', index=8,
      number=9, type=13, cpp_type=3, 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),
    _descriptor.FieldDescriptor(
      name='firmware_version', full_name='ont.rpc.device.GetDeviceInfoResponse.firmware_version', index=9,
      number=10, 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),
  ],
  extensions=[
  ],
  nested_types=[_GETDEVICEINFORESPONSE_COMPONENTVERSION, ],
  enum_types=[
    _GETDEVICEINFORESPONSE_DEVICETYPE,
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=231,
  serialized_end=756,
)


_GETDEVICESTATEREQUEST = _descriptor.Descriptor(
  name='GetDeviceStateRequest',
  full_name='ont.rpc.device.GetDeviceStateRequest',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=758,
  serialized_end=781,
)


_GETDEVICESTATERESPONSE = _descriptor.Descriptor(
  name='GetDeviceStateResponse',
  full_name='ont.rpc.device.GetDeviceStateResponse',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='device_state', full_name='ont.rpc.device.GetDeviceStateResponse.device_state', 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),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
    _GETDEVICESTATERESPONSE_DEVICESTATE,
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=784,
  serialized_end=940,
)


_STREAMDEVICESTATEREQUEST = _descriptor.Descriptor(
  name='StreamDeviceStateRequest',
  full_name='ont.rpc.device.StreamDeviceStateRequest',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=942,
  serialized_end=968,
)


_GETFLOWCELLINFOREQUEST = _descriptor.Descriptor(
  name='GetFlowCellInfoRequest',
  full_name='ont.rpc.device.GetFlowCellInfoRequest',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=970,
  serialized_end=994,
)


_GETFLOWCELLINFORESPONSE = _descriptor.Descriptor(
  name='GetFlowCellInfoResponse',
  full_name='ont.rpc.device.GetFlowCellInfoResponse',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='has_flow_cell', full_name='ont.rpc.device.GetFlowCellInfoResponse.has_flow_cell', index=0,
      number=1, 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),
    _descriptor.FieldDescriptor(
      name='channel_count', full_name='ont.rpc.device.GetFlowCellInfoResponse.channel_count', index=1,
      number=2, type=13, cpp_type=3, 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),
    _descriptor.FieldDescriptor(
      name='wells_per_channel', full_name='ont.rpc.device.GetFlowCellInfoResponse.wells_per_channel', index=2,
      number=3, type=13, cpp_type=3, 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),
    _descriptor.FieldDescriptor(
      name='flow_cell_id', full_name='ont.rpc.device.GetFlowCellInfoResponse.flow_cell_id', 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),
    _descriptor.FieldDescriptor(
      name='asic_id', full_name='ont.rpc.device.GetFlowCellInfoResponse.asic_id', index=4,
      number=5, type=13, cpp_type=3, 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),
    _descriptor.FieldDescriptor(
      name='asic_id_str', full_name='ont.rpc.device.GetFlowCellInfoResponse.asic_id_str', index=5,
      number=13, 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),
    _descriptor.FieldDescriptor(
      name='product_code', full_name='ont.rpc.device.GetFlowCellInfoResponse.product_code', index=6,
      number=6, 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),
    _descriptor.FieldDescriptor(
      name='user_specified_flow_cell_id', full_name='ont.rpc.device.GetFlowCellInfoResponse.user_specified_flow_cell_id', index=7,
      number=7, 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),
    _descriptor.FieldDescriptor(
      name='user_specified_product_code', full_name='ont.rpc.device.GetFlowCellInfoResponse.user_specified_product_code', index=8,
      number=8, 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),
    _descriptor.FieldDescriptor(
      name='has_adapter', full_name='ont.rpc.device.GetFlowCellInfoResponse.has_adapter', index=9,
      number=9, 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),
    _descriptor.FieldDescriptor(
      name='adapter_id', full_name='ont.rpc.device.GetFlowCellInfoResponse.adapter_id', index=10,
      number=10, 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),
    _descriptor.FieldDescriptor(
      name='temperature_offset', full_name='ont.rpc.device.GetFlowCellInfoResponse.temperature_offset', index=11,
      number=11, 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),
    _descriptor.FieldDescriptor(
      name='asic_version', full_name='ont.rpc.device.GetFlowCellInfoResponse.asic_version', index=12,
      number=12, 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),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
    _descriptor.OneofDescriptor(
      name='temperature_offset_nullable', full_name='ont.rpc.device.GetFlowCellInfoResponse.temperature_offset_nullable',
      index=0, containing_type=None, fields=[]),
  ],
  serialized_start=997,
  serialized_end=1375,
)


_STREAMFLOWCELLINFOREQUEST = _descriptor.Descriptor(
  name='StreamFlowCellInfoRequest',
  full_name='ont.rpc.device.StreamFlowCellInfoRequest',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1377,
  serialized_end=1404,
)


_SETUSERSPECIFIEDFLOWCELLIDREQUEST = _descriptor.Descriptor(
  name='SetUserSpecifiedFlowCellIdRequest',
  full_name='ont.rpc.device.SetUserSpecifiedFlowCellIdRequest',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='id', full_name='ont.rpc.device.SetUserSpecifiedFlowCellIdRequest.id', index=0,
      number=1, 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=b'\210\265\030\001', file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1406,
  serialized_end=1459,
)


_SETUSERSPECIFIEDFLOWCELLIDRESPONSE = _descriptor.Descriptor(
  name='SetUserSpecifiedFlowCellIdResponse',
  full_name='ont.rpc.device.SetUserSpecifiedFlowCellIdResponse',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1461,
  serialized_end=1497,
)


_SETUSERSPECIFIEDPRODUCTCODEREQUEST = _descriptor.Descriptor(
  name='SetUserSpecifiedProductCodeRequest',
  full_name='ont.rpc.device.SetUserSpecifiedProductCodeRequest',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='code', full_name='ont.rpc.device.SetUserSpecifiedProductCodeRequest.code', index=0,
      number=1, 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=b'\210\265\030\001', file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1499,
  serialized_end=1555,
)


_SETUSERSPECIFIEDPRODUCTCODERESPONSE = _descriptor.Descriptor(
  name='SetUserSpecifiedProductCodeResponse',
  full_name='ont.rpc.device.SetUserSpecifiedProductCodeResponse',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1557,
  serialized_end=1594,
)


_GETCHANNELSLAYOUTREQUEST = _descriptor.Descriptor(
  name='GetChannelsLayoutRequest',
  full_name='ont.rpc.device.GetChannelsLayoutRequest',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1596,
  serialized_end=1622,
)


_GETCHANNELSLAYOUTRESPONSE = _descriptor.Descriptor(
  name='GetChannelsLayoutResponse',
  full_name='ont.rpc.device.GetChannelsLayoutResponse',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='channel_records', full_name='ont.rpc.device.GetChannelsLayoutResponse.channel_records', 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),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1624,
  serialized_end=1707,
)


_CHANNELRECORD_MUXRECORD = _descriptor.Descriptor(
  name='MuxRecord',
  full_name='ont.rpc.device.ChannelRecord.MuxRecord',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='id', full_name='ont.rpc.device.ChannelRecord.MuxRecord.id', index=0,
      number=1, type=13, cpp_type=3, 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),
    _descriptor.FieldDescriptor(
      name='phys_x', full_name='ont.rpc.device.ChannelRecord.MuxRecord.phys_x', index=1,
      number=2, type=13, cpp_type=3, 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),
    _descriptor.FieldDescriptor(
      name='phys_y', full_name='ont.rpc.device.ChannelRecord.MuxRecord.phys_y', index=2,
      number=3, type=13, cpp_type=3, 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),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1815,
  serialized_end=1870,
)

_CHANNELRECORD = _descriptor.Descriptor(
  name='ChannelRecord',
  full_name='ont.rpc.device.ChannelRecord',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='id', full_name='ont.rpc.device.ChannelRecord.id', index=0,
      number=1, type=13, cpp_type=3, 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),
    _descriptor.FieldDescriptor(
      name='name', full_name='ont.rpc.device.ChannelRecord.name', index=1,
      number=2, 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),
    _descriptor.FieldDescriptor(
      name='mux_records', full_name='ont.rpc.device.ChannelRecord.mux_records', index=2,
      number=3, 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),
  ],
  extensions=[
  ],
  nested_types=[_CHANNELRECORD_MUXRECORD, ],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1710,
  serialized_end=1870,
)

_GETDEVICEINFORESPONSE_COMPONENTVERSION.containing_type = _GETDEVICEINFORESPONSE
_GETDEVICEINFORESPONSE.fields_by_name['device_type'].enum_type = _GETDEVICEINFORESPONSE_DEVICETYPE
_GETDEVICEINFORESPONSE.fields_by_name['firmware_version'].message_type = _GETDEVICEINFORESPONSE_COMPONENTVERSION
_GETDEVICEINFORESPONSE_DEVICETYPE.containing_type = _GETDEVICEINFORESPONSE
_GETDEVICESTATERESPONSE.fields_by_name['device_state'].enum_type = _GETDEVICESTATERESPONSE_DEVICESTATE
_GETDEVICESTATERESPONSE_DEVICESTATE.containing_type = _GETDEVICESTATERESPONSE
_GETFLOWCELLINFORESPONSE.oneofs_by_name['temperature_offset_nullable'].fields.append(
  _GETFLOWCELLINFORESPONSE.fields_by_name['temperature_offset'])
_GETFLOWCELLINFORESPONSE.fields_by_name['temperature_offset'].containing_oneof = _GETFLOWCELLINFORESPONSE.oneofs_by_name['temperature_offset_nullable']
_GETCHANNELSLAYOUTRESPONSE.fields_by_name['channel_records'].message_type = _CHANNELRECORD
_CHANNELRECORD_MUXRECORD.containing_type = _CHANNELRECORD
_CHANNELRECORD.fields_by_name['mux_records'].message_type = _CHANNELRECORD_MUXRECORD
DESCRIPTOR.message_types_by_name['ChannelConfiguration'] = _CHANNELCONFIGURATION
DESCRIPTOR.message_types_by_name['GetDeviceInfoRequest'] = _GETDEVICEINFOREQUEST
DESCRIPTOR.message_types_by_name['GetDeviceInfoResponse'] = _GETDEVICEINFORESPONSE
DESCRIPTOR.message_types_by_name['GetDeviceStateRequest'] = _GETDEVICESTATEREQUEST
DESCRIPTOR.message_types_by_name['GetDeviceStateResponse'] = _GETDEVICESTATERESPONSE
DESCRIPTOR.message_types_by_name['StreamDeviceStateRequest'] = _STREAMDEVICESTATEREQUEST
DESCRIPTOR.message_types_by_name['GetFlowCellInfoRequest'] = _GETFLOWCELLINFOREQUEST
DESCRIPTOR.message_types_by_name['GetFlowCellInfoResponse'] = _GETFLOWCELLINFORESPONSE
DESCRIPTOR.message_types_by_name['StreamFlowCellInfoRequest'] = _STREAMFLOWCELLINFOREQUEST
DESCRIPTOR.message_types_by_name['SetUserSpecifiedFlowCellIdRequest'] = _SETUSERSPECIFIEDFLOWCELLIDREQUEST
DESCRIPTOR.message_types_by_name['SetUserSpecifiedFlowCellIdResponse'] = _SETUSERSPECIFIEDFLOWCELLIDRESPONSE
DESCRIPTOR.message_types_by_name['SetUserSpecifiedProductCodeRequest'] = _SETUSERSPECIFIEDPRODUCTCODEREQUEST
DESCRIPTOR.message_types_by_name['SetUserSpecifiedProductCodeResponse'] = _SETUSERSPECIFIEDPRODUCTCODERESPONSE
DESCRIPTOR.message_types_by_name['GetChannelsLayoutRequest'] = _GETCHANNELSLAYOUTREQUEST
DESCRIPTOR.message_types_by_name['GetChannelsLayoutResponse'] = _GETCHANNELSLAYOUTRESPONSE
DESCRIPTOR.message_types_by_name['ChannelRecord'] = _CHANNELRECORD
_sym_db.RegisterFileDescriptor(DESCRIPTOR)

ChannelConfiguration = _reflection.GeneratedProtocolMessageType('ChannelConfiguration', (_message.Message,), {
  'DESCRIPTOR' : _CHANNELCONFIGURATION,
  '__module__' : 'minknow.rpc.device_pb2'
  # @@protoc_insertion_point(class_scope:ont.rpc.device.ChannelConfiguration)
  })
_sym_db.RegisterMessage(ChannelConfiguration)

GetDeviceInfoRequest = _reflection.GeneratedProtocolMessageType('GetDeviceInfoRequest', (_message.Message,), {
  'DESCRIPTOR' : _GETDEVICEINFOREQUEST,
  '__module__' : 'minknow.rpc.device_pb2'
  # @@protoc_insertion_point(class_scope:ont.rpc.device.GetDeviceInfoRequest)
  })
_sym_db.RegisterMessage(GetDeviceInfoRequest)

GetDeviceInfoResponse = _reflection.GeneratedProtocolMessageType('GetDeviceInfoResponse', (_message.Message,), {

  'ComponentVersion' : _reflection.GeneratedProtocolMessageType('ComponentVersion', (_message.Message,), {
    'DESCRIPTOR' : _GETDEVICEINFORESPONSE_COMPONENTVERSION,
    '__module__' : 'minknow.rpc.device_pb2'
    # @@protoc_insertion_point(class_scope:ont.rpc.device.GetDeviceInfoResponse.ComponentVersion)
    })
  ,
  'DESCRIPTOR' : _GETDEVICEINFORESPONSE,
  '__module__' : 'minknow.rpc.device_pb2'
  # @@protoc_insertion_point(class_scope:ont.rpc.device.GetDeviceInfoResponse)
  })
_sym_db.RegisterMessage(GetDeviceInfoResponse)
_sym_db.RegisterMessage(GetDeviceInfoResponse.ComponentVersion)

GetDeviceStateRequest = _reflection.GeneratedProtocolMessageType('GetDeviceStateRequest', (_message.Message,), {
  'DESCRIPTOR' : _GETDEVICESTATEREQUEST,
  '__module__' : 'minknow.rpc.device_pb2'
  # @@protoc_insertion_point(class_scope:ont.rpc.device.GetDeviceStateRequest)
  })
_sym_db.RegisterMessage(GetDeviceStateRequest)

GetDeviceStateResponse = _reflection.GeneratedProtocolMessageType('GetDeviceStateResponse', (_message.Message,), {
  'DESCRIPTOR' : _GETDEVICESTATERESPONSE,
  '__module__' : 'minknow.rpc.device_pb2'
  # @@protoc_insertion_point(class_scope:ont.rpc.device.GetDeviceStateResponse)
  })
_sym_db.RegisterMessage(GetDeviceStateResponse)

StreamDeviceStateRequest = _reflection.GeneratedProtocolMessageType('StreamDeviceStateRequest', (_message.Message,), {
  'DESCRIPTOR' : _STREAMDEVICESTATEREQUEST,
  '__module__' : 'minknow.rpc.device_pb2'
  # @@protoc_insertion_point(class_scope:ont.rpc.device.StreamDeviceStateRequest)
  })
_sym_db.RegisterMessage(StreamDeviceStateRequest)

GetFlowCellInfoRequest = _reflection.GeneratedProtocolMessageType('GetFlowCellInfoRequest', (_message.Message,), {
  'DESCRIPTOR' : _GETFLOWCELLINFOREQUEST,
  '__module__' : 'minknow.rpc.device_pb2'
  # @@protoc_insertion_point(class_scope:ont.rpc.device.GetFlowCellInfoRequest)
  })
_sym_db.RegisterMessage(GetFlowCellInfoRequest)

GetFlowCellInfoResponse = _reflection.GeneratedProtocolMessageType('GetFlowCellInfoResponse', (_message.Message,), {
  'DESCRIPTOR' : _GETFLOWCELLINFORESPONSE,
  '__module__' : 'minknow.rpc.device_pb2'
  # @@protoc_insertion_point(class_scope:ont.rpc.device.GetFlowCellInfoResponse)
  })
_sym_db.RegisterMessage(GetFlowCellInfoResponse)

StreamFlowCellInfoRequest = _reflection.GeneratedProtocolMessageType('StreamFlowCellInfoRequest', (_message.Message,), {
  'DESCRIPTOR' : _STREAMFLOWCELLINFOREQUEST,
  '__module__' : 'minknow.rpc.device_pb2'
  # @@protoc_insertion_point(class_scope:ont.rpc.device.StreamFlowCellInfoRequest)
  })
_sym_db.RegisterMessage(StreamFlowCellInfoRequest)

SetUserSpecifiedFlowCellIdRequest = _reflection.GeneratedProtocolMessageType('SetUserSpecifiedFlowCellIdRequest', (_message.Message,), {
  'DESCRIPTOR' : _SETUSERSPECIFIEDFLOWCELLIDREQUEST,
  '__module__' : 'minknow.rpc.device_pb2'
  # @@protoc_insertion_point(class_scope:ont.rpc.device.SetUserSpecifiedFlowCellIdRequest)
  })
_sym_db.RegisterMessage(SetUserSpecifiedFlowCellIdRequest)

SetUserSpecifiedFlowCellIdResponse = _reflection.GeneratedProtocolMessageType('SetUserSpecifiedFlowCellIdResponse', (_message.Message,), {
  'DESCRIPTOR' : _SETUSERSPECIFIEDFLOWCELLIDRESPONSE,
  '__module__' : 'minknow.rpc.device_pb2'
  # @@protoc_insertion_point(class_scope:ont.rpc.device.SetUserSpecifiedFlowCellIdResponse)
  })
_sym_db.RegisterMessage(SetUserSpecifiedFlowCellIdResponse)

SetUserSpecifiedProductCodeRequest = _reflection.GeneratedProtocolMessageType('SetUserSpecifiedProductCodeRequest', (_message.Message,), {
  'DESCRIPTOR' : _SETUSERSPECIFIEDPRODUCTCODEREQUEST,
  '__module__' : 'minknow.rpc.device_pb2'
  # @@protoc_insertion_point(class_scope:ont.rpc.device.SetUserSpecifiedProductCodeRequest)
  })
_sym_db.RegisterMessage(SetUserSpecifiedProductCodeRequest)

SetUserSpecifiedProductCodeResponse = _reflection.GeneratedProtocolMessageType('SetUserSpecifiedProductCodeResponse', (_message.Message,), {
  'DESCRIPTOR' : _SETUSERSPECIFIEDPRODUCTCODERESPONSE,
  '__module__' : 'minknow.rpc.device_pb2'
  # @@protoc_insertion_point(class_scope:ont.rpc.device.SetUserSpecifiedProductCodeResponse)
  })
_sym_db.RegisterMessage(SetUserSpecifiedProductCodeResponse)

GetChannelsLayoutRequest = _reflection.GeneratedProtocolMessageType('GetChannelsLayoutRequest', (_message.Message,), {
  'DESCRIPTOR' : _GETCHANNELSLAYOUTREQUEST,
  '__module__' : 'minknow.rpc.device_pb2'
  # @@protoc_insertion_point(class_scope:ont.rpc.device.GetChannelsLayoutRequest)
  })
_sym_db.RegisterMessage(GetChannelsLayoutRequest)

GetChannelsLayoutResponse = _reflection.GeneratedProtocolMessageType('GetChannelsLayoutResponse', (_message.Message,), {
  'DESCRIPTOR' : _GETCHANNELSLAYOUTRESPONSE,
  '__module__' : 'minknow.rpc.device_pb2'
  # @@protoc_insertion_point(class_scope:ont.rpc.device.GetChannelsLayoutResponse)
  })
_sym_db.RegisterMessage(GetChannelsLayoutResponse)

ChannelRecord = _reflection.GeneratedProtocolMessageType('ChannelRecord', (_message.Message,), {

  'MuxRecord' : _reflection.GeneratedProtocolMessageType('MuxRecord', (_message.Message,), {
    'DESCRIPTOR' : _CHANNELRECORD_MUXRECORD,
    '__module__' : 'minknow.rpc.device_pb2'
    # @@protoc_insertion_point(class_scope:ont.rpc.device.ChannelRecord.MuxRecord)
    })
  ,
  'DESCRIPTOR' : _CHANNELRECORD,
  '__module__' : 'minknow.rpc.device_pb2'
  # @@protoc_insertion_point(class_scope:ont.rpc.device.ChannelRecord)
  })
_sym_db.RegisterMessage(ChannelRecord)
_sym_db.RegisterMessage(ChannelRecord.MuxRecord)


_SETUSERSPECIFIEDFLOWCELLIDREQUEST.fields_by_name['id']._options = None
_SETUSERSPECIFIEDPRODUCTCODEREQUEST.fields_by_name['code']._options = None

_DEVICESERVICE = _descriptor.ServiceDescriptor(
  name='DeviceService',
  full_name='ont.rpc.device.DeviceService',
  file=DESCRIPTOR,
  index=0,
  serialized_options=None,
  serialized_start=1873,
  serialized_end=2808,
  methods=[
  _descriptor.MethodDescriptor(
    name='get_device_info',
    full_name='ont.rpc.device.DeviceService.get_device_info',
    index=0,
    containing_service=None,
    input_type=_GETDEVICEINFOREQUEST,
    output_type=_GETDEVICEINFORESPONSE,
    serialized_options=None,
  ),
  _descriptor.MethodDescriptor(
    name='get_device_state',
    full_name='ont.rpc.device.DeviceService.get_device_state',
    index=1,
    containing_service=None,
    input_type=_GETDEVICESTATEREQUEST,
    output_type=_GETDEVICESTATERESPONSE,
    serialized_options=None,
  ),
  _descriptor.MethodDescriptor(
    name='stream_device_state',
    full_name='ont.rpc.device.DeviceService.stream_device_state',
    index=2,
    containing_service=None,
    input_type=_STREAMDEVICESTATEREQUEST,
    output_type=_GETDEVICESTATERESPONSE,
    serialized_options=None,
  ),
  _descriptor.MethodDescriptor(
    name='get_flow_cell_info',
    full_name='ont.rpc.device.DeviceService.get_flow_cell_info',
    index=3,
    containing_service=None,
    input_type=_GETFLOWCELLINFOREQUEST,
    output_type=_GETFLOWCELLINFORESPONSE,
    serialized_options=None,
  ),
  _descriptor.MethodDescriptor(
    name='stream_flow_cell_info',
    full_name='ont.rpc.device.DeviceService.stream_flow_cell_info',
    index=4,
    containing_service=None,
    input_type=_STREAMFLOWCELLINFOREQUEST,
    output_type=_GETFLOWCELLINFORESPONSE,
    serialized_options=None,
  ),
  _descriptor.MethodDescriptor(
    name='set_user_specified_flow_cell_id',
    full_name='ont.rpc.device.DeviceService.set_user_specified_flow_cell_id',
    index=5,
    containing_service=None,
    input_type=_SETUSERSPECIFIEDFLOWCELLIDREQUEST,
    output_type=_SETUSERSPECIFIEDFLOWCELLIDRESPONSE,
    serialized_options=None,
  ),
  _descriptor.MethodDescriptor(
    name='set_user_specified_product_code',
    full_name='ont.rpc.device.DeviceService.set_user_specified_product_code',
    index=6,
    containing_service=None,
    input_type=_SETUSERSPECIFIEDPRODUCTCODEREQUEST,
    output_type=_SETUSERSPECIFIEDPRODUCTCODERESPONSE,
    serialized_options=None,
  ),
  _descriptor.MethodDescriptor(
    name='get_channels_layout',
    full_name='ont.rpc.device.DeviceService.get_channels_layout',
    index=7,
    containing_service=None,
    input_type=_GETCHANNELSLAYOUTREQUEST,
    output_type=_GETCHANNELSLAYOUTRESPONSE,
    serialized_options=None,
  ),
])
_sym_db.RegisterServiceDescriptor(_DEVICESERVICE)

DESCRIPTOR.services_by_name['DeviceService'] = _DEVICESERVICE

# @@protoc_insertion_point(module_scope)
