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

from google.protobuf.internal import enum_type_wrapper
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()




DESCRIPTOR = _descriptor.FileDescriptor(
  name='easyfl/pb/common.proto',
  package='easyfl.pb',
  syntax='proto3',
  serialized_options=None,
  create_key=_descriptor._internal_create_key,
  serialized_pb=b'\n\x16\x65\x61syfl/pb/common.proto\x12\teasyfl.pb\">\n\x06Status\x12#\n\x04\x63ode\x18\x01 \x01(\x0e\x32\x15.easyfl.pb.StatusCode\x12\x0f\n\x07message\x18\x02 \x01(\t\"4\n\nTaskMetric\x12\x0f\n\x07task_id\x18\x01 \x01(\t\x12\x15\n\rconfiguration\x18\x02 \x01(\t\"\xcf\x02\n\x0bRoundMetric\x12\x0f\n\x07task_id\x18\x01 \x01(\t\x12\x10\n\x08round_id\x18\x02 \x01(\x05\x12\x15\n\rtest_accuracy\x18\x03 \x01(\x02\x12\x11\n\ttest_loss\x18\x04 \x01(\x02\x12\x12\n\nround_time\x18\x05 \x01(\x02\x12\x12\n\ntrain_time\x18\x06 \x01(\x02\x12\x11\n\ttest_time\x18\x07 \x01(\x02\x12\x1d\n\x15train_distribute_time\x18\x08 \x01(\x02\x12\x1c\n\x14test_distribute_time\x18\t \x01(\x02\x12\x19\n\x11train_upload_size\x18\n \x01(\x02\x12\x1b\n\x13train_download_size\x18\x0b \x01(\x02\x12\x18\n\x10test_upload_size\x18\x0c \x01(\x02\x12\x1a\n\x12test_download_size\x18\r \x01(\x02\x12\r\n\x05\x65xtra\x18\x0e \x01(\t\"\xf3\x02\n\x0c\x43lientMetric\x12\x0f\n\x07task_id\x18\x01 \x01(\t\x12\x10\n\x08round_id\x18\x02 \x01(\x05\x12\x11\n\tclient_id\x18\x03 \x01(\t\x12\x16\n\x0etrain_accuracy\x18\x04 \x03(\x02\x12\x12\n\ntrain_loss\x18\x05 \x03(\x02\x12\x15\n\rtest_accuracy\x18\x06 \x01(\x02\x12\x11\n\ttest_loss\x18\x07 \x01(\x02\x12\x12\n\ntrain_time\x18\x08 \x01(\x02\x12\x11\n\ttest_time\x18\t \x01(\x02\x12\x19\n\x11train_upload_time\x18\n \x01(\x02\x12\x18\n\x10test_upload_time\x18\x0b \x01(\x02\x12\x19\n\x11train_upload_size\x18\x0c \x01(\x02\x12\x1b\n\x13train_download_size\x18\r \x01(\x02\x12\x18\n\x10test_upload_size\x18\x0e \x01(\x02\x12\x1a\n\x12test_download_size\x18\x0f \x01(\x02\x12\r\n\x05\x65xtra\x18\x10 \x01(\t*\x82\x01\n\nStatusCode\x12\t\n\x05SC_OK\x10\x00\x12\x0e\n\nSC_UNKNOWN\x10\x01\x12\x16\n\x12SC_INVALID_REQUEST\x10\x02\x12\x18\n\x14SC_DEADLINE_EXCEEDED\x10\x03\x12\x10\n\x0cSC_NOT_FOUND\x10\x04\x12\x15\n\x11SC_ALREADY_EXISTS\x10\x05*;\n\x08\x44\x61taType\x12\x14\n\x10\x44\x41TA_TYPE_PARAMS\x10\x00\x12\x19\n\x15\x44\x41TA_TYPE_PERFORMANCE\x10\x01\x62\x06proto3'
)

_STATUSCODE = _descriptor.EnumDescriptor(
  name='StatusCode',
  full_name='easyfl.pb.StatusCode',
  filename=None,
  file=DESCRIPTOR,
  create_key=_descriptor._internal_create_key,
  values=[
    _descriptor.EnumValueDescriptor(
      name='SC_OK', index=0, number=0,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='SC_UNKNOWN', index=1, number=1,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='SC_INVALID_REQUEST', index=2, number=2,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='SC_DEADLINE_EXCEEDED', index=3, number=3,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='SC_NOT_FOUND', index=4, number=4,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='SC_ALREADY_EXISTS', index=5, number=5,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
  ],
  containing_type=None,
  serialized_options=None,
  serialized_start=868,
  serialized_end=998,
)
_sym_db.RegisterEnumDescriptor(_STATUSCODE)

StatusCode = enum_type_wrapper.EnumTypeWrapper(_STATUSCODE)
_DATATYPE = _descriptor.EnumDescriptor(
  name='DataType',
  full_name='easyfl.pb.DataType',
  filename=None,
  file=DESCRIPTOR,
  create_key=_descriptor._internal_create_key,
  values=[
    _descriptor.EnumValueDescriptor(
      name='DATA_TYPE_PARAMS', index=0, number=0,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='DATA_TYPE_PERFORMANCE', index=1, number=1,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
  ],
  containing_type=None,
  serialized_options=None,
  serialized_start=1000,
  serialized_end=1059,
)
_sym_db.RegisterEnumDescriptor(_DATATYPE)

DataType = enum_type_wrapper.EnumTypeWrapper(_DATATYPE)
SC_OK = 0
SC_UNKNOWN = 1
SC_INVALID_REQUEST = 2
SC_DEADLINE_EXCEEDED = 3
SC_NOT_FOUND = 4
SC_ALREADY_EXISTS = 5
DATA_TYPE_PARAMS = 0
DATA_TYPE_PERFORMANCE = 1



_STATUS = _descriptor.Descriptor(
  name='Status',
  full_name='easyfl.pb.Status',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='code', full_name='easyfl.pb.Status.code', 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='message', full_name='easyfl.pb.Status.message', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=b"".decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=37,
  serialized_end=99,
)


_TASKMETRIC = _descriptor.Descriptor(
  name='TaskMetric',
  full_name='easyfl.pb.TaskMetric',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='task_id', full_name='easyfl.pb.TaskMetric.task_id', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=b"".decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='configuration', full_name='easyfl.pb.TaskMetric.configuration', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=b"".decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=101,
  serialized_end=153,
)


_ROUNDMETRIC = _descriptor.Descriptor(
  name='RoundMetric',
  full_name='easyfl.pb.RoundMetric',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='task_id', full_name='easyfl.pb.RoundMetric.task_id', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=b"".decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='round_id', full_name='easyfl.pb.RoundMetric.round_id', 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,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='test_accuracy', full_name='easyfl.pb.RoundMetric.test_accuracy', index=2,
      number=3, type=2, cpp_type=6, label=1,
      has_default_value=False, default_value=float(0),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='test_loss', full_name='easyfl.pb.RoundMetric.test_loss', index=3,
      number=4, type=2, cpp_type=6, label=1,
      has_default_value=False, default_value=float(0),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='round_time', full_name='easyfl.pb.RoundMetric.round_time', index=4,
      number=5, type=2, cpp_type=6, label=1,
      has_default_value=False, default_value=float(0),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='train_time', full_name='easyfl.pb.RoundMetric.train_time', index=5,
      number=6, type=2, cpp_type=6, label=1,
      has_default_value=False, default_value=float(0),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='test_time', full_name='easyfl.pb.RoundMetric.test_time', 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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='train_distribute_time', full_name='easyfl.pb.RoundMetric.train_distribute_time', index=7,
      number=8, type=2, cpp_type=6, label=1,
      has_default_value=False, default_value=float(0),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='test_distribute_time', full_name='easyfl.pb.RoundMetric.test_distribute_time', index=8,
      number=9, type=2, cpp_type=6, label=1,
      has_default_value=False, default_value=float(0),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='train_upload_size', full_name='easyfl.pb.RoundMetric.train_upload_size', index=9,
      number=10, type=2, cpp_type=6, label=1,
      has_default_value=False, default_value=float(0),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='train_download_size', full_name='easyfl.pb.RoundMetric.train_download_size', index=10,
      number=11, type=2, cpp_type=6, label=1,
      has_default_value=False, default_value=float(0),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='test_upload_size', full_name='easyfl.pb.RoundMetric.test_upload_size', index=11,
      number=12, type=2, cpp_type=6, label=1,
      has_default_value=False, default_value=float(0),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='test_download_size', full_name='easyfl.pb.RoundMetric.test_download_size', index=12,
      number=13, type=2, cpp_type=6, label=1,
      has_default_value=False, default_value=float(0),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='extra', full_name='easyfl.pb.RoundMetric.extra', index=13,
      number=14, 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=156,
  serialized_end=491,
)


_CLIENTMETRIC = _descriptor.Descriptor(
  name='ClientMetric',
  full_name='easyfl.pb.ClientMetric',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='task_id', full_name='easyfl.pb.ClientMetric.task_id', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=b"".decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='round_id', full_name='easyfl.pb.ClientMetric.round_id', 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,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='client_id', full_name='easyfl.pb.ClientMetric.client_id', 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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='train_accuracy', full_name='easyfl.pb.ClientMetric.train_accuracy', index=3,
      number=4, type=2, cpp_type=6, 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='train_loss', full_name='easyfl.pb.ClientMetric.train_loss', index=4,
      number=5, type=2, cpp_type=6, 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='test_accuracy', full_name='easyfl.pb.ClientMetric.test_accuracy', index=5,
      number=6, type=2, cpp_type=6, label=1,
      has_default_value=False, default_value=float(0),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='test_loss', full_name='easyfl.pb.ClientMetric.test_loss', 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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='train_time', full_name='easyfl.pb.ClientMetric.train_time', index=7,
      number=8, type=2, cpp_type=6, label=1,
      has_default_value=False, default_value=float(0),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='test_time', full_name='easyfl.pb.ClientMetric.test_time', index=8,
      number=9, type=2, cpp_type=6, label=1,
      has_default_value=False, default_value=float(0),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='train_upload_time', full_name='easyfl.pb.ClientMetric.train_upload_time', index=9,
      number=10, type=2, cpp_type=6, label=1,
      has_default_value=False, default_value=float(0),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='test_upload_time', full_name='easyfl.pb.ClientMetric.test_upload_time', index=10,
      number=11, type=2, cpp_type=6, label=1,
      has_default_value=False, default_value=float(0),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='train_upload_size', full_name='easyfl.pb.ClientMetric.train_upload_size', index=11,
      number=12, type=2, cpp_type=6, label=1,
      has_default_value=False, default_value=float(0),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='train_download_size', full_name='easyfl.pb.ClientMetric.train_download_size', index=12,
      number=13, type=2, cpp_type=6, label=1,
      has_default_value=False, default_value=float(0),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='test_upload_size', full_name='easyfl.pb.ClientMetric.test_upload_size', index=13,
      number=14, type=2, cpp_type=6, label=1,
      has_default_value=False, default_value=float(0),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='test_download_size', full_name='easyfl.pb.ClientMetric.test_download_size', index=14,
      number=15, type=2, cpp_type=6, label=1,
      has_default_value=False, default_value=float(0),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='extra', full_name='easyfl.pb.ClientMetric.extra', index=15,
      number=16, 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=494,
  serialized_end=865,
)

_STATUS.fields_by_name['code'].enum_type = _STATUSCODE
DESCRIPTOR.message_types_by_name['Status'] = _STATUS
DESCRIPTOR.message_types_by_name['TaskMetric'] = _TASKMETRIC
DESCRIPTOR.message_types_by_name['RoundMetric'] = _ROUNDMETRIC
DESCRIPTOR.message_types_by_name['ClientMetric'] = _CLIENTMETRIC
DESCRIPTOR.enum_types_by_name['StatusCode'] = _STATUSCODE
DESCRIPTOR.enum_types_by_name['DataType'] = _DATATYPE
_sym_db.RegisterFileDescriptor(DESCRIPTOR)

Status = _reflection.GeneratedProtocolMessageType('Status', (_message.Message,), {
  'DESCRIPTOR' : _STATUS,
  '__module__' : 'easyfl.pb.common_pb2'
  # @@protoc_insertion_point(class_scope:easyfl.pb.Status)
  })
_sym_db.RegisterMessage(Status)

TaskMetric = _reflection.GeneratedProtocolMessageType('TaskMetric', (_message.Message,), {
  'DESCRIPTOR' : _TASKMETRIC,
  '__module__' : 'easyfl.pb.common_pb2'
  # @@protoc_insertion_point(class_scope:easyfl.pb.TaskMetric)
  })
_sym_db.RegisterMessage(TaskMetric)

RoundMetric = _reflection.GeneratedProtocolMessageType('RoundMetric', (_message.Message,), {
  'DESCRIPTOR' : _ROUNDMETRIC,
  '__module__' : 'easyfl.pb.common_pb2'
  # @@protoc_insertion_point(class_scope:easyfl.pb.RoundMetric)
  })
_sym_db.RegisterMessage(RoundMetric)

ClientMetric = _reflection.GeneratedProtocolMessageType('ClientMetric', (_message.Message,), {
  'DESCRIPTOR' : _CLIENTMETRIC,
  '__module__' : 'easyfl.pb.common_pb2'
  # @@protoc_insertion_point(class_scope:easyfl.pb.ClientMetric)
  })
_sym_db.RegisterMessage(ClientMetric)


# @@protoc_insertion_point(module_scope)
