# Generated by the protocol buffer compiler.  DO NOT EDIT!
# source: synse.proto

import sys
_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1'))
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
from google.protobuf import descriptor_pb2
# @@protoc_insertion_point(imports)

_sym_db = _symbol_database.Default()




DESCRIPTOR = _descriptor.FileDescriptor(
  name='synse.proto',
  package='synse',
  syntax='proto3',
  serialized_pb=_b('\n\x0bsynse.proto\x12\x05synse\";\n\x0c\x44\x65viceFilter\x12\x0c\n\x04rack\x18\x01 \x01(\t\x12\r\n\x05\x62oard\x18\x02 \x01(\t\x12\x0e\n\x06\x64\x65vice\x18\x03 \x01(\t\"\x07\n\x05\x45mpty\"\x14\n\x06Status\x12\n\n\x02ok\x18\x01 \x01(\x08\"\xb5\x01\n\x0cPluginHealth\x12\x11\n\ttimestamp\x18\x01 \x01(\t\x12*\n\x06status\x18\x02 \x01(\x0e\x32\x1a.synse.PluginHealth.Status\x12\"\n\x06\x63hecks\x18\x03 \x03(\x0b\x32\x12.synse.HealthCheck\"B\n\x06Status\x12\x0b\n\x07UNKNOWN\x10\x00\x12\x06\n\x02OK\x10\x01\x12\x16\n\x12PARTIALLY_DEGRADED\x10\x03\x12\x0b\n\x07\x46\x41ILING\x10\x04\"y\n\x0bHealthCheck\x12\x0c\n\x04name\x18\x01 \x01(\t\x12*\n\x06status\x18\x02 \x01(\x0e\x32\x1a.synse.PluginHealth.Status\x12\x0f\n\x07message\x18\x03 \x01(\t\x12\x11\n\ttimestamp\x18\x04 \x01(\t\x12\x0c\n\x04type\x18\x05 \x01(\t\"1\n\x10\x44\x65viceCapability\x12\x0c\n\x04kind\x18\x01 \x01(\t\x12\x0f\n\x07outputs\x18\x02 \x03(\t\"\x80\x01\n\x08Metadata\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x12\n\nmaintainer\x18\x02 \x01(\t\x12\x0b\n\x03tag\x18\x03 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x04 \x01(\t\x12\x0b\n\x03vcs\x18\x05 \x01(\t\x12#\n\x07version\x18\x06 \x01(\x0b\x32\x12.synse.VersionInfo\"\x88\x01\n\x0bVersionInfo\x12\x15\n\rpluginVersion\x18\x01 \x01(\t\x12\x12\n\nsdkVersion\x18\x02 \x01(\t\x12\x11\n\tbuildDate\x18\x03 \x01(\t\x12\x11\n\tgitCommit\x18\x04 \x01(\t\x12\x0e\n\x06gitTag\x18\x05 \x01(\t\x12\x0c\n\x04\x61rch\x18\x06 \x01(\t\x12\n\n\x02os\x18\x07 \x01(\t\"\xb1\x02\n\x07Reading\x12\x11\n\ttimestamp\x18\x01 \x01(\t\x12\x0c\n\x04type\x18\x02 \x01(\t\x12\x0c\n\x04info\x18\x03 \x01(\t\x12\x19\n\x04unit\x18\x04 \x01(\x0b\x32\x0b.synse.Unit\x12\x16\n\x0cstring_value\x18\x05 \x01(\tH\x00\x12\x14\n\nbool_value\x18\x06 \x01(\x08H\x00\x12\x17\n\rfloat32_value\x18\x07 \x01(\x02H\x00\x12\x17\n\rfloat64_value\x18\x08 \x01(\x01H\x00\x12\x15\n\x0bint32_value\x18\t \x01(\x05H\x00\x12\x15\n\x0bint64_value\x18\n \x01(\x03H\x00\x12\x15\n\x0b\x62ytes_value\x18\x0b \x01(\x0cH\x00\x12\x16\n\x0cuint32_value\x18\x0c \x01(\rH\x00\x12\x16\n\x0cuint64_value\x18\r \x01(\x04H\x00\x42\x07\n\x05value\"V\n\tWriteInfo\x12)\n\x0c\x64\x65viceFilter\x18\x01 \x01(\x0b\x32\x13.synse.DeviceFilter\x12\x1e\n\x04\x64\x61ta\x18\x02 \x03(\x0b\x32\x10.synse.WriteData\")\n\tWriteData\x12\x0e\n\x06\x61\x63tion\x18\x01 \x01(\t\x12\x0c\n\x04\x64\x61ta\x18\x02 \x01(\x0c\"\x91\x02\n\rWriteResponse\x12\n\n\x02id\x18\x01 \x01(\t\x12\x0f\n\x07\x63reated\x18\x02 \x01(\t\x12\x0f\n\x07updated\x18\x03 \x01(\t\x12\x30\n\x06status\x18\x04 \x01(\x0e\x32 .synse.WriteResponse.WriteStatus\x12.\n\x05state\x18\x05 \x01(\x0e\x32\x1f.synse.WriteResponse.WriteState\x12\x0f\n\x07message\x18\x06 \x01(\t\">\n\x0bWriteStatus\x12\x0b\n\x07UNKNOWN\x10\x00\x12\x0b\n\x07PENDING\x10\x01\x12\x0b\n\x07WRITING\x10\x02\x12\x08\n\x04\x44ONE\x10\x03\"\x1f\n\nWriteState\x12\x06\n\x02OK\x10\x00\x12\t\n\x05\x45RROR\x10\x01\"\x1f\n\x11TransactionFilter\x12\n\n\x02id\x18\x01 \x01(\t\"\x92\x01\n\x0cTransactions\x12;\n\x0ctransactions\x18\x01 \x03(\x0b\x32%.synse.Transactions.TransactionsEntry\x1a\x45\n\x11TransactionsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x1f\n\x05value\x18\x02 \x01(\x0b\x32\x10.synse.WriteData:\x02\x38\x01\"\xf6\x01\n\x06\x44\x65vice\x12\x11\n\ttimestamp\x18\x01 \x01(\t\x12\x0b\n\x03uid\x18\x02 \x01(\t\x12\x0c\n\x04kind\x18\x03 \x01(\t\x12-\n\x08metadata\x18\x04 \x03(\x0b\x32\x1b.synse.Device.MetadataEntry\x12\x0e\n\x06plugin\x18\x05 \x01(\t\x12\x0c\n\x04info\x18\x06 \x01(\t\x12!\n\x08location\x18\x07 \x01(\x0b\x32\x0f.synse.Location\x12\x1d\n\x06output\x18\x08 \x03(\x0b\x32\r.synse.Output\x1a/\n\rMetadataEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\'\n\x08Location\x12\x0c\n\x04rack\x18\x01 \x01(\t\x12\r\n\x05\x62oard\x18\x02 \x01(\t\"i\n\x06Output\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x0c\n\x04type\x18\x02 \x01(\t\x12\x11\n\tprecision\x18\x03 \x01(\x05\x12\x15\n\rscalingFactor\x18\x04 \x01(\x01\x12\x19\n\x04unit\x18\x05 \x01(\x0b\x32\x0b.synse.Unit\"$\n\x04Unit\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x0e\n\x06symbol\x18\x02 \x01(\t2\xce\x03\n\x06Plugin\x12%\n\x04Test\x12\x0c.synse.Empty\x1a\r.synse.Status\"\x00\x12-\n\x07Version\x12\x0c.synse.Empty\x1a\x12.synse.VersionInfo\"\x00\x12-\n\x06Health\x12\x0c.synse.Empty\x1a\x13.synse.PluginHealth\"\x00\x12+\n\x08Metainfo\x12\x0c.synse.Empty\x1a\x0f.synse.Metadata\"\x00\x12\x39\n\x0c\x43\x61pabilities\x12\x0c.synse.Empty\x1a\x17.synse.DeviceCapability\"\x00\x30\x01\x12\x31\n\x07\x44\x65vices\x12\x13.synse.DeviceFilter\x1a\r.synse.Device\"\x00\x30\x01\x12/\n\x04Read\x12\x13.synse.DeviceFilter\x1a\x0e.synse.Reading\"\x00\x30\x01\x12\x30\n\x05Write\x12\x10.synse.WriteInfo\x1a\x13.synse.Transactions\"\x00\x12\x41\n\x0bTransaction\x12\x18.synse.TransactionFilter\x1a\x14.synse.WriteResponse\"\x00\x30\x01\x62\x06proto3')
)



_PLUGINHEALTH_STATUS = _descriptor.EnumDescriptor(
  name='Status',
  full_name='synse.PluginHealth.Status',
  filename=None,
  file=DESCRIPTOR,
  values=[
    _descriptor.EnumValueDescriptor(
      name='UNKNOWN', index=0, number=0,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OK', index=1, number=1,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='PARTIALLY_DEGRADED', index=2, number=3,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='FAILING', index=3, number=4,
      options=None,
      type=None),
  ],
  containing_type=None,
  options=None,
  serialized_start=230,
  serialized_end=296,
)
_sym_db.RegisterEnumDescriptor(_PLUGINHEALTH_STATUS)

_WRITERESPONSE_WRITESTATUS = _descriptor.EnumDescriptor(
  name='WriteStatus',
  full_name='synse.WriteResponse.WriteStatus',
  filename=None,
  file=DESCRIPTOR,
  values=[
    _descriptor.EnumValueDescriptor(
      name='UNKNOWN', index=0, number=0,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='PENDING', index=1, number=1,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='WRITING', index=2, number=2,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='DONE', index=3, number=3,
      options=None,
      type=None),
  ],
  containing_type=None,
  options=None,
  serialized_start=1360,
  serialized_end=1422,
)
_sym_db.RegisterEnumDescriptor(_WRITERESPONSE_WRITESTATUS)

_WRITERESPONSE_WRITESTATE = _descriptor.EnumDescriptor(
  name='WriteState',
  full_name='synse.WriteResponse.WriteState',
  filename=None,
  file=DESCRIPTOR,
  values=[
    _descriptor.EnumValueDescriptor(
      name='OK', index=0, number=0,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='ERROR', index=1, number=1,
      options=None,
      type=None),
  ],
  containing_type=None,
  options=None,
  serialized_start=1424,
  serialized_end=1455,
)
_sym_db.RegisterEnumDescriptor(_WRITERESPONSE_WRITESTATE)


_DEVICEFILTER = _descriptor.Descriptor(
  name='DeviceFilter',
  full_name='synse.DeviceFilter',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='rack', full_name='synse.DeviceFilter.rack', 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,
      options=None),
    _descriptor.FieldDescriptor(
      name='board', full_name='synse.DeviceFilter.board', 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,
      options=None),
    _descriptor.FieldDescriptor(
      name='device', full_name='synse.DeviceFilter.device', 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,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=22,
  serialized_end=81,
)


_EMPTY = _descriptor.Descriptor(
  name='Empty',
  full_name='synse.Empty',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=83,
  serialized_end=90,
)


_STATUS = _descriptor.Descriptor(
  name='Status',
  full_name='synse.Status',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='ok', full_name='synse.Status.ok', 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,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=92,
  serialized_end=112,
)


_PLUGINHEALTH = _descriptor.Descriptor(
  name='PluginHealth',
  full_name='synse.PluginHealth',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='timestamp', full_name='synse.PluginHealth.timestamp', 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,
      options=None),
    _descriptor.FieldDescriptor(
      name='status', full_name='synse.PluginHealth.status', 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,
      options=None),
    _descriptor.FieldDescriptor(
      name='checks', full_name='synse.PluginHealth.checks', 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,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
    _PLUGINHEALTH_STATUS,
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=115,
  serialized_end=296,
)


_HEALTHCHECK = _descriptor.Descriptor(
  name='HealthCheck',
  full_name='synse.HealthCheck',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='name', full_name='synse.HealthCheck.name', 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,
      options=None),
    _descriptor.FieldDescriptor(
      name='status', full_name='synse.HealthCheck.status', 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,
      options=None),
    _descriptor.FieldDescriptor(
      name='message', full_name='synse.HealthCheck.message', 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,
      options=None),
    _descriptor.FieldDescriptor(
      name='timestamp', full_name='synse.HealthCheck.timestamp', 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,
      options=None),
    _descriptor.FieldDescriptor(
      name='type', full_name='synse.HealthCheck.type', 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,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=298,
  serialized_end=419,
)


_DEVICECAPABILITY = _descriptor.Descriptor(
  name='DeviceCapability',
  full_name='synse.DeviceCapability',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='kind', full_name='synse.DeviceCapability.kind', 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,
      options=None),
    _descriptor.FieldDescriptor(
      name='outputs', full_name='synse.DeviceCapability.outputs', index=1,
      number=2, type=9, cpp_type=9, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=421,
  serialized_end=470,
)


_METADATA = _descriptor.Descriptor(
  name='Metadata',
  full_name='synse.Metadata',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='name', full_name='synse.Metadata.name', 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,
      options=None),
    _descriptor.FieldDescriptor(
      name='maintainer', full_name='synse.Metadata.maintainer', 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,
      options=None),
    _descriptor.FieldDescriptor(
      name='tag', full_name='synse.Metadata.tag', 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,
      options=None),
    _descriptor.FieldDescriptor(
      name='description', full_name='synse.Metadata.description', 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,
      options=None),
    _descriptor.FieldDescriptor(
      name='vcs', full_name='synse.Metadata.vcs', 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,
      options=None),
    _descriptor.FieldDescriptor(
      name='version', full_name='synse.Metadata.version', index=5,
      number=6, 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,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=473,
  serialized_end=601,
)


_VERSIONINFO = _descriptor.Descriptor(
  name='VersionInfo',
  full_name='synse.VersionInfo',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='pluginVersion', full_name='synse.VersionInfo.pluginVersion', 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,
      options=None),
    _descriptor.FieldDescriptor(
      name='sdkVersion', full_name='synse.VersionInfo.sdkVersion', 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,
      options=None),
    _descriptor.FieldDescriptor(
      name='buildDate', full_name='synse.VersionInfo.buildDate', 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,
      options=None),
    _descriptor.FieldDescriptor(
      name='gitCommit', full_name='synse.VersionInfo.gitCommit', 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,
      options=None),
    _descriptor.FieldDescriptor(
      name='gitTag', full_name='synse.VersionInfo.gitTag', 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,
      options=None),
    _descriptor.FieldDescriptor(
      name='arch', full_name='synse.VersionInfo.arch', index=5,
      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,
      options=None),
    _descriptor.FieldDescriptor(
      name='os', full_name='synse.VersionInfo.os', index=6,
      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,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=604,
  serialized_end=740,
)


_READING = _descriptor.Descriptor(
  name='Reading',
  full_name='synse.Reading',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='timestamp', full_name='synse.Reading.timestamp', 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,
      options=None),
    _descriptor.FieldDescriptor(
      name='type', full_name='synse.Reading.type', 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,
      options=None),
    _descriptor.FieldDescriptor(
      name='info', full_name='synse.Reading.info', 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,
      options=None),
    _descriptor.FieldDescriptor(
      name='unit', full_name='synse.Reading.unit', 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,
      options=None),
    _descriptor.FieldDescriptor(
      name='string_value', full_name='synse.Reading.string_value', 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,
      options=None),
    _descriptor.FieldDescriptor(
      name='bool_value', full_name='synse.Reading.bool_value', 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,
      options=None),
    _descriptor.FieldDescriptor(
      name='float32_value', full_name='synse.Reading.float32_value', index=6,
      number=7, 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,
      options=None),
    _descriptor.FieldDescriptor(
      name='float64_value', full_name='synse.Reading.float64_value', index=7,
      number=8, type=1, cpp_type=5, 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,
      options=None),
    _descriptor.FieldDescriptor(
      name='int32_value', full_name='synse.Reading.int32_value', index=8,
      number=9, type=5, cpp_type=1, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='int64_value', full_name='synse.Reading.int64_value', index=9,
      number=10, 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,
      options=None),
    _descriptor.FieldDescriptor(
      name='bytes_value', full_name='synse.Reading.bytes_value', index=10,
      number=11, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='uint32_value', full_name='synse.Reading.uint32_value', index=11,
      number=12, 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,
      options=None),
    _descriptor.FieldDescriptor(
      name='uint64_value', full_name='synse.Reading.uint64_value', index=12,
      number=13, 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,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
    _descriptor.OneofDescriptor(
      name='value', full_name='synse.Reading.value',
      index=0, containing_type=None, fields=[]),
  ],
  serialized_start=743,
  serialized_end=1048,
)


_WRITEINFO = _descriptor.Descriptor(
  name='WriteInfo',
  full_name='synse.WriteInfo',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='deviceFilter', full_name='synse.WriteInfo.deviceFilter', 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,
      options=None),
    _descriptor.FieldDescriptor(
      name='data', full_name='synse.WriteInfo.data', index=1,
      number=2, 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,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1050,
  serialized_end=1136,
)


_WRITEDATA = _descriptor.Descriptor(
  name='WriteData',
  full_name='synse.WriteData',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='action', full_name='synse.WriteData.action', 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,
      options=None),
    _descriptor.FieldDescriptor(
      name='data', full_name='synse.WriteData.data', index=1,
      number=2, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1138,
  serialized_end=1179,
)


_WRITERESPONSE = _descriptor.Descriptor(
  name='WriteResponse',
  full_name='synse.WriteResponse',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='id', full_name='synse.WriteResponse.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,
      options=None),
    _descriptor.FieldDescriptor(
      name='created', full_name='synse.WriteResponse.created', 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,
      options=None),
    _descriptor.FieldDescriptor(
      name='updated', full_name='synse.WriteResponse.updated', 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,
      options=None),
    _descriptor.FieldDescriptor(
      name='status', full_name='synse.WriteResponse.status', index=3,
      number=4, 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,
      options=None),
    _descriptor.FieldDescriptor(
      name='state', full_name='synse.WriteResponse.state', index=4,
      number=5, 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,
      options=None),
    _descriptor.FieldDescriptor(
      name='message', full_name='synse.WriteResponse.message', index=5,
      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,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
    _WRITERESPONSE_WRITESTATUS,
    _WRITERESPONSE_WRITESTATE,
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1182,
  serialized_end=1455,
)


_TRANSACTIONFILTER = _descriptor.Descriptor(
  name='TransactionFilter',
  full_name='synse.TransactionFilter',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='id', full_name='synse.TransactionFilter.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,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1457,
  serialized_end=1488,
)


_TRANSACTIONS_TRANSACTIONSENTRY = _descriptor.Descriptor(
  name='TransactionsEntry',
  full_name='synse.Transactions.TransactionsEntry',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='key', full_name='synse.Transactions.TransactionsEntry.key', 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,
      options=None),
    _descriptor.FieldDescriptor(
      name='value', full_name='synse.Transactions.TransactionsEntry.value', 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,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=_descriptor._ParseOptions(descriptor_pb2.MessageOptions(), _b('8\001')),
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1568,
  serialized_end=1637,
)

_TRANSACTIONS = _descriptor.Descriptor(
  name='Transactions',
  full_name='synse.Transactions',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='transactions', full_name='synse.Transactions.transactions', 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,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[_TRANSACTIONS_TRANSACTIONSENTRY, ],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1491,
  serialized_end=1637,
)


_DEVICE_METADATAENTRY = _descriptor.Descriptor(
  name='MetadataEntry',
  full_name='synse.Device.MetadataEntry',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='key', full_name='synse.Device.MetadataEntry.key', 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,
      options=None),
    _descriptor.FieldDescriptor(
      name='value', full_name='synse.Device.MetadataEntry.value', 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,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=_descriptor._ParseOptions(descriptor_pb2.MessageOptions(), _b('8\001')),
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1839,
  serialized_end=1886,
)

_DEVICE = _descriptor.Descriptor(
  name='Device',
  full_name='synse.Device',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='timestamp', full_name='synse.Device.timestamp', 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,
      options=None),
    _descriptor.FieldDescriptor(
      name='uid', full_name='synse.Device.uid', 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,
      options=None),
    _descriptor.FieldDescriptor(
      name='kind', full_name='synse.Device.kind', 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,
      options=None),
    _descriptor.FieldDescriptor(
      name='metadata', full_name='synse.Device.metadata', index=3,
      number=4, 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,
      options=None),
    _descriptor.FieldDescriptor(
      name='plugin', full_name='synse.Device.plugin', 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,
      options=None),
    _descriptor.FieldDescriptor(
      name='info', full_name='synse.Device.info', index=5,
      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,
      options=None),
    _descriptor.FieldDescriptor(
      name='location', full_name='synse.Device.location', index=6,
      number=7, 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,
      options=None),
    _descriptor.FieldDescriptor(
      name='output', full_name='synse.Device.output', index=7,
      number=8, 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,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[_DEVICE_METADATAENTRY, ],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1640,
  serialized_end=1886,
)


_LOCATION = _descriptor.Descriptor(
  name='Location',
  full_name='synse.Location',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='rack', full_name='synse.Location.rack', 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,
      options=None),
    _descriptor.FieldDescriptor(
      name='board', full_name='synse.Location.board', 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,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1888,
  serialized_end=1927,
)


_OUTPUT = _descriptor.Descriptor(
  name='Output',
  full_name='synse.Output',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='name', full_name='synse.Output.name', 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,
      options=None),
    _descriptor.FieldDescriptor(
      name='type', full_name='synse.Output.type', 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,
      options=None),
    _descriptor.FieldDescriptor(
      name='precision', full_name='synse.Output.precision', index=2,
      number=3, type=5, cpp_type=1, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='scalingFactor', full_name='synse.Output.scalingFactor', index=3,
      number=4, type=1, cpp_type=5, 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,
      options=None),
    _descriptor.FieldDescriptor(
      name='unit', full_name='synse.Output.unit', index=4,
      number=5, 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,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1929,
  serialized_end=2034,
)


_UNIT = _descriptor.Descriptor(
  name='Unit',
  full_name='synse.Unit',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='name', full_name='synse.Unit.name', 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,
      options=None),
    _descriptor.FieldDescriptor(
      name='symbol', full_name='synse.Unit.symbol', 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,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2036,
  serialized_end=2072,
)

_PLUGINHEALTH.fields_by_name['status'].enum_type = _PLUGINHEALTH_STATUS
_PLUGINHEALTH.fields_by_name['checks'].message_type = _HEALTHCHECK
_PLUGINHEALTH_STATUS.containing_type = _PLUGINHEALTH
_HEALTHCHECK.fields_by_name['status'].enum_type = _PLUGINHEALTH_STATUS
_METADATA.fields_by_name['version'].message_type = _VERSIONINFO
_READING.fields_by_name['unit'].message_type = _UNIT
_READING.oneofs_by_name['value'].fields.append(
  _READING.fields_by_name['string_value'])
_READING.fields_by_name['string_value'].containing_oneof = _READING.oneofs_by_name['value']
_READING.oneofs_by_name['value'].fields.append(
  _READING.fields_by_name['bool_value'])
_READING.fields_by_name['bool_value'].containing_oneof = _READING.oneofs_by_name['value']
_READING.oneofs_by_name['value'].fields.append(
  _READING.fields_by_name['float32_value'])
_READING.fields_by_name['float32_value'].containing_oneof = _READING.oneofs_by_name['value']
_READING.oneofs_by_name['value'].fields.append(
  _READING.fields_by_name['float64_value'])
_READING.fields_by_name['float64_value'].containing_oneof = _READING.oneofs_by_name['value']
_READING.oneofs_by_name['value'].fields.append(
  _READING.fields_by_name['int32_value'])
_READING.fields_by_name['int32_value'].containing_oneof = _READING.oneofs_by_name['value']
_READING.oneofs_by_name['value'].fields.append(
  _READING.fields_by_name['int64_value'])
_READING.fields_by_name['int64_value'].containing_oneof = _READING.oneofs_by_name['value']
_READING.oneofs_by_name['value'].fields.append(
  _READING.fields_by_name['bytes_value'])
_READING.fields_by_name['bytes_value'].containing_oneof = _READING.oneofs_by_name['value']
_READING.oneofs_by_name['value'].fields.append(
  _READING.fields_by_name['uint32_value'])
_READING.fields_by_name['uint32_value'].containing_oneof = _READING.oneofs_by_name['value']
_READING.oneofs_by_name['value'].fields.append(
  _READING.fields_by_name['uint64_value'])
_READING.fields_by_name['uint64_value'].containing_oneof = _READING.oneofs_by_name['value']
_WRITEINFO.fields_by_name['deviceFilter'].message_type = _DEVICEFILTER
_WRITEINFO.fields_by_name['data'].message_type = _WRITEDATA
_WRITERESPONSE.fields_by_name['status'].enum_type = _WRITERESPONSE_WRITESTATUS
_WRITERESPONSE.fields_by_name['state'].enum_type = _WRITERESPONSE_WRITESTATE
_WRITERESPONSE_WRITESTATUS.containing_type = _WRITERESPONSE
_WRITERESPONSE_WRITESTATE.containing_type = _WRITERESPONSE
_TRANSACTIONS_TRANSACTIONSENTRY.fields_by_name['value'].message_type = _WRITEDATA
_TRANSACTIONS_TRANSACTIONSENTRY.containing_type = _TRANSACTIONS
_TRANSACTIONS.fields_by_name['transactions'].message_type = _TRANSACTIONS_TRANSACTIONSENTRY
_DEVICE_METADATAENTRY.containing_type = _DEVICE
_DEVICE.fields_by_name['metadata'].message_type = _DEVICE_METADATAENTRY
_DEVICE.fields_by_name['location'].message_type = _LOCATION
_DEVICE.fields_by_name['output'].message_type = _OUTPUT
_OUTPUT.fields_by_name['unit'].message_type = _UNIT
DESCRIPTOR.message_types_by_name['DeviceFilter'] = _DEVICEFILTER
DESCRIPTOR.message_types_by_name['Empty'] = _EMPTY
DESCRIPTOR.message_types_by_name['Status'] = _STATUS
DESCRIPTOR.message_types_by_name['PluginHealth'] = _PLUGINHEALTH
DESCRIPTOR.message_types_by_name['HealthCheck'] = _HEALTHCHECK
DESCRIPTOR.message_types_by_name['DeviceCapability'] = _DEVICECAPABILITY
DESCRIPTOR.message_types_by_name['Metadata'] = _METADATA
DESCRIPTOR.message_types_by_name['VersionInfo'] = _VERSIONINFO
DESCRIPTOR.message_types_by_name['Reading'] = _READING
DESCRIPTOR.message_types_by_name['WriteInfo'] = _WRITEINFO
DESCRIPTOR.message_types_by_name['WriteData'] = _WRITEDATA
DESCRIPTOR.message_types_by_name['WriteResponse'] = _WRITERESPONSE
DESCRIPTOR.message_types_by_name['TransactionFilter'] = _TRANSACTIONFILTER
DESCRIPTOR.message_types_by_name['Transactions'] = _TRANSACTIONS
DESCRIPTOR.message_types_by_name['Device'] = _DEVICE
DESCRIPTOR.message_types_by_name['Location'] = _LOCATION
DESCRIPTOR.message_types_by_name['Output'] = _OUTPUT
DESCRIPTOR.message_types_by_name['Unit'] = _UNIT
_sym_db.RegisterFileDescriptor(DESCRIPTOR)

DeviceFilter = _reflection.GeneratedProtocolMessageType('DeviceFilter', (_message.Message,), dict(
  DESCRIPTOR = _DEVICEFILTER,
  __module__ = 'synse_pb2'
  # @@protoc_insertion_point(class_scope:synse.DeviceFilter)
  ))
_sym_db.RegisterMessage(DeviceFilter)

Empty = _reflection.GeneratedProtocolMessageType('Empty', (_message.Message,), dict(
  DESCRIPTOR = _EMPTY,
  __module__ = 'synse_pb2'
  # @@protoc_insertion_point(class_scope:synse.Empty)
  ))
_sym_db.RegisterMessage(Empty)

Status = _reflection.GeneratedProtocolMessageType('Status', (_message.Message,), dict(
  DESCRIPTOR = _STATUS,
  __module__ = 'synse_pb2'
  # @@protoc_insertion_point(class_scope:synse.Status)
  ))
_sym_db.RegisterMessage(Status)

PluginHealth = _reflection.GeneratedProtocolMessageType('PluginHealth', (_message.Message,), dict(
  DESCRIPTOR = _PLUGINHEALTH,
  __module__ = 'synse_pb2'
  # @@protoc_insertion_point(class_scope:synse.PluginHealth)
  ))
_sym_db.RegisterMessage(PluginHealth)

HealthCheck = _reflection.GeneratedProtocolMessageType('HealthCheck', (_message.Message,), dict(
  DESCRIPTOR = _HEALTHCHECK,
  __module__ = 'synse_pb2'
  # @@protoc_insertion_point(class_scope:synse.HealthCheck)
  ))
_sym_db.RegisterMessage(HealthCheck)

DeviceCapability = _reflection.GeneratedProtocolMessageType('DeviceCapability', (_message.Message,), dict(
  DESCRIPTOR = _DEVICECAPABILITY,
  __module__ = 'synse_pb2'
  # @@protoc_insertion_point(class_scope:synse.DeviceCapability)
  ))
_sym_db.RegisterMessage(DeviceCapability)

Metadata = _reflection.GeneratedProtocolMessageType('Metadata', (_message.Message,), dict(
  DESCRIPTOR = _METADATA,
  __module__ = 'synse_pb2'
  # @@protoc_insertion_point(class_scope:synse.Metadata)
  ))
_sym_db.RegisterMessage(Metadata)

VersionInfo = _reflection.GeneratedProtocolMessageType('VersionInfo', (_message.Message,), dict(
  DESCRIPTOR = _VERSIONINFO,
  __module__ = 'synse_pb2'
  # @@protoc_insertion_point(class_scope:synse.VersionInfo)
  ))
_sym_db.RegisterMessage(VersionInfo)

Reading = _reflection.GeneratedProtocolMessageType('Reading', (_message.Message,), dict(
  DESCRIPTOR = _READING,
  __module__ = 'synse_pb2'
  # @@protoc_insertion_point(class_scope:synse.Reading)
  ))
_sym_db.RegisterMessage(Reading)

WriteInfo = _reflection.GeneratedProtocolMessageType('WriteInfo', (_message.Message,), dict(
  DESCRIPTOR = _WRITEINFO,
  __module__ = 'synse_pb2'
  # @@protoc_insertion_point(class_scope:synse.WriteInfo)
  ))
_sym_db.RegisterMessage(WriteInfo)

WriteData = _reflection.GeneratedProtocolMessageType('WriteData', (_message.Message,), dict(
  DESCRIPTOR = _WRITEDATA,
  __module__ = 'synse_pb2'
  # @@protoc_insertion_point(class_scope:synse.WriteData)
  ))
_sym_db.RegisterMessage(WriteData)

WriteResponse = _reflection.GeneratedProtocolMessageType('WriteResponse', (_message.Message,), dict(
  DESCRIPTOR = _WRITERESPONSE,
  __module__ = 'synse_pb2'
  # @@protoc_insertion_point(class_scope:synse.WriteResponse)
  ))
_sym_db.RegisterMessage(WriteResponse)

TransactionFilter = _reflection.GeneratedProtocolMessageType('TransactionFilter', (_message.Message,), dict(
  DESCRIPTOR = _TRANSACTIONFILTER,
  __module__ = 'synse_pb2'
  # @@protoc_insertion_point(class_scope:synse.TransactionFilter)
  ))
_sym_db.RegisterMessage(TransactionFilter)

Transactions = _reflection.GeneratedProtocolMessageType('Transactions', (_message.Message,), dict(

  TransactionsEntry = _reflection.GeneratedProtocolMessageType('TransactionsEntry', (_message.Message,), dict(
    DESCRIPTOR = _TRANSACTIONS_TRANSACTIONSENTRY,
    __module__ = 'synse_pb2'
    # @@protoc_insertion_point(class_scope:synse.Transactions.TransactionsEntry)
    ))
  ,
  DESCRIPTOR = _TRANSACTIONS,
  __module__ = 'synse_pb2'
  # @@protoc_insertion_point(class_scope:synse.Transactions)
  ))
_sym_db.RegisterMessage(Transactions)
_sym_db.RegisterMessage(Transactions.TransactionsEntry)

Device = _reflection.GeneratedProtocolMessageType('Device', (_message.Message,), dict(

  MetadataEntry = _reflection.GeneratedProtocolMessageType('MetadataEntry', (_message.Message,), dict(
    DESCRIPTOR = _DEVICE_METADATAENTRY,
    __module__ = 'synse_pb2'
    # @@protoc_insertion_point(class_scope:synse.Device.MetadataEntry)
    ))
  ,
  DESCRIPTOR = _DEVICE,
  __module__ = 'synse_pb2'
  # @@protoc_insertion_point(class_scope:synse.Device)
  ))
_sym_db.RegisterMessage(Device)
_sym_db.RegisterMessage(Device.MetadataEntry)

Location = _reflection.GeneratedProtocolMessageType('Location', (_message.Message,), dict(
  DESCRIPTOR = _LOCATION,
  __module__ = 'synse_pb2'
  # @@protoc_insertion_point(class_scope:synse.Location)
  ))
_sym_db.RegisterMessage(Location)

Output = _reflection.GeneratedProtocolMessageType('Output', (_message.Message,), dict(
  DESCRIPTOR = _OUTPUT,
  __module__ = 'synse_pb2'
  # @@protoc_insertion_point(class_scope:synse.Output)
  ))
_sym_db.RegisterMessage(Output)

Unit = _reflection.GeneratedProtocolMessageType('Unit', (_message.Message,), dict(
  DESCRIPTOR = _UNIT,
  __module__ = 'synse_pb2'
  # @@protoc_insertion_point(class_scope:synse.Unit)
  ))
_sym_db.RegisterMessage(Unit)


_TRANSACTIONS_TRANSACTIONSENTRY.has_options = True
_TRANSACTIONS_TRANSACTIONSENTRY._options = _descriptor._ParseOptions(descriptor_pb2.MessageOptions(), _b('8\001'))
_DEVICE_METADATAENTRY.has_options = True
_DEVICE_METADATAENTRY._options = _descriptor._ParseOptions(descriptor_pb2.MessageOptions(), _b('8\001'))
try:
  # THESE ELEMENTS WILL BE DEPRECATED.
  # Please use the generated *_pb2_grpc.py files instead.
  import grpc
  from grpc.beta import implementations as beta_implementations
  from grpc.beta import interfaces as beta_interfaces
  from grpc.framework.common import cardinality
  from grpc.framework.interfaces.face import utilities as face_utilities


  class PluginStub(object):
    # missing associated documentation comment in .proto file
    pass

    def __init__(self, channel):
      """Constructor.

      Args:
        channel: A grpc.Channel.
      """
      self.Test = channel.unary_unary(
          '/synse.Plugin/Test',
          request_serializer=Empty.SerializeToString,
          response_deserializer=Status.FromString,
          )
      self.Version = channel.unary_unary(
          '/synse.Plugin/Version',
          request_serializer=Empty.SerializeToString,
          response_deserializer=VersionInfo.FromString,
          )
      self.Health = channel.unary_unary(
          '/synse.Plugin/Health',
          request_serializer=Empty.SerializeToString,
          response_deserializer=PluginHealth.FromString,
          )
      self.Metainfo = channel.unary_unary(
          '/synse.Plugin/Metainfo',
          request_serializer=Empty.SerializeToString,
          response_deserializer=Metadata.FromString,
          )
      self.Capabilities = channel.unary_stream(
          '/synse.Plugin/Capabilities',
          request_serializer=Empty.SerializeToString,
          response_deserializer=DeviceCapability.FromString,
          )
      self.Devices = channel.unary_stream(
          '/synse.Plugin/Devices',
          request_serializer=DeviceFilter.SerializeToString,
          response_deserializer=Device.FromString,
          )
      self.Read = channel.unary_stream(
          '/synse.Plugin/Read',
          request_serializer=DeviceFilter.SerializeToString,
          response_deserializer=Reading.FromString,
          )
      self.Write = channel.unary_unary(
          '/synse.Plugin/Write',
          request_serializer=WriteInfo.SerializeToString,
          response_deserializer=Transactions.FromString,
          )
      self.Transaction = channel.unary_stream(
          '/synse.Plugin/Transaction',
          request_serializer=TransactionFilter.SerializeToString,
          response_deserializer=WriteResponse.FromString,
          )


  class PluginServicer(object):
    # missing associated documentation comment in .proto file
    pass

    def Test(self, request, context):
      """Test returns the status of the plugin. This call is intended to
      be used in order to check if a plugin is reachable. The status
      returned here designates plugin reachability, not plugin health.
      """
      context.set_code(grpc.StatusCode.UNIMPLEMENTED)
      context.set_details('Method not implemented!')
      raise NotImplementedError('Method not implemented!')

    def Version(self, request, context):
      """Version returns the version info for the plugin. This is not used
      by Synse Server, but can be used by the CLI/manual plugin interaction.
      """
      context.set_code(grpc.StatusCode.UNIMPLEMENTED)
      context.set_details('Method not implemented!')
      raise NotImplementedError('Method not implemented!')

    def Health(self, request, context):
      """Health returns the health status of a plugin.
      """
      context.set_code(grpc.StatusCode.UNIMPLEMENTED)
      context.set_details('Method not implemented!')
      raise NotImplementedError('Method not implemented!')

    def Metainfo(self, request, context):
      """Metainfo gets the metainfo for the plugin. This info provides details
      about the plugin itself.
      """
      context.set_code(grpc.StatusCode.UNIMPLEMENTED)
      context.set_details('Method not implemented!')
      raise NotImplementedError('Method not implemented!')

    def Capabilities(self, request, context):
      """Capabilities returns the collection of capabilities that a plugin
      exposes. More specifically, this means types of devices supported
      and the readings supported for each of those devices.
      """
      context.set_code(grpc.StatusCode.UNIMPLEMENTED)
      context.set_details('Method not implemented!')
      raise NotImplementedError('Method not implemented!')

    def Devices(self, request, context):
      """Devices gets info for all of the devices that the plugin manages.
      This rpc call is the plugin's equivalent to a Synse Server scan.
      """
      context.set_code(grpc.StatusCode.UNIMPLEMENTED)
      context.set_details('Method not implemented!')
      raise NotImplementedError('Method not implemented!')

    def Read(self, request, context):
      """Read returns the reading data for the specified device.
      """
      context.set_code(grpc.StatusCode.UNIMPLEMENTED)
      context.set_details('Method not implemented!')
      raise NotImplementedError('Method not implemented!')

    def Write(self, request, context):
      """Write issues an asynchronous write command to the specified device.
      """
      context.set_code(grpc.StatusCode.UNIMPLEMENTED)
      context.set_details('Method not implemented!')
      raise NotImplementedError('Method not implemented!')

    def Transaction(self, request, context):
      """Transactiong gets the state/status of an asynchronous write transaction.
      """
      context.set_code(grpc.StatusCode.UNIMPLEMENTED)
      context.set_details('Method not implemented!')
      raise NotImplementedError('Method not implemented!')


  def add_PluginServicer_to_server(servicer, server):
    rpc_method_handlers = {
        'Test': grpc.unary_unary_rpc_method_handler(
            servicer.Test,
            request_deserializer=Empty.FromString,
            response_serializer=Status.SerializeToString,
        ),
        'Version': grpc.unary_unary_rpc_method_handler(
            servicer.Version,
            request_deserializer=Empty.FromString,
            response_serializer=VersionInfo.SerializeToString,
        ),
        'Health': grpc.unary_unary_rpc_method_handler(
            servicer.Health,
            request_deserializer=Empty.FromString,
            response_serializer=PluginHealth.SerializeToString,
        ),
        'Metainfo': grpc.unary_unary_rpc_method_handler(
            servicer.Metainfo,
            request_deserializer=Empty.FromString,
            response_serializer=Metadata.SerializeToString,
        ),
        'Capabilities': grpc.unary_stream_rpc_method_handler(
            servicer.Capabilities,
            request_deserializer=Empty.FromString,
            response_serializer=DeviceCapability.SerializeToString,
        ),
        'Devices': grpc.unary_stream_rpc_method_handler(
            servicer.Devices,
            request_deserializer=DeviceFilter.FromString,
            response_serializer=Device.SerializeToString,
        ),
        'Read': grpc.unary_stream_rpc_method_handler(
            servicer.Read,
            request_deserializer=DeviceFilter.FromString,
            response_serializer=Reading.SerializeToString,
        ),
        'Write': grpc.unary_unary_rpc_method_handler(
            servicer.Write,
            request_deserializer=WriteInfo.FromString,
            response_serializer=Transactions.SerializeToString,
        ),
        'Transaction': grpc.unary_stream_rpc_method_handler(
            servicer.Transaction,
            request_deserializer=TransactionFilter.FromString,
            response_serializer=WriteResponse.SerializeToString,
        ),
    }
    generic_handler = grpc.method_handlers_generic_handler(
        'synse.Plugin', rpc_method_handlers)
    server.add_generic_rpc_handlers((generic_handler,))


  class BetaPluginServicer(object):
    """The Beta API is deprecated for 0.15.0 and later.

    It is recommended to use the GA API (classes and functions in this
    file not marked beta) for all further purposes. This class was generated
    only to ease transition from grpcio<0.15.0 to grpcio>=0.15.0."""
    # missing associated documentation comment in .proto file
    pass
    def Test(self, request, context):
      """Test returns the status of the plugin. This call is intended to
      be used in order to check if a plugin is reachable. The status
      returned here designates plugin reachability, not plugin health.
      """
      context.code(beta_interfaces.StatusCode.UNIMPLEMENTED)
    def Version(self, request, context):
      """Version returns the version info for the plugin. This is not used
      by Synse Server, but can be used by the CLI/manual plugin interaction.
      """
      context.code(beta_interfaces.StatusCode.UNIMPLEMENTED)
    def Health(self, request, context):
      """Health returns the health status of a plugin.
      """
      context.code(beta_interfaces.StatusCode.UNIMPLEMENTED)
    def Metainfo(self, request, context):
      """Metainfo gets the metainfo for the plugin. This info provides details
      about the plugin itself.
      """
      context.code(beta_interfaces.StatusCode.UNIMPLEMENTED)
    def Capabilities(self, request, context):
      """Capabilities returns the collection of capabilities that a plugin
      exposes. More specifically, this means types of devices supported
      and the readings supported for each of those devices.
      """
      context.code(beta_interfaces.StatusCode.UNIMPLEMENTED)
    def Devices(self, request, context):
      """Devices gets info for all of the devices that the plugin manages.
      This rpc call is the plugin's equivalent to a Synse Server scan.
      """
      context.code(beta_interfaces.StatusCode.UNIMPLEMENTED)
    def Read(self, request, context):
      """Read returns the reading data for the specified device.
      """
      context.code(beta_interfaces.StatusCode.UNIMPLEMENTED)
    def Write(self, request, context):
      """Write issues an asynchronous write command to the specified device.
      """
      context.code(beta_interfaces.StatusCode.UNIMPLEMENTED)
    def Transaction(self, request, context):
      """Transactiong gets the state/status of an asynchronous write transaction.
      """
      context.code(beta_interfaces.StatusCode.UNIMPLEMENTED)


  class BetaPluginStub(object):
    """The Beta API is deprecated for 0.15.0 and later.

    It is recommended to use the GA API (classes and functions in this
    file not marked beta) for all further purposes. This class was generated
    only to ease transition from grpcio<0.15.0 to grpcio>=0.15.0."""
    # missing associated documentation comment in .proto file
    pass
    def Test(self, request, timeout, metadata=None, with_call=False, protocol_options=None):
      """Test returns the status of the plugin. This call is intended to
      be used in order to check if a plugin is reachable. The status
      returned here designates plugin reachability, not plugin health.
      """
      raise NotImplementedError()
    Test.future = None
    def Version(self, request, timeout, metadata=None, with_call=False, protocol_options=None):
      """Version returns the version info for the plugin. This is not used
      by Synse Server, but can be used by the CLI/manual plugin interaction.
      """
      raise NotImplementedError()
    Version.future = None
    def Health(self, request, timeout, metadata=None, with_call=False, protocol_options=None):
      """Health returns the health status of a plugin.
      """
      raise NotImplementedError()
    Health.future = None
    def Metainfo(self, request, timeout, metadata=None, with_call=False, protocol_options=None):
      """Metainfo gets the metainfo for the plugin. This info provides details
      about the plugin itself.
      """
      raise NotImplementedError()
    Metainfo.future = None
    def Capabilities(self, request, timeout, metadata=None, with_call=False, protocol_options=None):
      """Capabilities returns the collection of capabilities that a plugin
      exposes. More specifically, this means types of devices supported
      and the readings supported for each of those devices.
      """
      raise NotImplementedError()
    def Devices(self, request, timeout, metadata=None, with_call=False, protocol_options=None):
      """Devices gets info for all of the devices that the plugin manages.
      This rpc call is the plugin's equivalent to a Synse Server scan.
      """
      raise NotImplementedError()
    def Read(self, request, timeout, metadata=None, with_call=False, protocol_options=None):
      """Read returns the reading data for the specified device.
      """
      raise NotImplementedError()
    def Write(self, request, timeout, metadata=None, with_call=False, protocol_options=None):
      """Write issues an asynchronous write command to the specified device.
      """
      raise NotImplementedError()
    Write.future = None
    def Transaction(self, request, timeout, metadata=None, with_call=False, protocol_options=None):
      """Transactiong gets the state/status of an asynchronous write transaction.
      """
      raise NotImplementedError()


  def beta_create_Plugin_server(servicer, pool=None, pool_size=None, default_timeout=None, maximum_timeout=None):
    """The Beta API is deprecated for 0.15.0 and later.

    It is recommended to use the GA API (classes and functions in this
    file not marked beta) for all further purposes. This function was
    generated only to ease transition from grpcio<0.15.0 to grpcio>=0.15.0"""
    request_deserializers = {
      ('synse.Plugin', 'Capabilities'): Empty.FromString,
      ('synse.Plugin', 'Devices'): DeviceFilter.FromString,
      ('synse.Plugin', 'Health'): Empty.FromString,
      ('synse.Plugin', 'Metainfo'): Empty.FromString,
      ('synse.Plugin', 'Read'): DeviceFilter.FromString,
      ('synse.Plugin', 'Test'): Empty.FromString,
      ('synse.Plugin', 'Transaction'): TransactionFilter.FromString,
      ('synse.Plugin', 'Version'): Empty.FromString,
      ('synse.Plugin', 'Write'): WriteInfo.FromString,
    }
    response_serializers = {
      ('synse.Plugin', 'Capabilities'): DeviceCapability.SerializeToString,
      ('synse.Plugin', 'Devices'): Device.SerializeToString,
      ('synse.Plugin', 'Health'): PluginHealth.SerializeToString,
      ('synse.Plugin', 'Metainfo'): Metadata.SerializeToString,
      ('synse.Plugin', 'Read'): Reading.SerializeToString,
      ('synse.Plugin', 'Test'): Status.SerializeToString,
      ('synse.Plugin', 'Transaction'): WriteResponse.SerializeToString,
      ('synse.Plugin', 'Version'): VersionInfo.SerializeToString,
      ('synse.Plugin', 'Write'): Transactions.SerializeToString,
    }
    method_implementations = {
      ('synse.Plugin', 'Capabilities'): face_utilities.unary_stream_inline(servicer.Capabilities),
      ('synse.Plugin', 'Devices'): face_utilities.unary_stream_inline(servicer.Devices),
      ('synse.Plugin', 'Health'): face_utilities.unary_unary_inline(servicer.Health),
      ('synse.Plugin', 'Metainfo'): face_utilities.unary_unary_inline(servicer.Metainfo),
      ('synse.Plugin', 'Read'): face_utilities.unary_stream_inline(servicer.Read),
      ('synse.Plugin', 'Test'): face_utilities.unary_unary_inline(servicer.Test),
      ('synse.Plugin', 'Transaction'): face_utilities.unary_stream_inline(servicer.Transaction),
      ('synse.Plugin', 'Version'): face_utilities.unary_unary_inline(servicer.Version),
      ('synse.Plugin', 'Write'): face_utilities.unary_unary_inline(servicer.Write),
    }
    server_options = beta_implementations.server_options(request_deserializers=request_deserializers, response_serializers=response_serializers, thread_pool=pool, thread_pool_size=pool_size, default_timeout=default_timeout, maximum_timeout=maximum_timeout)
    return beta_implementations.server(method_implementations, options=server_options)


  def beta_create_Plugin_stub(channel, host=None, metadata_transformer=None, pool=None, pool_size=None):
    """The Beta API is deprecated for 0.15.0 and later.

    It is recommended to use the GA API (classes and functions in this
    file not marked beta) for all further purposes. This function was
    generated only to ease transition from grpcio<0.15.0 to grpcio>=0.15.0"""
    request_serializers = {
      ('synse.Plugin', 'Capabilities'): Empty.SerializeToString,
      ('synse.Plugin', 'Devices'): DeviceFilter.SerializeToString,
      ('synse.Plugin', 'Health'): Empty.SerializeToString,
      ('synse.Plugin', 'Metainfo'): Empty.SerializeToString,
      ('synse.Plugin', 'Read'): DeviceFilter.SerializeToString,
      ('synse.Plugin', 'Test'): Empty.SerializeToString,
      ('synse.Plugin', 'Transaction'): TransactionFilter.SerializeToString,
      ('synse.Plugin', 'Version'): Empty.SerializeToString,
      ('synse.Plugin', 'Write'): WriteInfo.SerializeToString,
    }
    response_deserializers = {
      ('synse.Plugin', 'Capabilities'): DeviceCapability.FromString,
      ('synse.Plugin', 'Devices'): Device.FromString,
      ('synse.Plugin', 'Health'): PluginHealth.FromString,
      ('synse.Plugin', 'Metainfo'): Metadata.FromString,
      ('synse.Plugin', 'Read'): Reading.FromString,
      ('synse.Plugin', 'Test'): Status.FromString,
      ('synse.Plugin', 'Transaction'): WriteResponse.FromString,
      ('synse.Plugin', 'Version'): VersionInfo.FromString,
      ('synse.Plugin', 'Write'): Transactions.FromString,
    }
    cardinalities = {
      'Capabilities': cardinality.Cardinality.UNARY_STREAM,
      'Devices': cardinality.Cardinality.UNARY_STREAM,
      'Health': cardinality.Cardinality.UNARY_UNARY,
      'Metainfo': cardinality.Cardinality.UNARY_UNARY,
      'Read': cardinality.Cardinality.UNARY_STREAM,
      'Test': cardinality.Cardinality.UNARY_UNARY,
      'Transaction': cardinality.Cardinality.UNARY_STREAM,
      'Version': cardinality.Cardinality.UNARY_UNARY,
      'Write': cardinality.Cardinality.UNARY_UNARY,
    }
    stub_options = beta_implementations.stub_options(host=host, metadata_transformer=metadata_transformer, request_serializers=request_serializers, response_deserializers=response_deserializers, thread_pool=pool, thread_pool_size=pool_size)
    return beta_implementations.dynamic_stub(channel, 'synse.Plugin', cardinalities, options=stub_options)
except ImportError:
  pass
# @@protoc_insertion_point(module_scope)
