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

from google.protobuf import any_pb2 as google_dot_protobuf_dot_any__pb2
from google.protobuf import symbol_database as _symbol_database
from google.protobuf import reflection as _reflection
from google.protobuf import message as _message
from google.protobuf import descriptor as _descriptor
import sys
_b = sys.version_info[0] < 3 and (
    lambda x: x) or (
        lambda x: x.encode('latin1'))
# @@protoc_insertion_point(imports)

_sym_db = _symbol_database.Default()


DESCRIPTOR = _descriptor.FileDescriptor(
    name='routing_model.proto',
    package='optilab.toolbox',
    syntax='proto3',
    serialized_options=None,
    serialized_pb=_b('\n\x13routing_model.proto\x12\x0foptilab.toolbox\x1a\x19google/protobuf/any.proto\"\xc1\x01\n\x19\x43reateRoutingOptimizerReq\x12Y\n\x13routing_engine_type\x18\x01 \x01(\x0e\x32<.optilab.toolbox.CreateRoutingOptimizerReq.RoutingEngineType\"I\n\x11RoutingEngineType\x12\r\n\tACTOR_VRP\x10\x00\x12\r\n\tACTOR_TSP\x10\x01\x12\n\n\x06\x43P_TSP\x10\x02\x12\n\n\x06\x43P_VRP\x10\x03\"\\\n\x13\x44istanceMatrixProto\x12\x0c\n\x04rows\x18\x01 \x01(\r\x12\x0c\n\x04\x63ols\x18\x02 \x01(\r\x12\x17\n\x0fmultiplier_data\x18\x03 \x01(\r\x12\x10\n\x04\x64\x61ta\x18\x04 \x03(\x01\x42\x02\x10\x01\"\x92\x01\n\rTSPModelProto\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\r\n\x05\x64\x65pot\x18\x02 \x01(\x05\x12=\n\x0f\x64istance_matrix\x18\x03 \x01(\x0b\x32$.optilab.toolbox.DistanceMatrixProto\x12%\n\x07\x64\x65tails\x18\x04 \x01(\x0b\x32\x14.google.protobuf.Any\"\xc9\x01\n\rVRPModelProto\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x0e\n\x06\x64\x65mand\x18\x02 \x03(\r\x12\x10\n\x08\x63\x61pacity\x18\x03 \x03(\r\x12\x13\n\x0bnum_vehicle\x18\x04 \x01(\r\x12\r\n\x05\x64\x65pot\x18\x05 \x01(\x05\x12=\n\x0f\x64istance_matrix\x18\x06 \x01(\x0b\x32$.optilab.toolbox.DistanceMatrixProto\x12%\n\x07\x64\x65tails\x18\x07 \x01(\x0b\x32\x14.google.protobuf.Any\"\x86\x01\n\x11RoutingModelProto\x12\x33\n\ttsp_model\x18\x01 \x01(\x0b\x32\x1e.optilab.toolbox.TSPModelProtoH\x00\x12\x33\n\tvrp_model\x18\x02 \x01(\x0b\x32\x1e.optilab.toolbox.VRPModelProtoH\x00\x42\x07\n\x05modelb\x06proto3'),
    dependencies=[
        google_dot_protobuf_dot_any__pb2.DESCRIPTOR,
    ])


_CREATEROUTINGOPTIMIZERREQ_ROUTINGENGINETYPE = _descriptor.EnumDescriptor(
    name='RoutingEngineType',
    full_name='optilab.toolbox.CreateRoutingOptimizerReq.RoutingEngineType',
    filename=None,
    file=DESCRIPTOR,
    values=[
        _descriptor.EnumValueDescriptor(
            name='ACTOR_VRP', index=0, number=0,
            serialized_options=None,
            type=None),
        _descriptor.EnumValueDescriptor(
            name='ACTOR_TSP', index=1, number=1,
            serialized_options=None,
            type=None),
        _descriptor.EnumValueDescriptor(
            name='CP_TSP', index=2, number=2,
            serialized_options=None,
            type=None),
        _descriptor.EnumValueDescriptor(
            name='CP_VRP', index=3, number=3,
            serialized_options=None,
            type=None),
    ],
    containing_type=None,
    serialized_options=None,
    serialized_start=188,
    serialized_end=261,
)
_sym_db.RegisterEnumDescriptor(_CREATEROUTINGOPTIMIZERREQ_ROUTINGENGINETYPE)


_CREATEROUTINGOPTIMIZERREQ = _descriptor.Descriptor(
    name='CreateRoutingOptimizerReq',
    full_name='optilab.toolbox.CreateRoutingOptimizerReq',
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name='routing_engine_type',
            full_name='optilab.toolbox.CreateRoutingOptimizerReq.routing_engine_type',
            index=0,
            number=1,
            type=14,
            cpp_type=8,
            label=1,
            has_default_value=False,
            default_value=0,
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR),
    ],
    extensions=[],
    nested_types=[],
    enum_types=[
        _CREATEROUTINGOPTIMIZERREQ_ROUTINGENGINETYPE,
    ],
    serialized_options=None,
    is_extendable=False,
    syntax='proto3',
    extension_ranges=[],
    oneofs=[],
    serialized_start=68,
    serialized_end=261,
)


_DISTANCEMATRIXPROTO = _descriptor.Descriptor(
    name='DistanceMatrixProto',
    full_name='optilab.toolbox.DistanceMatrixProto',
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name='rows',
            full_name='optilab.toolbox.DistanceMatrixProto.rows',
            index=0,
            number=1,
            type=13,
            cpp_type=3,
            label=1,
            has_default_value=False,
            default_value=0,
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR),
        _descriptor.FieldDescriptor(
            name='cols',
            full_name='optilab.toolbox.DistanceMatrixProto.cols',
            index=1,
            number=2,
            type=13,
            cpp_type=3,
            label=1,
            has_default_value=False,
            default_value=0,
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR),
        _descriptor.FieldDescriptor(
            name='multiplier_data',
            full_name='optilab.toolbox.DistanceMatrixProto.multiplier_data',
            index=2,
            number=3,
            type=13,
            cpp_type=3,
            label=1,
            has_default_value=False,
            default_value=0,
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR),
        _descriptor.FieldDescriptor(
            name='data',
            full_name='optilab.toolbox.DistanceMatrixProto.data',
            index=3,
            number=4,
            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=_b('\020\001'),
            file=DESCRIPTOR),
    ],
    extensions=[],
    nested_types=[],
    enum_types=[],
    serialized_options=None,
    is_extendable=False,
    syntax='proto3',
    extension_ranges=[],
    oneofs=[],
    serialized_start=263,
    serialized_end=355,
)


_TSPMODELPROTO = _descriptor.Descriptor(
    name='TSPModelProto',
    full_name='optilab.toolbox.TSPModelProto',
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name='name',
            full_name='optilab.toolbox.TSPModelProto.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,
            serialized_options=None,
            file=DESCRIPTOR),
        _descriptor.FieldDescriptor(
            name='depot',
            full_name='optilab.toolbox.TSPModelProto.depot',
            index=1,
            number=2,
            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),
        _descriptor.FieldDescriptor(
            name='distance_matrix',
            full_name='optilab.toolbox.TSPModelProto.distance_matrix',
            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),
        _descriptor.FieldDescriptor(
            name='details',
            full_name='optilab.toolbox.TSPModelProto.details',
            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),
    ],
    extensions=[],
    nested_types=[],
    enum_types=[],
    serialized_options=None,
    is_extendable=False,
    syntax='proto3',
    extension_ranges=[],
    oneofs=[],
    serialized_start=358,
    serialized_end=504,
)


_VRPMODELPROTO = _descriptor.Descriptor(
    name='VRPModelProto',
    full_name='optilab.toolbox.VRPModelProto',
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name='name',
            full_name='optilab.toolbox.VRPModelProto.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,
            serialized_options=None,
            file=DESCRIPTOR),
        _descriptor.FieldDescriptor(
            name='demand',
            full_name='optilab.toolbox.VRPModelProto.demand',
            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),
        _descriptor.FieldDescriptor(
            name='capacity',
            full_name='optilab.toolbox.VRPModelProto.capacity',
            index=2,
            number=3,
            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),
        _descriptor.FieldDescriptor(
            name='num_vehicle',
            full_name='optilab.toolbox.VRPModelProto.num_vehicle',
            index=3,
            number=4,
            type=13,
            cpp_type=3,
            label=1,
            has_default_value=False,
            default_value=0,
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR),
        _descriptor.FieldDescriptor(
            name='depot',
            full_name='optilab.toolbox.VRPModelProto.depot',
            index=4,
            number=5,
            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),
        _descriptor.FieldDescriptor(
            name='distance_matrix',
            full_name='optilab.toolbox.VRPModelProto.distance_matrix',
            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),
        _descriptor.FieldDescriptor(
            name='details',
            full_name='optilab.toolbox.VRPModelProto.details',
            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,
            serialized_options=None,
            file=DESCRIPTOR),
    ],
    extensions=[],
    nested_types=[],
    enum_types=[],
    serialized_options=None,
    is_extendable=False,
    syntax='proto3',
    extension_ranges=[],
    oneofs=[],
    serialized_start=507,
    serialized_end=708,
)


_ROUTINGMODELPROTO = _descriptor.Descriptor(
    name='RoutingModelProto',
    full_name='optilab.toolbox.RoutingModelProto',
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name='tsp_model',
            full_name='optilab.toolbox.RoutingModelProto.tsp_model',
            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),
        _descriptor.FieldDescriptor(
            name='vrp_model',
            full_name='optilab.toolbox.RoutingModelProto.vrp_model',
            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),
    ],
    extensions=[],
    nested_types=[],
    enum_types=[],
    serialized_options=None,
    is_extendable=False,
    syntax='proto3',
    extension_ranges=[],
    oneofs=[
        _descriptor.OneofDescriptor(
            name='model',
            full_name='optilab.toolbox.RoutingModelProto.model',
            index=0,
            containing_type=None,
            fields=[]),
    ],
    serialized_start=711,
    serialized_end=845,
)

_CREATEROUTINGOPTIMIZERREQ.fields_by_name['routing_engine_type'].enum_type = _CREATEROUTINGOPTIMIZERREQ_ROUTINGENGINETYPE
_CREATEROUTINGOPTIMIZERREQ_ROUTINGENGINETYPE.containing_type = _CREATEROUTINGOPTIMIZERREQ
_TSPMODELPROTO.fields_by_name['distance_matrix'].message_type = _DISTANCEMATRIXPROTO
_TSPMODELPROTO.fields_by_name['details'].message_type = google_dot_protobuf_dot_any__pb2._ANY
_VRPMODELPROTO.fields_by_name['distance_matrix'].message_type = _DISTANCEMATRIXPROTO
_VRPMODELPROTO.fields_by_name['details'].message_type = google_dot_protobuf_dot_any__pb2._ANY
_ROUTINGMODELPROTO.fields_by_name['tsp_model'].message_type = _TSPMODELPROTO
_ROUTINGMODELPROTO.fields_by_name['vrp_model'].message_type = _VRPMODELPROTO
_ROUTINGMODELPROTO.oneofs_by_name['model'].fields.append(
    _ROUTINGMODELPROTO.fields_by_name['tsp_model'])
_ROUTINGMODELPROTO.fields_by_name['tsp_model'].containing_oneof = _ROUTINGMODELPROTO.oneofs_by_name['model']
_ROUTINGMODELPROTO.oneofs_by_name['model'].fields.append(
    _ROUTINGMODELPROTO.fields_by_name['vrp_model'])
_ROUTINGMODELPROTO.fields_by_name['vrp_model'].containing_oneof = _ROUTINGMODELPROTO.oneofs_by_name['model']
DESCRIPTOR.message_types_by_name['CreateRoutingOptimizerReq'] = _CREATEROUTINGOPTIMIZERREQ
DESCRIPTOR.message_types_by_name['DistanceMatrixProto'] = _DISTANCEMATRIXPROTO
DESCRIPTOR.message_types_by_name['TSPModelProto'] = _TSPMODELPROTO
DESCRIPTOR.message_types_by_name['VRPModelProto'] = _VRPMODELPROTO
DESCRIPTOR.message_types_by_name['RoutingModelProto'] = _ROUTINGMODELPROTO
_sym_db.RegisterFileDescriptor(DESCRIPTOR)

CreateRoutingOptimizerReq = _reflection.GeneratedProtocolMessageType('CreateRoutingOptimizerReq', (_message.Message,), dict(
    DESCRIPTOR=_CREATEROUTINGOPTIMIZERREQ,
    __module__='routing_model_pb2'
    # @@protoc_insertion_point(class_scope:optilab.toolbox.CreateRoutingOptimizerReq)
))
_sym_db.RegisterMessage(CreateRoutingOptimizerReq)

DistanceMatrixProto = _reflection.GeneratedProtocolMessageType('DistanceMatrixProto', (_message.Message,), dict(
    DESCRIPTOR=_DISTANCEMATRIXPROTO,
    __module__='routing_model_pb2'
    # @@protoc_insertion_point(class_scope:optilab.toolbox.DistanceMatrixProto)
))
_sym_db.RegisterMessage(DistanceMatrixProto)

TSPModelProto = _reflection.GeneratedProtocolMessageType('TSPModelProto', (_message.Message,), dict(
    DESCRIPTOR=_TSPMODELPROTO,
    __module__='routing_model_pb2'
    # @@protoc_insertion_point(class_scope:optilab.toolbox.TSPModelProto)
))
_sym_db.RegisterMessage(TSPModelProto)

VRPModelProto = _reflection.GeneratedProtocolMessageType('VRPModelProto', (_message.Message,), dict(
    DESCRIPTOR=_VRPMODELPROTO,
    __module__='routing_model_pb2'
    # @@protoc_insertion_point(class_scope:optilab.toolbox.VRPModelProto)
))
_sym_db.RegisterMessage(VRPModelProto)

RoutingModelProto = _reflection.GeneratedProtocolMessageType('RoutingModelProto', (_message.Message,), dict(
    DESCRIPTOR=_ROUTINGMODELPROTO,
    __module__='routing_model_pb2'
    # @@protoc_insertion_point(class_scope:optilab.toolbox.RoutingModelProto)
))
_sym_db.RegisterMessage(RoutingModelProto)


_DISTANCEMATRIXPROTO.fields_by_name['data']._options = None
# @@protoc_insertion_point(module_scope)
