# -*- coding: utf-8 -*-
# Generated by the protocol buffer compiler.  DO NOT EDIT!
# source: PlatformStruct.proto
"""Generated protocol buffer code."""
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()


import QCompute.QProtobuf.Library.QOperation_pb2 as QOperation__pb2


DESCRIPTOR = _descriptor.FileDescriptor(
  name='PlatformStruct.proto',
  package='',
  syntax='proto3',
  serialized_options=None,
  create_key=_descriptor._internal_create_key,
  serialized_pb=b'\n\x14PlatformStruct.proto\x1a\x10QOperation.proto\"`\n\x07Program\x12\x12\n\nsdkVersion\x18\x01 \x01(\t\x12\x13\n\x04head\x18\x02 \x01(\x0b\x32\x05.Head\x12\x13\n\x04\x62ody\x18\x03 \x01(\x0b\x32\x05.Body\x12\x17\n\x06source\x18\x04 \x01(\x0b\x32\x07.Source\"4\n\x04Head\x12\x15\n\rusingQRegList\x18\x01 \x03(\r\x12\x15\n\rusingCRegList\x18\x02 \x03(\r\"\x95\x01\n\x04\x42ody\x12\x1d\n\x07\x63ircuit\x18\x01 \x03(\x0b\x32\x0c.CircuitLine\x12-\n\x0cprocedureMap\x18\x02 \x03(\x0b\x32\x17.Body.ProcedureMapEntry\x1a?\n\x11ProcedureMapEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x19\n\x05value\x18\x02 \x01(\x0b\x32\n.Procedure:\x02\x38\x01\"\x16\n\x06Source\x12\x0c\n\x04Qasm\x18\x01 \x01(\t\"\xbd\x02\n\x0b\x43ircuitLine\x12\x1f\n\tfixedGate\x18\x01 \x01(\x0e\x32\n.FixedGateH\x00\x12%\n\x0crotationGate\x18\x02 \x01(\x0e\x32\r.RotationGateH\x00\x12)\n\x0e\x63ustomizedGate\x18\x03 \x01(\x0b\x32\x0f.CustomizedGateH\x00\x12\'\n\rcompositeGate\x18\x04 \x01(\x0e\x32\x0e.CompositeGateH\x00\x12\x17\n\rprocedureName\x18\x05 \x01(\tH\x00\x12\x1b\n\x07measure\x18\x06 \x01(\x0b\x32\x08.MeasureH\x00\x12\x11\n\x07\x62\x61rrier\x18\x07 \x01(\x08H\x00\x12\x10\n\x08qRegList\x18\x08 \x03(\r\x12\x19\n\x11\x61rgumentValueList\x18\t \x03(\x01\x12\x16\n\x0e\x61rgumentIdList\x18\n \x03(\x05\x42\x04\n\x02op\"Y\n\tProcedure\x12\x16\n\x0eparameterCount\x18\x01 \x01(\r\x12\x15\n\rusingQRegList\x18\x02 \x03(\r\x12\x1d\n\x07\x63ircuit\x18\x03 \x03(\x0b\x32\x0c.CircuitLineb\x06proto3'
  ,
  dependencies=[QOperation__pb2.DESCRIPTOR,])




_PROGRAM = _descriptor.Descriptor(
  name='Program',
  full_name='Program',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='sdkVersion', full_name='Program.sdkVersion', 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,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='head', full_name='Program.head', index=1,
      number=2, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='body', full_name='Program.body', index=2,
      number=3, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='source', full_name='Program.source', index=3,
      number=4, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=42,
  serialized_end=138,
)


_HEAD = _descriptor.Descriptor(
  name='Head',
  full_name='Head',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='usingQRegList', full_name='Head.usingQRegList', index=0,
      number=1, type=13, cpp_type=3, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='usingCRegList', full_name='Head.usingCRegList', index=1,
      number=2, type=13, cpp_type=3, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=140,
  serialized_end=192,
)


_BODY_PROCEDUREMAPENTRY = _descriptor.Descriptor(
  name='ProcedureMapEntry',
  full_name='Body.ProcedureMapEntry',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='key', full_name='Body.ProcedureMapEntry.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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='value', full_name='Body.ProcedureMapEntry.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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=b'8\001',
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=281,
  serialized_end=344,
)

_BODY = _descriptor.Descriptor(
  name='Body',
  full_name='Body',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='circuit', full_name='Body.circuit', index=0,
      number=1, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='procedureMap', full_name='Body.procedureMap', 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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[_BODY_PROCEDUREMAPENTRY, ],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=195,
  serialized_end=344,
)


_SOURCE = _descriptor.Descriptor(
  name='Source',
  full_name='Source',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='Qasm', full_name='Source.Qasm', 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,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=346,
  serialized_end=368,
)


_CIRCUITLINE = _descriptor.Descriptor(
  name='CircuitLine',
  full_name='CircuitLine',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='fixedGate', full_name='CircuitLine.fixedGate', index=0,
      number=1, type=14, cpp_type=8, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='rotationGate', full_name='CircuitLine.rotationGate', index=1,
      number=2, type=14, cpp_type=8, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='customizedGate', full_name='CircuitLine.customizedGate', index=2,
      number=3, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='compositeGate', full_name='CircuitLine.compositeGate', 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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='procedureName', full_name='CircuitLine.procedureName', index=4,
      number=5, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=b"".decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='measure', full_name='CircuitLine.measure', 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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='barrier', full_name='CircuitLine.barrier', index=6,
      number=7, type=8, cpp_type=7, label=1,
      has_default_value=False, default_value=False,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='qRegList', full_name='CircuitLine.qRegList', index=7,
      number=8, type=13, cpp_type=3, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='argumentValueList', full_name='CircuitLine.argumentValueList', index=8,
      number=9, type=1, cpp_type=5, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='argumentIdList', full_name='CircuitLine.argumentIdList', index=9,
      number=10, type=5, cpp_type=1, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
    _descriptor.OneofDescriptor(
      name='op', full_name='CircuitLine.op',
      index=0, containing_type=None,
      create_key=_descriptor._internal_create_key,
    fields=[]),
  ],
  serialized_start=371,
  serialized_end=688,
)


_PROCEDURE = _descriptor.Descriptor(
  name='Procedure',
  full_name='Procedure',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='parameterCount', full_name='Procedure.parameterCount', 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,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='usingQRegList', full_name='Procedure.usingQRegList', index=1,
      number=2, type=13, cpp_type=3, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='circuit', full_name='Procedure.circuit', 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,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=690,
  serialized_end=779,
)

_PROGRAM.fields_by_name['head'].message_type = _HEAD
_PROGRAM.fields_by_name['body'].message_type = _BODY
_PROGRAM.fields_by_name['source'].message_type = _SOURCE
_BODY_PROCEDUREMAPENTRY.fields_by_name['value'].message_type = _PROCEDURE
_BODY_PROCEDUREMAPENTRY.containing_type = _BODY
_BODY.fields_by_name['circuit'].message_type = _CIRCUITLINE
_BODY.fields_by_name['procedureMap'].message_type = _BODY_PROCEDUREMAPENTRY
_CIRCUITLINE.fields_by_name['fixedGate'].enum_type = QOperation__pb2._FIXEDGATE
_CIRCUITLINE.fields_by_name['rotationGate'].enum_type = QOperation__pb2._ROTATIONGATE
_CIRCUITLINE.fields_by_name['customizedGate'].message_type = QOperation__pb2._CUSTOMIZEDGATE
_CIRCUITLINE.fields_by_name['compositeGate'].enum_type = QOperation__pb2._COMPOSITEGATE
_CIRCUITLINE.fields_by_name['measure'].message_type = QOperation__pb2._MEASURE
_CIRCUITLINE.oneofs_by_name['op'].fields.append(
  _CIRCUITLINE.fields_by_name['fixedGate'])
_CIRCUITLINE.fields_by_name['fixedGate'].containing_oneof = _CIRCUITLINE.oneofs_by_name['op']
_CIRCUITLINE.oneofs_by_name['op'].fields.append(
  _CIRCUITLINE.fields_by_name['rotationGate'])
_CIRCUITLINE.fields_by_name['rotationGate'].containing_oneof = _CIRCUITLINE.oneofs_by_name['op']
_CIRCUITLINE.oneofs_by_name['op'].fields.append(
  _CIRCUITLINE.fields_by_name['customizedGate'])
_CIRCUITLINE.fields_by_name['customizedGate'].containing_oneof = _CIRCUITLINE.oneofs_by_name['op']
_CIRCUITLINE.oneofs_by_name['op'].fields.append(
  _CIRCUITLINE.fields_by_name['compositeGate'])
_CIRCUITLINE.fields_by_name['compositeGate'].containing_oneof = _CIRCUITLINE.oneofs_by_name['op']
_CIRCUITLINE.oneofs_by_name['op'].fields.append(
  _CIRCUITLINE.fields_by_name['procedureName'])
_CIRCUITLINE.fields_by_name['procedureName'].containing_oneof = _CIRCUITLINE.oneofs_by_name['op']
_CIRCUITLINE.oneofs_by_name['op'].fields.append(
  _CIRCUITLINE.fields_by_name['measure'])
_CIRCUITLINE.fields_by_name['measure'].containing_oneof = _CIRCUITLINE.oneofs_by_name['op']
_CIRCUITLINE.oneofs_by_name['op'].fields.append(
  _CIRCUITLINE.fields_by_name['barrier'])
_CIRCUITLINE.fields_by_name['barrier'].containing_oneof = _CIRCUITLINE.oneofs_by_name['op']
_PROCEDURE.fields_by_name['circuit'].message_type = _CIRCUITLINE
DESCRIPTOR.message_types_by_name['Program'] = _PROGRAM
DESCRIPTOR.message_types_by_name['Head'] = _HEAD
DESCRIPTOR.message_types_by_name['Body'] = _BODY
DESCRIPTOR.message_types_by_name['Source'] = _SOURCE
DESCRIPTOR.message_types_by_name['CircuitLine'] = _CIRCUITLINE
DESCRIPTOR.message_types_by_name['Procedure'] = _PROCEDURE
_sym_db.RegisterFileDescriptor(DESCRIPTOR)

Program = _reflection.GeneratedProtocolMessageType('Program', (_message.Message,), {
  'DESCRIPTOR' : _PROGRAM,
  '__module__' : 'PlatformStruct_pb2'
  # @@protoc_insertion_point(class_scope:Program)
  })
_sym_db.RegisterMessage(Program)

Head = _reflection.GeneratedProtocolMessageType('Head', (_message.Message,), {
  'DESCRIPTOR' : _HEAD,
  '__module__' : 'PlatformStruct_pb2'
  # @@protoc_insertion_point(class_scope:Head)
  })
_sym_db.RegisterMessage(Head)

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

  'ProcedureMapEntry' : _reflection.GeneratedProtocolMessageType('ProcedureMapEntry', (_message.Message,), {
    'DESCRIPTOR' : _BODY_PROCEDUREMAPENTRY,
    '__module__' : 'PlatformStruct_pb2'
    # @@protoc_insertion_point(class_scope:Body.ProcedureMapEntry)
    })
  ,
  'DESCRIPTOR' : _BODY,
  '__module__' : 'PlatformStruct_pb2'
  # @@protoc_insertion_point(class_scope:Body)
  })
_sym_db.RegisterMessage(Body)
_sym_db.RegisterMessage(Body.ProcedureMapEntry)

Source = _reflection.GeneratedProtocolMessageType('Source', (_message.Message,), {
  'DESCRIPTOR' : _SOURCE,
  '__module__' : 'PlatformStruct_pb2'
  # @@protoc_insertion_point(class_scope:Source)
  })
_sym_db.RegisterMessage(Source)

CircuitLine = _reflection.GeneratedProtocolMessageType('CircuitLine', (_message.Message,), {
  'DESCRIPTOR' : _CIRCUITLINE,
  '__module__' : 'PlatformStruct_pb2'
  # @@protoc_insertion_point(class_scope:CircuitLine)
  })
_sym_db.RegisterMessage(CircuitLine)

Procedure = _reflection.GeneratedProtocolMessageType('Procedure', (_message.Message,), {
  'DESCRIPTOR' : _PROCEDURE,
  '__module__' : 'PlatformStruct_pb2'
  # @@protoc_insertion_point(class_scope:Procedure)
  })
_sym_db.RegisterMessage(Procedure)


_BODY_PROCEDUREMAPENTRY._options = None
# @@protoc_insertion_point(module_scope)
