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


from . import mixing_state_pb2 as mixing__state__pb2
from . import ls_state_pb2 as ls__state__pb2


DESCRIPTOR = _descriptor.FileDescriptor(
  name='algorithm_state.proto',
  package='bayesmix',
  syntax='proto3',
  serialized_options=None,
  create_key=_descriptor._internal_create_key,
  serialized_pb=b'\n\x15\x61lgorithm_state.proto\x12\x08\x62\x61yesmix\x1a\x12mixing_state.proto\x1a\x0els_state.proto\"\xf8\x02\n\x0e\x41lgorithmState\x12=\n\x0e\x63luster_states\x18\x01 \x03(\x0b\x32%.bayesmix.AlgorithmState.ClusterState\x12\x1a\n\x0e\x63luster_allocs\x18\x02 \x03(\x05\x42\x02\x10\x01\x12+\n\x0cmixing_state\x18\x03 \x01(\x0b\x32\x15.bayesmix.MixingState\x12\x15\n\riteration_num\x18\x04 \x01(\x05\x1a\xc6\x01\n\x0c\x43lusterState\x12,\n\x0cuni_ls_state\x18\x01 \x01(\x0b\x32\x14.bayesmix.UniLSStateH\x00\x12\x30\n\x0emulti_ls_state\x18\x02 \x01(\x0b\x32\x16.bayesmix.MultiLSStateH\x00\x12:\n\x14lin_reg_uni_ls_state\x18\x04 \x01(\x0b\x32\x1a.bayesmix.LinRegUniLSStateH\x00\x12\x13\n\x0b\x63\x61rdinality\x18\x03 \x01(\x05\x42\x05\n\x03valb\x06proto3'
  ,
  dependencies=[mixing__state__pb2.DESCRIPTOR,ls__state__pb2.DESCRIPTOR,])




_ALGORITHMSTATE_CLUSTERSTATE = _descriptor.Descriptor(
  name='ClusterState',
  full_name='bayesmix.AlgorithmState.ClusterState',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='uni_ls_state', full_name='bayesmix.AlgorithmState.ClusterState.uni_ls_state', index=0,
      number=1, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='multi_ls_state', full_name='bayesmix.AlgorithmState.ClusterState.multi_ls_state', 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='lin_reg_uni_ls_state', full_name='bayesmix.AlgorithmState.ClusterState.lin_reg_uni_ls_state', index=2,
      number=4, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='cardinality', full_name='bayesmix.AlgorithmState.ClusterState.cardinality', index=3,
      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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
    _descriptor.OneofDescriptor(
      name='val', full_name='bayesmix.AlgorithmState.ClusterState.val',
      index=0, containing_type=None,
      create_key=_descriptor._internal_create_key,
    fields=[]),
  ],
  serialized_start=250,
  serialized_end=448,
)

_ALGORITHMSTATE = _descriptor.Descriptor(
  name='AlgorithmState',
  full_name='bayesmix.AlgorithmState',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='cluster_states', full_name='bayesmix.AlgorithmState.cluster_states', 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='cluster_allocs', full_name='bayesmix.AlgorithmState.cluster_allocs', index=1,
      number=2, 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=b'\020\001', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='mixing_state', full_name='bayesmix.AlgorithmState.mixing_state', 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='iteration_num', full_name='bayesmix.AlgorithmState.iteration_num', index=3,
      number=4, 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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[_ALGORITHMSTATE_CLUSTERSTATE, ],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=72,
  serialized_end=448,
)

_ALGORITHMSTATE_CLUSTERSTATE.fields_by_name['uni_ls_state'].message_type = ls__state__pb2._UNILSSTATE
_ALGORITHMSTATE_CLUSTERSTATE.fields_by_name['multi_ls_state'].message_type = ls__state__pb2._MULTILSSTATE
_ALGORITHMSTATE_CLUSTERSTATE.fields_by_name['lin_reg_uni_ls_state'].message_type = ls__state__pb2._LINREGUNILSSTATE
_ALGORITHMSTATE_CLUSTERSTATE.containing_type = _ALGORITHMSTATE
_ALGORITHMSTATE_CLUSTERSTATE.oneofs_by_name['val'].fields.append(
  _ALGORITHMSTATE_CLUSTERSTATE.fields_by_name['uni_ls_state'])
_ALGORITHMSTATE_CLUSTERSTATE.fields_by_name['uni_ls_state'].containing_oneof = _ALGORITHMSTATE_CLUSTERSTATE.oneofs_by_name['val']
_ALGORITHMSTATE_CLUSTERSTATE.oneofs_by_name['val'].fields.append(
  _ALGORITHMSTATE_CLUSTERSTATE.fields_by_name['multi_ls_state'])
_ALGORITHMSTATE_CLUSTERSTATE.fields_by_name['multi_ls_state'].containing_oneof = _ALGORITHMSTATE_CLUSTERSTATE.oneofs_by_name['val']
_ALGORITHMSTATE_CLUSTERSTATE.oneofs_by_name['val'].fields.append(
  _ALGORITHMSTATE_CLUSTERSTATE.fields_by_name['lin_reg_uni_ls_state'])
_ALGORITHMSTATE_CLUSTERSTATE.fields_by_name['lin_reg_uni_ls_state'].containing_oneof = _ALGORITHMSTATE_CLUSTERSTATE.oneofs_by_name['val']
_ALGORITHMSTATE.fields_by_name['cluster_states'].message_type = _ALGORITHMSTATE_CLUSTERSTATE
_ALGORITHMSTATE.fields_by_name['mixing_state'].message_type = mixing__state__pb2._MIXINGSTATE
DESCRIPTOR.message_types_by_name['AlgorithmState'] = _ALGORITHMSTATE
_sym_db.RegisterFileDescriptor(DESCRIPTOR)

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

  'ClusterState' : _reflection.GeneratedProtocolMessageType('ClusterState', (_message.Message,), {
    'DESCRIPTOR' : _ALGORITHMSTATE_CLUSTERSTATE,
    '__module__' : 'algorithm_state_pb2'
    # @@protoc_insertion_point(class_scope:bayesmix.AlgorithmState.ClusterState)
    })
  ,
  'DESCRIPTOR' : _ALGORITHMSTATE,
  '__module__' : 'algorithm_state_pb2'
  # @@protoc_insertion_point(class_scope:bayesmix.AlgorithmState)
  })
_sym_db.RegisterMessage(AlgorithmState)
_sym_db.RegisterMessage(AlgorithmState.ClusterState)


_ALGORITHMSTATE.fields_by_name['cluster_allocs']._options = None
# @@protoc_insertion_point(module_scope)
