From 0c8693b8c66f1e5cf98a585cff7e21e3adde14d4 Mon Sep 17 00:00:00 2001 From: "J. Nick Koston" Date: Thu, 10 Jul 2025 07:48:08 -1000 Subject: [PATCH] less bad --- esphome/components/api/api_pb2.cpp | 7900 +++------------------- esphome/components/api/proto.cpp | 42 +- esphome/components/api/proto.h | 50 +- esphome/components/api/proto_templates.h | 20 + script/api_protobuf/api_protobuf.py | 182 +- 5 files changed, 1124 insertions(+), 7070 deletions(-) diff --git a/esphome/components/api/api_pb2.cpp b/esphome/components/api/api_pb2.cpp index a1e6a5c6a9..18167060f2 100644 --- a/esphome/components/api/api_pb2.cpp +++ b/esphome/components/api/api_pb2.cpp @@ -88,9 +88,9 @@ const FieldMeta HelloRequest::FIELDS[3] = {{1, 1, {.decode_varint = &decode_uint32_field}}}; const FieldMetaV2 HelloRequest::FIELDS_V2[3] = { - {1, PROTO_FIELD_OFFSET(HelloRequest, client_info), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(HelloRequest, api_version_major), ProtoFieldType::TYPE_UINT32, false, 1, 0}, - {3, PROTO_FIELD_OFFSET(HelloRequest, api_version_minor), ProtoFieldType::TYPE_UINT32, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(HelloRequest, client_info), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(HelloRequest, api_version_major), ProtoFieldType::TYPE_UINT32, false, 1, {}}, + {3, PROTO_FIELD_OFFSET(HelloRequest, api_version_minor), ProtoFieldType::TYPE_UINT32, false, 1, {}}}; const FieldMeta HelloResponse::FIELDS[4] = {{1, PROTO_FIELD_OFFSET(HelloResponse, api_version_major), &encode_uint32_field, @@ -124,10 +124,10 @@ const FieldMeta HelloResponse::FIELDS[4] = {{1, 1, {.decode_length = &decode_string_field}}}; const FieldMetaV2 HelloResponse::FIELDS_V2[4] = { - {1, PROTO_FIELD_OFFSET(HelloResponse, api_version_major), ProtoFieldType::TYPE_UINT32, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(HelloResponse, api_version_minor), ProtoFieldType::TYPE_UINT32, false, 1, 0}, - {3, PROTO_FIELD_OFFSET(HelloResponse, server_info), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {4, PROTO_FIELD_OFFSET(HelloResponse, name), ProtoFieldType::TYPE_STRING, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(HelloResponse, api_version_major), ProtoFieldType::TYPE_UINT32, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(HelloResponse, api_version_minor), ProtoFieldType::TYPE_UINT32, false, 1, {}}, + {3, PROTO_FIELD_OFFSET(HelloResponse, server_info), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {4, PROTO_FIELD_OFFSET(HelloResponse, name), ProtoFieldType::TYPE_STRING, false, 1, {}}}; const FieldMeta ConnectRequest::FIELDS[1] = {{1, PROTO_FIELD_OFFSET(ConnectRequest, password), &encode_string_field, @@ -137,7 +137,7 @@ const FieldMeta ConnectRequest::FIELDS[1] = {{1, 1, {.decode_length = &decode_string_field}}}; const FieldMetaV2 ConnectRequest::FIELDS_V2[1] = { - {1, PROTO_FIELD_OFFSET(ConnectRequest, password), ProtoFieldType::TYPE_STRING, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(ConnectRequest, password), ProtoFieldType::TYPE_STRING, false, 1, {}}}; const FieldMeta ConnectResponse::FIELDS[1] = {{1, PROTO_FIELD_OFFSET(ConnectResponse, invalid_password), &encode_bool_field, @@ -147,7 +147,7 @@ const FieldMeta ConnectResponse::FIELDS[1] = {{1, 1, {.decode_varint = &decode_bool_field}}}; const FieldMetaV2 ConnectResponse::FIELDS_V2[1] = { - {1, PROTO_FIELD_OFFSET(ConnectResponse, invalid_password), ProtoFieldType::TYPE_BOOL, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(ConnectResponse, invalid_password), ProtoFieldType::TYPE_BOOL, false, 1, {}}}; const FieldMeta AreaInfo::FIELDS[2] = {{1, PROTO_FIELD_OFFSET(AreaInfo, area_id), &encode_uint32_field, @@ -165,8 +165,8 @@ const FieldMeta AreaInfo::FIELDS[2] = {{1, 1, {.decode_length = &decode_string_field}}}; const FieldMetaV2 AreaInfo::FIELDS_V2[2] = { - {1, PROTO_FIELD_OFFSET(AreaInfo, area_id), ProtoFieldType::TYPE_UINT32, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(AreaInfo, name), ProtoFieldType::TYPE_STRING, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(AreaInfo, area_id), ProtoFieldType::TYPE_UINT32, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(AreaInfo, name), ProtoFieldType::TYPE_STRING, false, 1, {}}}; const FieldMeta DeviceInfo::FIELDS[3] = {{1, PROTO_FIELD_OFFSET(DeviceInfo, device_id), &encode_uint32_field, @@ -192,9 +192,9 @@ const FieldMeta DeviceInfo::FIELDS[3] = {{1, 1, {.decode_varint = &decode_uint32_field}}}; const FieldMetaV2 DeviceInfo::FIELDS_V2[3] = { - {1, PROTO_FIELD_OFFSET(DeviceInfo, device_id), ProtoFieldType::TYPE_UINT32, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(DeviceInfo, name), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {3, PROTO_FIELD_OFFSET(DeviceInfo, area_id), ProtoFieldType::TYPE_UINT32, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(DeviceInfo, device_id), ProtoFieldType::TYPE_UINT32, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(DeviceInfo, name), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {3, PROTO_FIELD_OFFSET(DeviceInfo, area_id), ProtoFieldType::TYPE_UINT32, false, 1, {}}}; const FieldMeta DeviceInfoResponse::FIELDS[19] = { {1, PROTO_FIELD_OFFSET(DeviceInfoResponse, uses_password), @@ -364,33 +364,64 @@ const RepeatedFieldMeta DeviceInfoResponse::REPEATED_FIELDS[2] = { 2, {.decode_length = &decode_repeated_message_field}}}; const FieldMetaV2 DeviceInfoResponse::FIELDS_V2[20] = { - {1, PROTO_FIELD_OFFSET(DeviceInfoResponse, uses_password), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(DeviceInfoResponse, name), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {3, PROTO_FIELD_OFFSET(DeviceInfoResponse, mac_address), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {4, PROTO_FIELD_OFFSET(DeviceInfoResponse, esphome_version), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {5, PROTO_FIELD_OFFSET(DeviceInfoResponse, compilation_time), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {6, PROTO_FIELD_OFFSET(DeviceInfoResponse, model), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {7, PROTO_FIELD_OFFSET(DeviceInfoResponse, has_deep_sleep), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {8, PROTO_FIELD_OFFSET(DeviceInfoResponse, project_name), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {9, PROTO_FIELD_OFFSET(DeviceInfoResponse, project_version), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {10, PROTO_FIELD_OFFSET(DeviceInfoResponse, webserver_port), ProtoFieldType::TYPE_UINT32, false, 1, 0}, - {11, PROTO_FIELD_OFFSET(DeviceInfoResponse, legacy_bluetooth_proxy_version), ProtoFieldType::TYPE_UINT32, false, 1, - 0}, - {15, PROTO_FIELD_OFFSET(DeviceInfoResponse, bluetooth_proxy_feature_flags), ProtoFieldType::TYPE_UINT32, false, 1, - 0}, - {12, PROTO_FIELD_OFFSET(DeviceInfoResponse, manufacturer), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {13, PROTO_FIELD_OFFSET(DeviceInfoResponse, friendly_name), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {14, PROTO_FIELD_OFFSET(DeviceInfoResponse, legacy_voice_assistant_version), ProtoFieldType::TYPE_UINT32, false, 1, - 0}, - {17, PROTO_FIELD_OFFSET(DeviceInfoResponse, voice_assistant_feature_flags), ProtoFieldType::TYPE_UINT32, false, 2, - 0}, - {16, PROTO_FIELD_OFFSET(DeviceInfoResponse, suggested_area), ProtoFieldType::TYPE_STRING, false, 2, 0}, - {18, PROTO_FIELD_OFFSET(DeviceInfoResponse, bluetooth_mac_address), ProtoFieldType::TYPE_STRING, false, 2, 0}, - {19, PROTO_FIELD_OFFSET(DeviceInfoResponse, api_encryption_supported), ProtoFieldType::TYPE_BOOL, false, 2, 0}, - {22, PROTO_FIELD_OFFSET(DeviceInfoResponse, area), ProtoFieldType::TYPE_MESSAGE, false, 2, 10}}; + {1, PROTO_FIELD_OFFSET(DeviceInfoResponse, uses_password), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(DeviceInfoResponse, name), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {3, PROTO_FIELD_OFFSET(DeviceInfoResponse, mac_address), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {4, PROTO_FIELD_OFFSET(DeviceInfoResponse, esphome_version), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {5, PROTO_FIELD_OFFSET(DeviceInfoResponse, compilation_time), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {6, PROTO_FIELD_OFFSET(DeviceInfoResponse, model), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {7, PROTO_FIELD_OFFSET(DeviceInfoResponse, has_deep_sleep), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {8, PROTO_FIELD_OFFSET(DeviceInfoResponse, project_name), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {9, PROTO_FIELD_OFFSET(DeviceInfoResponse, project_version), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {10, PROTO_FIELD_OFFSET(DeviceInfoResponse, webserver_port), ProtoFieldType::TYPE_UINT32, false, 1, {}}, + {11, + PROTO_FIELD_OFFSET(DeviceInfoResponse, legacy_bluetooth_proxy_version), + ProtoFieldType::TYPE_UINT32, + false, + 1, + {}}, + {15, + PROTO_FIELD_OFFSET(DeviceInfoResponse, bluetooth_proxy_feature_flags), + ProtoFieldType::TYPE_UINT32, + false, + 1, + {}}, + {12, PROTO_FIELD_OFFSET(DeviceInfoResponse, manufacturer), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {13, PROTO_FIELD_OFFSET(DeviceInfoResponse, friendly_name), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {14, + PROTO_FIELD_OFFSET(DeviceInfoResponse, legacy_voice_assistant_version), + ProtoFieldType::TYPE_UINT32, + false, + 1, + {}}, + {17, + PROTO_FIELD_OFFSET(DeviceInfoResponse, voice_assistant_feature_flags), + ProtoFieldType::TYPE_UINT32, + false, + 2, + {}}, + {16, PROTO_FIELD_OFFSET(DeviceInfoResponse, suggested_area), ProtoFieldType::TYPE_STRING, false, 2, {}}, + {18, PROTO_FIELD_OFFSET(DeviceInfoResponse, bluetooth_mac_address), ProtoFieldType::TYPE_STRING, false, 2, {}}, + {19, PROTO_FIELD_OFFSET(DeviceInfoResponse, api_encryption_supported), ProtoFieldType::TYPE_BOOL, false, 2, {}}, + {22, + PROTO_FIELD_OFFSET(DeviceInfoResponse, area), + ProtoFieldType::TYPE_MESSAGE, + false, + 2, + {.message = {&encode_message_field, &size_message_field, &decode_message_field}}}}; const RepeatedFieldMetaV2 DeviceInfoResponse::REPEATED_FIELDS_V2[2] = { - {20, PROTO_FIELD_OFFSET(DeviceInfoResponse, devices), ProtoFieldType::TYPE_MESSAGE, 2, 11}, - {21, PROTO_FIELD_OFFSET(DeviceInfoResponse, areas), ProtoFieldType::TYPE_MESSAGE, 2, 10}}; + {20, + PROTO_FIELD_OFFSET(DeviceInfoResponse, devices), + ProtoFieldType::TYPE_MESSAGE, + 2, + {.message = {&encode_repeated_message_field, &size_repeated_message_field, + &decode_repeated_message_field}}}, + {21, + PROTO_FIELD_OFFSET(DeviceInfoResponse, areas), + ProtoFieldType::TYPE_MESSAGE, + 2, + {.message = {&encode_repeated_message_field, &size_repeated_message_field, + &decode_repeated_message_field}}}}; #ifdef USE_BINARY_SENSOR const FieldMeta ListEntitiesBinarySensorResponse::FIELDS[10] = { {1, @@ -474,18 +505,26 @@ const FieldMeta ListEntitiesBinarySensorResponse::FIELDS[10] = { 1, {.decode_varint = &decode_uint32_field}}}; const FieldMetaV2 ListEntitiesBinarySensorResponse::FIELDS_V2[10] = { - {1, PROTO_FIELD_OFFSET(ListEntitiesBinarySensorResponse, object_id), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(ListEntitiesBinarySensorResponse, key), ProtoFieldType::TYPE_FIXED32, false, 1, 0}, - {3, PROTO_FIELD_OFFSET(ListEntitiesBinarySensorResponse, name), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {4, PROTO_FIELD_OFFSET(ListEntitiesBinarySensorResponse, unique_id), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {5, PROTO_FIELD_OFFSET(ListEntitiesBinarySensorResponse, device_class), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {6, PROTO_FIELD_OFFSET(ListEntitiesBinarySensorResponse, is_status_binary_sensor), ProtoFieldType::TYPE_BOOL, false, - 1, 0}, - {7, PROTO_FIELD_OFFSET(ListEntitiesBinarySensorResponse, disabled_by_default), ProtoFieldType::TYPE_BOOL, false, 1, - 0}, - {8, PROTO_FIELD_OFFSET(ListEntitiesBinarySensorResponse, icon), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {9, PROTO_FIELD_OFFSET(ListEntitiesBinarySensorResponse, entity_category), ProtoFieldType::TYPE_ENUM, false, 1, 0}, - {10, PROTO_FIELD_OFFSET(ListEntitiesBinarySensorResponse, device_id), ProtoFieldType::TYPE_UINT32, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(ListEntitiesBinarySensorResponse, object_id), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(ListEntitiesBinarySensorResponse, key), ProtoFieldType::TYPE_FIXED32, false, 1, {}}, + {3, PROTO_FIELD_OFFSET(ListEntitiesBinarySensorResponse, name), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {4, PROTO_FIELD_OFFSET(ListEntitiesBinarySensorResponse, unique_id), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {5, PROTO_FIELD_OFFSET(ListEntitiesBinarySensorResponse, device_class), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {6, + PROTO_FIELD_OFFSET(ListEntitiesBinarySensorResponse, is_status_binary_sensor), + ProtoFieldType::TYPE_BOOL, + false, + 1, + {}}, + {7, + PROTO_FIELD_OFFSET(ListEntitiesBinarySensorResponse, disabled_by_default), + ProtoFieldType::TYPE_BOOL, + false, + 1, + {}}, + {8, PROTO_FIELD_OFFSET(ListEntitiesBinarySensorResponse, icon), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {9, PROTO_FIELD_OFFSET(ListEntitiesBinarySensorResponse, entity_category), ProtoFieldType::TYPE_ENUM, false, 1, {}}, + {10, PROTO_FIELD_OFFSET(ListEntitiesBinarySensorResponse, device_id), ProtoFieldType::TYPE_UINT32, false, 1, {}}}; const FieldMeta BinarySensorStateResponse::FIELDS[4] = {{1, PROTO_FIELD_OFFSET(BinarySensorStateResponse, key), &encode_fixed32_field, @@ -519,10 +558,10 @@ const FieldMeta BinarySensorStateResponse::FIELDS[4] = {{1, 1, {.decode_varint = &decode_uint32_field}}}; const FieldMetaV2 BinarySensorStateResponse::FIELDS_V2[4] = { - {1, PROTO_FIELD_OFFSET(BinarySensorStateResponse, key), ProtoFieldType::TYPE_FIXED32, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(BinarySensorStateResponse, state), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {3, PROTO_FIELD_OFFSET(BinarySensorStateResponse, missing_state), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {4, PROTO_FIELD_OFFSET(BinarySensorStateResponse, device_id), ProtoFieldType::TYPE_UINT32, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(BinarySensorStateResponse, key), ProtoFieldType::TYPE_FIXED32, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(BinarySensorStateResponse, state), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {3, PROTO_FIELD_OFFSET(BinarySensorStateResponse, missing_state), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {4, PROTO_FIELD_OFFSET(BinarySensorStateResponse, device_id), ProtoFieldType::TYPE_UINT32, false, 1, {}}}; #endif #ifdef USE_COVER const FieldMeta ListEntitiesCoverResponse::FIELDS[13] = { @@ -631,19 +670,19 @@ const FieldMeta ListEntitiesCoverResponse::FIELDS[13] = { 1, {.decode_varint = &decode_uint32_field}}}; const FieldMetaV2 ListEntitiesCoverResponse::FIELDS_V2[13] = { - {1, PROTO_FIELD_OFFSET(ListEntitiesCoverResponse, object_id), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(ListEntitiesCoverResponse, key), ProtoFieldType::TYPE_FIXED32, false, 1, 0}, - {3, PROTO_FIELD_OFFSET(ListEntitiesCoverResponse, name), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {4, PROTO_FIELD_OFFSET(ListEntitiesCoverResponse, unique_id), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {5, PROTO_FIELD_OFFSET(ListEntitiesCoverResponse, assumed_state), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {6, PROTO_FIELD_OFFSET(ListEntitiesCoverResponse, supports_position), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {7, PROTO_FIELD_OFFSET(ListEntitiesCoverResponse, supports_tilt), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {8, PROTO_FIELD_OFFSET(ListEntitiesCoverResponse, device_class), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {9, PROTO_FIELD_OFFSET(ListEntitiesCoverResponse, disabled_by_default), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {10, PROTO_FIELD_OFFSET(ListEntitiesCoverResponse, icon), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {11, PROTO_FIELD_OFFSET(ListEntitiesCoverResponse, entity_category), ProtoFieldType::TYPE_ENUM, false, 1, 0}, - {12, PROTO_FIELD_OFFSET(ListEntitiesCoverResponse, supports_stop), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {13, PROTO_FIELD_OFFSET(ListEntitiesCoverResponse, device_id), ProtoFieldType::TYPE_UINT32, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(ListEntitiesCoverResponse, object_id), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(ListEntitiesCoverResponse, key), ProtoFieldType::TYPE_FIXED32, false, 1, {}}, + {3, PROTO_FIELD_OFFSET(ListEntitiesCoverResponse, name), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {4, PROTO_FIELD_OFFSET(ListEntitiesCoverResponse, unique_id), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {5, PROTO_FIELD_OFFSET(ListEntitiesCoverResponse, assumed_state), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {6, PROTO_FIELD_OFFSET(ListEntitiesCoverResponse, supports_position), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {7, PROTO_FIELD_OFFSET(ListEntitiesCoverResponse, supports_tilt), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {8, PROTO_FIELD_OFFSET(ListEntitiesCoverResponse, device_class), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {9, PROTO_FIELD_OFFSET(ListEntitiesCoverResponse, disabled_by_default), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {10, PROTO_FIELD_OFFSET(ListEntitiesCoverResponse, icon), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {11, PROTO_FIELD_OFFSET(ListEntitiesCoverResponse, entity_category), ProtoFieldType::TYPE_ENUM, false, 1, {}}, + {12, PROTO_FIELD_OFFSET(ListEntitiesCoverResponse, supports_stop), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {13, PROTO_FIELD_OFFSET(ListEntitiesCoverResponse, device_id), ProtoFieldType::TYPE_UINT32, false, 1, {}}}; const FieldMeta CoverStateResponse::FIELDS[6] = {{1, PROTO_FIELD_OFFSET(CoverStateResponse, key), &encode_fixed32_field, @@ -693,12 +732,12 @@ const FieldMeta CoverStateResponse::FIELDS[6] = {{1, 1, {.decode_varint = &decode_uint32_field}}}; const FieldMetaV2 CoverStateResponse::FIELDS_V2[6] = { - {1, PROTO_FIELD_OFFSET(CoverStateResponse, key), ProtoFieldType::TYPE_FIXED32, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(CoverStateResponse, legacy_state), ProtoFieldType::TYPE_ENUM, false, 1, 0}, - {3, PROTO_FIELD_OFFSET(CoverStateResponse, position), ProtoFieldType::TYPE_FLOAT, false, 1, 0}, - {4, PROTO_FIELD_OFFSET(CoverStateResponse, tilt), ProtoFieldType::TYPE_FLOAT, false, 1, 0}, - {5, PROTO_FIELD_OFFSET(CoverStateResponse, current_operation), ProtoFieldType::TYPE_ENUM, false, 1, 0}, - {6, PROTO_FIELD_OFFSET(CoverStateResponse, device_id), ProtoFieldType::TYPE_UINT32, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(CoverStateResponse, key), ProtoFieldType::TYPE_FIXED32, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(CoverStateResponse, legacy_state), ProtoFieldType::TYPE_ENUM, false, 1, {}}, + {3, PROTO_FIELD_OFFSET(CoverStateResponse, position), ProtoFieldType::TYPE_FLOAT, false, 1, {}}, + {4, PROTO_FIELD_OFFSET(CoverStateResponse, tilt), ProtoFieldType::TYPE_FLOAT, false, 1, {}}, + {5, PROTO_FIELD_OFFSET(CoverStateResponse, current_operation), ProtoFieldType::TYPE_ENUM, false, 1, {}}, + {6, PROTO_FIELD_OFFSET(CoverStateResponse, device_id), ProtoFieldType::TYPE_UINT32, false, 1, {}}}; const FieldMeta CoverCommandRequest::FIELDS[8] = {{1, PROTO_FIELD_OFFSET(CoverCommandRequest, key), &encode_fixed32_field, @@ -764,14 +803,14 @@ const FieldMeta CoverCommandRequest::FIELDS[8] = {{1, 1, {.decode_varint = &decode_bool_field}}}; const FieldMetaV2 CoverCommandRequest::FIELDS_V2[8] = { - {1, PROTO_FIELD_OFFSET(CoverCommandRequest, key), ProtoFieldType::TYPE_FIXED32, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(CoverCommandRequest, has_legacy_command), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {3, PROTO_FIELD_OFFSET(CoverCommandRequest, legacy_command), ProtoFieldType::TYPE_ENUM, false, 1, 0}, - {4, PROTO_FIELD_OFFSET(CoverCommandRequest, has_position), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {5, PROTO_FIELD_OFFSET(CoverCommandRequest, position), ProtoFieldType::TYPE_FLOAT, false, 1, 0}, - {6, PROTO_FIELD_OFFSET(CoverCommandRequest, has_tilt), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {7, PROTO_FIELD_OFFSET(CoverCommandRequest, tilt), ProtoFieldType::TYPE_FLOAT, false, 1, 0}, - {8, PROTO_FIELD_OFFSET(CoverCommandRequest, stop), ProtoFieldType::TYPE_BOOL, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(CoverCommandRequest, key), ProtoFieldType::TYPE_FIXED32, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(CoverCommandRequest, has_legacy_command), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {3, PROTO_FIELD_OFFSET(CoverCommandRequest, legacy_command), ProtoFieldType::TYPE_ENUM, false, 1, {}}, + {4, PROTO_FIELD_OFFSET(CoverCommandRequest, has_position), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {5, PROTO_FIELD_OFFSET(CoverCommandRequest, position), ProtoFieldType::TYPE_FLOAT, false, 1, {}}, + {6, PROTO_FIELD_OFFSET(CoverCommandRequest, has_tilt), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {7, PROTO_FIELD_OFFSET(CoverCommandRequest, tilt), ProtoFieldType::TYPE_FLOAT, false, 1, {}}, + {8, PROTO_FIELD_OFFSET(CoverCommandRequest, stop), ProtoFieldType::TYPE_BOOL, false, 1, {}}}; #endif #ifdef USE_FAN const FieldMeta ListEntitiesFanResponse::FIELDS[12] = { @@ -880,20 +919,20 @@ const RepeatedFieldMeta ListEntitiesFanResponse::REPEATED_FIELDS[1] = { 2, {.decode_length = &decode_repeated_string_field}}}; const FieldMetaV2 ListEntitiesFanResponse::FIELDS_V2[12] = { - {1, PROTO_FIELD_OFFSET(ListEntitiesFanResponse, object_id), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(ListEntitiesFanResponse, key), ProtoFieldType::TYPE_FIXED32, false, 1, 0}, - {3, PROTO_FIELD_OFFSET(ListEntitiesFanResponse, name), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {4, PROTO_FIELD_OFFSET(ListEntitiesFanResponse, unique_id), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {5, PROTO_FIELD_OFFSET(ListEntitiesFanResponse, supports_oscillation), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {6, PROTO_FIELD_OFFSET(ListEntitiesFanResponse, supports_speed), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {7, PROTO_FIELD_OFFSET(ListEntitiesFanResponse, supports_direction), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {8, PROTO_FIELD_OFFSET(ListEntitiesFanResponse, supported_speed_count), ProtoFieldType::TYPE_INT32, false, 1, 0}, - {9, PROTO_FIELD_OFFSET(ListEntitiesFanResponse, disabled_by_default), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {10, PROTO_FIELD_OFFSET(ListEntitiesFanResponse, icon), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {11, PROTO_FIELD_OFFSET(ListEntitiesFanResponse, entity_category), ProtoFieldType::TYPE_ENUM, false, 1, 0}, - {13, PROTO_FIELD_OFFSET(ListEntitiesFanResponse, device_id), ProtoFieldType::TYPE_UINT32, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(ListEntitiesFanResponse, object_id), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(ListEntitiesFanResponse, key), ProtoFieldType::TYPE_FIXED32, false, 1, {}}, + {3, PROTO_FIELD_OFFSET(ListEntitiesFanResponse, name), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {4, PROTO_FIELD_OFFSET(ListEntitiesFanResponse, unique_id), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {5, PROTO_FIELD_OFFSET(ListEntitiesFanResponse, supports_oscillation), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {6, PROTO_FIELD_OFFSET(ListEntitiesFanResponse, supports_speed), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {7, PROTO_FIELD_OFFSET(ListEntitiesFanResponse, supports_direction), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {8, PROTO_FIELD_OFFSET(ListEntitiesFanResponse, supported_speed_count), ProtoFieldType::TYPE_INT32, false, 1, {}}, + {9, PROTO_FIELD_OFFSET(ListEntitiesFanResponse, disabled_by_default), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {10, PROTO_FIELD_OFFSET(ListEntitiesFanResponse, icon), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {11, PROTO_FIELD_OFFSET(ListEntitiesFanResponse, entity_category), ProtoFieldType::TYPE_ENUM, false, 1, {}}, + {13, PROTO_FIELD_OFFSET(ListEntitiesFanResponse, device_id), ProtoFieldType::TYPE_UINT32, false, 1, {}}}; const RepeatedFieldMetaV2 ListEntitiesFanResponse::REPEATED_FIELDS_V2[1] = { - {12, PROTO_FIELD_OFFSET(ListEntitiesFanResponse, supported_preset_modes), ProtoFieldType::TYPE_STRING, 1, 0}}; + {12, PROTO_FIELD_OFFSET(ListEntitiesFanResponse, supported_preset_modes), ProtoFieldType::TYPE_STRING, 1, {}}}; const FieldMeta FanStateResponse::FIELDS[8] = {{1, PROTO_FIELD_OFFSET(FanStateResponse, key), &encode_fixed32_field, @@ -959,14 +998,14 @@ const FieldMeta FanStateResponse::FIELDS[8] = {{1, 1, {.decode_varint = &decode_uint32_field}}}; const FieldMetaV2 FanStateResponse::FIELDS_V2[8] = { - {1, PROTO_FIELD_OFFSET(FanStateResponse, key), ProtoFieldType::TYPE_FIXED32, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(FanStateResponse, state), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {3, PROTO_FIELD_OFFSET(FanStateResponse, oscillating), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {4, PROTO_FIELD_OFFSET(FanStateResponse, speed), ProtoFieldType::TYPE_ENUM, false, 1, 0}, - {5, PROTO_FIELD_OFFSET(FanStateResponse, direction), ProtoFieldType::TYPE_ENUM, false, 1, 0}, - {6, PROTO_FIELD_OFFSET(FanStateResponse, speed_level), ProtoFieldType::TYPE_INT32, false, 1, 0}, - {7, PROTO_FIELD_OFFSET(FanStateResponse, preset_mode), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {8, PROTO_FIELD_OFFSET(FanStateResponse, device_id), ProtoFieldType::TYPE_UINT32, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(FanStateResponse, key), ProtoFieldType::TYPE_FIXED32, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(FanStateResponse, state), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {3, PROTO_FIELD_OFFSET(FanStateResponse, oscillating), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {4, PROTO_FIELD_OFFSET(FanStateResponse, speed), ProtoFieldType::TYPE_ENUM, false, 1, {}}, + {5, PROTO_FIELD_OFFSET(FanStateResponse, direction), ProtoFieldType::TYPE_ENUM, false, 1, {}}, + {6, PROTO_FIELD_OFFSET(FanStateResponse, speed_level), ProtoFieldType::TYPE_INT32, false, 1, {}}, + {7, PROTO_FIELD_OFFSET(FanStateResponse, preset_mode), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {8, PROTO_FIELD_OFFSET(FanStateResponse, device_id), ProtoFieldType::TYPE_UINT32, false, 1, {}}}; const FieldMeta FanCommandRequest::FIELDS[13] = {{1, PROTO_FIELD_OFFSET(FanCommandRequest, key), &encode_fixed32_field, @@ -1072,19 +1111,19 @@ const FieldMeta FanCommandRequest::FIELDS[13] = {{1, 1, {.decode_length = &decode_string_field}}}; const FieldMetaV2 FanCommandRequest::FIELDS_V2[13] = { - {1, PROTO_FIELD_OFFSET(FanCommandRequest, key), ProtoFieldType::TYPE_FIXED32, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(FanCommandRequest, has_state), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {3, PROTO_FIELD_OFFSET(FanCommandRequest, state), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {4, PROTO_FIELD_OFFSET(FanCommandRequest, has_speed), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {5, PROTO_FIELD_OFFSET(FanCommandRequest, speed), ProtoFieldType::TYPE_ENUM, false, 1, 0}, - {6, PROTO_FIELD_OFFSET(FanCommandRequest, has_oscillating), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {7, PROTO_FIELD_OFFSET(FanCommandRequest, oscillating), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {8, PROTO_FIELD_OFFSET(FanCommandRequest, has_direction), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {9, PROTO_FIELD_OFFSET(FanCommandRequest, direction), ProtoFieldType::TYPE_ENUM, false, 1, 0}, - {10, PROTO_FIELD_OFFSET(FanCommandRequest, has_speed_level), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {11, PROTO_FIELD_OFFSET(FanCommandRequest, speed_level), ProtoFieldType::TYPE_INT32, false, 1, 0}, - {12, PROTO_FIELD_OFFSET(FanCommandRequest, has_preset_mode), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {13, PROTO_FIELD_OFFSET(FanCommandRequest, preset_mode), ProtoFieldType::TYPE_STRING, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(FanCommandRequest, key), ProtoFieldType::TYPE_FIXED32, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(FanCommandRequest, has_state), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {3, PROTO_FIELD_OFFSET(FanCommandRequest, state), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {4, PROTO_FIELD_OFFSET(FanCommandRequest, has_speed), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {5, PROTO_FIELD_OFFSET(FanCommandRequest, speed), ProtoFieldType::TYPE_ENUM, false, 1, {}}, + {6, PROTO_FIELD_OFFSET(FanCommandRequest, has_oscillating), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {7, PROTO_FIELD_OFFSET(FanCommandRequest, oscillating), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {8, PROTO_FIELD_OFFSET(FanCommandRequest, has_direction), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {9, PROTO_FIELD_OFFSET(FanCommandRequest, direction), ProtoFieldType::TYPE_ENUM, false, 1, {}}, + {10, PROTO_FIELD_OFFSET(FanCommandRequest, has_speed_level), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {11, PROTO_FIELD_OFFSET(FanCommandRequest, speed_level), ProtoFieldType::TYPE_INT32, false, 1, {}}, + {12, PROTO_FIELD_OFFSET(FanCommandRequest, has_preset_mode), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {13, PROTO_FIELD_OFFSET(FanCommandRequest, preset_mode), ProtoFieldType::TYPE_STRING, false, 1, {}}}; #endif #ifdef USE_LIGHT const FieldMeta ListEntitiesLightResponse::FIELDS[14] = { @@ -1216,26 +1255,38 @@ const RepeatedFieldMeta ListEntitiesLightResponse::REPEATED_FIELDS[2] = { 2, {.decode_length = &decode_repeated_string_field}}}; const FieldMetaV2 ListEntitiesLightResponse::FIELDS_V2[14] = { - {1, PROTO_FIELD_OFFSET(ListEntitiesLightResponse, object_id), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(ListEntitiesLightResponse, key), ProtoFieldType::TYPE_FIXED32, false, 1, 0}, - {3, PROTO_FIELD_OFFSET(ListEntitiesLightResponse, name), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {4, PROTO_FIELD_OFFSET(ListEntitiesLightResponse, unique_id), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {5, PROTO_FIELD_OFFSET(ListEntitiesLightResponse, legacy_supports_brightness), ProtoFieldType::TYPE_BOOL, false, 1, - 0}, - {6, PROTO_FIELD_OFFSET(ListEntitiesLightResponse, legacy_supports_rgb), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {7, PROTO_FIELD_OFFSET(ListEntitiesLightResponse, legacy_supports_white_value), ProtoFieldType::TYPE_BOOL, false, 1, - 0}, - {8, PROTO_FIELD_OFFSET(ListEntitiesLightResponse, legacy_supports_color_temperature), ProtoFieldType::TYPE_BOOL, - false, 1, 0}, - {9, PROTO_FIELD_OFFSET(ListEntitiesLightResponse, min_mireds), ProtoFieldType::TYPE_FLOAT, false, 1, 0}, - {10, PROTO_FIELD_OFFSET(ListEntitiesLightResponse, max_mireds), ProtoFieldType::TYPE_FLOAT, false, 1, 0}, - {13, PROTO_FIELD_OFFSET(ListEntitiesLightResponse, disabled_by_default), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {14, PROTO_FIELD_OFFSET(ListEntitiesLightResponse, icon), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {15, PROTO_FIELD_OFFSET(ListEntitiesLightResponse, entity_category), ProtoFieldType::TYPE_ENUM, false, 1, 0}, - {16, PROTO_FIELD_OFFSET(ListEntitiesLightResponse, device_id), ProtoFieldType::TYPE_UINT32, false, 2, 0}}; + {1, PROTO_FIELD_OFFSET(ListEntitiesLightResponse, object_id), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(ListEntitiesLightResponse, key), ProtoFieldType::TYPE_FIXED32, false, 1, {}}, + {3, PROTO_FIELD_OFFSET(ListEntitiesLightResponse, name), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {4, PROTO_FIELD_OFFSET(ListEntitiesLightResponse, unique_id), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {5, + PROTO_FIELD_OFFSET(ListEntitiesLightResponse, legacy_supports_brightness), + ProtoFieldType::TYPE_BOOL, + false, + 1, + {}}, + {6, PROTO_FIELD_OFFSET(ListEntitiesLightResponse, legacy_supports_rgb), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {7, + PROTO_FIELD_OFFSET(ListEntitiesLightResponse, legacy_supports_white_value), + ProtoFieldType::TYPE_BOOL, + false, + 1, + {}}, + {8, + PROTO_FIELD_OFFSET(ListEntitiesLightResponse, legacy_supports_color_temperature), + ProtoFieldType::TYPE_BOOL, + false, + 1, + {}}, + {9, PROTO_FIELD_OFFSET(ListEntitiesLightResponse, min_mireds), ProtoFieldType::TYPE_FLOAT, false, 1, {}}, + {10, PROTO_FIELD_OFFSET(ListEntitiesLightResponse, max_mireds), ProtoFieldType::TYPE_FLOAT, false, 1, {}}, + {13, PROTO_FIELD_OFFSET(ListEntitiesLightResponse, disabled_by_default), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {14, PROTO_FIELD_OFFSET(ListEntitiesLightResponse, icon), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {15, PROTO_FIELD_OFFSET(ListEntitiesLightResponse, entity_category), ProtoFieldType::TYPE_ENUM, false, 1, {}}, + {16, PROTO_FIELD_OFFSET(ListEntitiesLightResponse, device_id), ProtoFieldType::TYPE_UINT32, false, 2, {}}}; const RepeatedFieldMetaV2 ListEntitiesLightResponse::REPEATED_FIELDS_V2[2] = { - {12, PROTO_FIELD_OFFSET(ListEntitiesLightResponse, supported_color_modes), ProtoFieldType::TYPE_ENUM, 1, 0}, - {11, PROTO_FIELD_OFFSET(ListEntitiesLightResponse, effects), ProtoFieldType::TYPE_STRING, 1, 0}}; + {12, PROTO_FIELD_OFFSET(ListEntitiesLightResponse, supported_color_modes), ProtoFieldType::TYPE_ENUM, 1, {}}, + {11, PROTO_FIELD_OFFSET(ListEntitiesLightResponse, effects), ProtoFieldType::TYPE_STRING, 1, {}}}; const FieldMeta LightStateResponse::FIELDS[14] = {{1, PROTO_FIELD_OFFSET(LightStateResponse, key), &encode_fixed32_field, @@ -1349,20 +1400,20 @@ const FieldMeta LightStateResponse::FIELDS[14] = {{1, 1, {.decode_varint = &decode_uint32_field}}}; const FieldMetaV2 LightStateResponse::FIELDS_V2[14] = { - {1, PROTO_FIELD_OFFSET(LightStateResponse, key), ProtoFieldType::TYPE_FIXED32, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(LightStateResponse, state), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {3, PROTO_FIELD_OFFSET(LightStateResponse, brightness), ProtoFieldType::TYPE_FLOAT, false, 1, 0}, - {11, PROTO_FIELD_OFFSET(LightStateResponse, color_mode), ProtoFieldType::TYPE_ENUM, false, 1, 0}, - {10, PROTO_FIELD_OFFSET(LightStateResponse, color_brightness), ProtoFieldType::TYPE_FLOAT, false, 1, 0}, - {4, PROTO_FIELD_OFFSET(LightStateResponse, red), ProtoFieldType::TYPE_FLOAT, false, 1, 0}, - {5, PROTO_FIELD_OFFSET(LightStateResponse, green), ProtoFieldType::TYPE_FLOAT, false, 1, 0}, - {6, PROTO_FIELD_OFFSET(LightStateResponse, blue), ProtoFieldType::TYPE_FLOAT, false, 1, 0}, - {7, PROTO_FIELD_OFFSET(LightStateResponse, white), ProtoFieldType::TYPE_FLOAT, false, 1, 0}, - {8, PROTO_FIELD_OFFSET(LightStateResponse, color_temperature), ProtoFieldType::TYPE_FLOAT, false, 1, 0}, - {12, PROTO_FIELD_OFFSET(LightStateResponse, cold_white), ProtoFieldType::TYPE_FLOAT, false, 1, 0}, - {13, PROTO_FIELD_OFFSET(LightStateResponse, warm_white), ProtoFieldType::TYPE_FLOAT, false, 1, 0}, - {9, PROTO_FIELD_OFFSET(LightStateResponse, effect), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {14, PROTO_FIELD_OFFSET(LightStateResponse, device_id), ProtoFieldType::TYPE_UINT32, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(LightStateResponse, key), ProtoFieldType::TYPE_FIXED32, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(LightStateResponse, state), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {3, PROTO_FIELD_OFFSET(LightStateResponse, brightness), ProtoFieldType::TYPE_FLOAT, false, 1, {}}, + {11, PROTO_FIELD_OFFSET(LightStateResponse, color_mode), ProtoFieldType::TYPE_ENUM, false, 1, {}}, + {10, PROTO_FIELD_OFFSET(LightStateResponse, color_brightness), ProtoFieldType::TYPE_FLOAT, false, 1, {}}, + {4, PROTO_FIELD_OFFSET(LightStateResponse, red), ProtoFieldType::TYPE_FLOAT, false, 1, {}}, + {5, PROTO_FIELD_OFFSET(LightStateResponse, green), ProtoFieldType::TYPE_FLOAT, false, 1, {}}, + {6, PROTO_FIELD_OFFSET(LightStateResponse, blue), ProtoFieldType::TYPE_FLOAT, false, 1, {}}, + {7, PROTO_FIELD_OFFSET(LightStateResponse, white), ProtoFieldType::TYPE_FLOAT, false, 1, {}}, + {8, PROTO_FIELD_OFFSET(LightStateResponse, color_temperature), ProtoFieldType::TYPE_FLOAT, false, 1, {}}, + {12, PROTO_FIELD_OFFSET(LightStateResponse, cold_white), ProtoFieldType::TYPE_FLOAT, false, 1, {}}, + {13, PROTO_FIELD_OFFSET(LightStateResponse, warm_white), ProtoFieldType::TYPE_FLOAT, false, 1, {}}, + {9, PROTO_FIELD_OFFSET(LightStateResponse, effect), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {14, PROTO_FIELD_OFFSET(LightStateResponse, device_id), ProtoFieldType::TYPE_UINT32, false, 1, {}}}; const FieldMeta LightCommandRequest::FIELDS[27] = {{1, PROTO_FIELD_OFFSET(LightCommandRequest, key), &encode_fixed32_field, @@ -1580,33 +1631,33 @@ const FieldMeta LightCommandRequest::FIELDS[27] = {{1, 2, {.decode_length = &decode_string_field}}}; const FieldMetaV2 LightCommandRequest::FIELDS_V2[27] = { - {1, PROTO_FIELD_OFFSET(LightCommandRequest, key), ProtoFieldType::TYPE_FIXED32, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(LightCommandRequest, has_state), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {3, PROTO_FIELD_OFFSET(LightCommandRequest, state), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {4, PROTO_FIELD_OFFSET(LightCommandRequest, has_brightness), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {5, PROTO_FIELD_OFFSET(LightCommandRequest, brightness), ProtoFieldType::TYPE_FLOAT, false, 1, 0}, - {22, PROTO_FIELD_OFFSET(LightCommandRequest, has_color_mode), ProtoFieldType::TYPE_BOOL, false, 2, 0}, - {23, PROTO_FIELD_OFFSET(LightCommandRequest, color_mode), ProtoFieldType::TYPE_ENUM, false, 2, 0}, - {20, PROTO_FIELD_OFFSET(LightCommandRequest, has_color_brightness), ProtoFieldType::TYPE_BOOL, false, 2, 0}, - {21, PROTO_FIELD_OFFSET(LightCommandRequest, color_brightness), ProtoFieldType::TYPE_FLOAT, false, 2, 0}, - {6, PROTO_FIELD_OFFSET(LightCommandRequest, has_rgb), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {7, PROTO_FIELD_OFFSET(LightCommandRequest, red), ProtoFieldType::TYPE_FLOAT, false, 1, 0}, - {8, PROTO_FIELD_OFFSET(LightCommandRequest, green), ProtoFieldType::TYPE_FLOAT, false, 1, 0}, - {9, PROTO_FIELD_OFFSET(LightCommandRequest, blue), ProtoFieldType::TYPE_FLOAT, false, 1, 0}, - {10, PROTO_FIELD_OFFSET(LightCommandRequest, has_white), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {11, PROTO_FIELD_OFFSET(LightCommandRequest, white), ProtoFieldType::TYPE_FLOAT, false, 1, 0}, - {12, PROTO_FIELD_OFFSET(LightCommandRequest, has_color_temperature), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {13, PROTO_FIELD_OFFSET(LightCommandRequest, color_temperature), ProtoFieldType::TYPE_FLOAT, false, 1, 0}, - {24, PROTO_FIELD_OFFSET(LightCommandRequest, has_cold_white), ProtoFieldType::TYPE_BOOL, false, 2, 0}, - {25, PROTO_FIELD_OFFSET(LightCommandRequest, cold_white), ProtoFieldType::TYPE_FLOAT, false, 2, 0}, - {26, PROTO_FIELD_OFFSET(LightCommandRequest, has_warm_white), ProtoFieldType::TYPE_BOOL, false, 2, 0}, - {27, PROTO_FIELD_OFFSET(LightCommandRequest, warm_white), ProtoFieldType::TYPE_FLOAT, false, 2, 0}, - {14, PROTO_FIELD_OFFSET(LightCommandRequest, has_transition_length), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {15, PROTO_FIELD_OFFSET(LightCommandRequest, transition_length), ProtoFieldType::TYPE_UINT32, false, 1, 0}, - {16, PROTO_FIELD_OFFSET(LightCommandRequest, has_flash_length), ProtoFieldType::TYPE_BOOL, false, 2, 0}, - {17, PROTO_FIELD_OFFSET(LightCommandRequest, flash_length), ProtoFieldType::TYPE_UINT32, false, 2, 0}, - {18, PROTO_FIELD_OFFSET(LightCommandRequest, has_effect), ProtoFieldType::TYPE_BOOL, false, 2, 0}, - {19, PROTO_FIELD_OFFSET(LightCommandRequest, effect), ProtoFieldType::TYPE_STRING, false, 2, 0}}; + {1, PROTO_FIELD_OFFSET(LightCommandRequest, key), ProtoFieldType::TYPE_FIXED32, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(LightCommandRequest, has_state), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {3, PROTO_FIELD_OFFSET(LightCommandRequest, state), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {4, PROTO_FIELD_OFFSET(LightCommandRequest, has_brightness), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {5, PROTO_FIELD_OFFSET(LightCommandRequest, brightness), ProtoFieldType::TYPE_FLOAT, false, 1, {}}, + {22, PROTO_FIELD_OFFSET(LightCommandRequest, has_color_mode), ProtoFieldType::TYPE_BOOL, false, 2, {}}, + {23, PROTO_FIELD_OFFSET(LightCommandRequest, color_mode), ProtoFieldType::TYPE_ENUM, false, 2, {}}, + {20, PROTO_FIELD_OFFSET(LightCommandRequest, has_color_brightness), ProtoFieldType::TYPE_BOOL, false, 2, {}}, + {21, PROTO_FIELD_OFFSET(LightCommandRequest, color_brightness), ProtoFieldType::TYPE_FLOAT, false, 2, {}}, + {6, PROTO_FIELD_OFFSET(LightCommandRequest, has_rgb), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {7, PROTO_FIELD_OFFSET(LightCommandRequest, red), ProtoFieldType::TYPE_FLOAT, false, 1, {}}, + {8, PROTO_FIELD_OFFSET(LightCommandRequest, green), ProtoFieldType::TYPE_FLOAT, false, 1, {}}, + {9, PROTO_FIELD_OFFSET(LightCommandRequest, blue), ProtoFieldType::TYPE_FLOAT, false, 1, {}}, + {10, PROTO_FIELD_OFFSET(LightCommandRequest, has_white), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {11, PROTO_FIELD_OFFSET(LightCommandRequest, white), ProtoFieldType::TYPE_FLOAT, false, 1, {}}, + {12, PROTO_FIELD_OFFSET(LightCommandRequest, has_color_temperature), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {13, PROTO_FIELD_OFFSET(LightCommandRequest, color_temperature), ProtoFieldType::TYPE_FLOAT, false, 1, {}}, + {24, PROTO_FIELD_OFFSET(LightCommandRequest, has_cold_white), ProtoFieldType::TYPE_BOOL, false, 2, {}}, + {25, PROTO_FIELD_OFFSET(LightCommandRequest, cold_white), ProtoFieldType::TYPE_FLOAT, false, 2, {}}, + {26, PROTO_FIELD_OFFSET(LightCommandRequest, has_warm_white), ProtoFieldType::TYPE_BOOL, false, 2, {}}, + {27, PROTO_FIELD_OFFSET(LightCommandRequest, warm_white), ProtoFieldType::TYPE_FLOAT, false, 2, {}}, + {14, PROTO_FIELD_OFFSET(LightCommandRequest, has_transition_length), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {15, PROTO_FIELD_OFFSET(LightCommandRequest, transition_length), ProtoFieldType::TYPE_UINT32, false, 1, {}}, + {16, PROTO_FIELD_OFFSET(LightCommandRequest, has_flash_length), ProtoFieldType::TYPE_BOOL, false, 2, {}}, + {17, PROTO_FIELD_OFFSET(LightCommandRequest, flash_length), ProtoFieldType::TYPE_UINT32, false, 2, {}}, + {18, PROTO_FIELD_OFFSET(LightCommandRequest, has_effect), ProtoFieldType::TYPE_BOOL, false, 2, {}}, + {19, PROTO_FIELD_OFFSET(LightCommandRequest, effect), ProtoFieldType::TYPE_STRING, false, 2, {}}}; #endif #ifdef USE_SENSOR const FieldMeta ListEntitiesSensorResponse::FIELDS[14] = { @@ -1723,21 +1774,25 @@ const FieldMeta ListEntitiesSensorResponse::FIELDS[14] = { 1, {.decode_varint = &decode_uint32_field}}}; const FieldMetaV2 ListEntitiesSensorResponse::FIELDS_V2[14] = { - {1, PROTO_FIELD_OFFSET(ListEntitiesSensorResponse, object_id), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(ListEntitiesSensorResponse, key), ProtoFieldType::TYPE_FIXED32, false, 1, 0}, - {3, PROTO_FIELD_OFFSET(ListEntitiesSensorResponse, name), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {4, PROTO_FIELD_OFFSET(ListEntitiesSensorResponse, unique_id), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {5, PROTO_FIELD_OFFSET(ListEntitiesSensorResponse, icon), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {6, PROTO_FIELD_OFFSET(ListEntitiesSensorResponse, unit_of_measurement), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {7, PROTO_FIELD_OFFSET(ListEntitiesSensorResponse, accuracy_decimals), ProtoFieldType::TYPE_INT32, false, 1, 0}, - {8, PROTO_FIELD_OFFSET(ListEntitiesSensorResponse, force_update), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {9, PROTO_FIELD_OFFSET(ListEntitiesSensorResponse, device_class), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {10, PROTO_FIELD_OFFSET(ListEntitiesSensorResponse, state_class), ProtoFieldType::TYPE_ENUM, false, 1, 0}, - {11, PROTO_FIELD_OFFSET(ListEntitiesSensorResponse, legacy_last_reset_type), ProtoFieldType::TYPE_ENUM, false, 1, - 0}, - {12, PROTO_FIELD_OFFSET(ListEntitiesSensorResponse, disabled_by_default), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {13, PROTO_FIELD_OFFSET(ListEntitiesSensorResponse, entity_category), ProtoFieldType::TYPE_ENUM, false, 1, 0}, - {14, PROTO_FIELD_OFFSET(ListEntitiesSensorResponse, device_id), ProtoFieldType::TYPE_UINT32, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(ListEntitiesSensorResponse, object_id), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(ListEntitiesSensorResponse, key), ProtoFieldType::TYPE_FIXED32, false, 1, {}}, + {3, PROTO_FIELD_OFFSET(ListEntitiesSensorResponse, name), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {4, PROTO_FIELD_OFFSET(ListEntitiesSensorResponse, unique_id), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {5, PROTO_FIELD_OFFSET(ListEntitiesSensorResponse, icon), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {6, PROTO_FIELD_OFFSET(ListEntitiesSensorResponse, unit_of_measurement), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {7, PROTO_FIELD_OFFSET(ListEntitiesSensorResponse, accuracy_decimals), ProtoFieldType::TYPE_INT32, false, 1, {}}, + {8, PROTO_FIELD_OFFSET(ListEntitiesSensorResponse, force_update), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {9, PROTO_FIELD_OFFSET(ListEntitiesSensorResponse, device_class), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {10, PROTO_FIELD_OFFSET(ListEntitiesSensorResponse, state_class), ProtoFieldType::TYPE_ENUM, false, 1, {}}, + {11, + PROTO_FIELD_OFFSET(ListEntitiesSensorResponse, legacy_last_reset_type), + ProtoFieldType::TYPE_ENUM, + false, + 1, + {}}, + {12, PROTO_FIELD_OFFSET(ListEntitiesSensorResponse, disabled_by_default), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {13, PROTO_FIELD_OFFSET(ListEntitiesSensorResponse, entity_category), ProtoFieldType::TYPE_ENUM, false, 1, {}}, + {14, PROTO_FIELD_OFFSET(ListEntitiesSensorResponse, device_id), ProtoFieldType::TYPE_UINT32, false, 1, {}}}; const FieldMeta SensorStateResponse::FIELDS[4] = {{1, PROTO_FIELD_OFFSET(SensorStateResponse, key), &encode_fixed32_field, @@ -1771,10 +1826,10 @@ const FieldMeta SensorStateResponse::FIELDS[4] = {{1, 1, {.decode_varint = &decode_uint32_field}}}; const FieldMetaV2 SensorStateResponse::FIELDS_V2[4] = { - {1, PROTO_FIELD_OFFSET(SensorStateResponse, key), ProtoFieldType::TYPE_FIXED32, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(SensorStateResponse, state), ProtoFieldType::TYPE_FLOAT, false, 1, 0}, - {3, PROTO_FIELD_OFFSET(SensorStateResponse, missing_state), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {4, PROTO_FIELD_OFFSET(SensorStateResponse, device_id), ProtoFieldType::TYPE_UINT32, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(SensorStateResponse, key), ProtoFieldType::TYPE_FIXED32, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(SensorStateResponse, state), ProtoFieldType::TYPE_FLOAT, false, 1, {}}, + {3, PROTO_FIELD_OFFSET(SensorStateResponse, missing_state), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {4, PROTO_FIELD_OFFSET(SensorStateResponse, device_id), ProtoFieldType::TYPE_UINT32, false, 1, {}}}; #endif #ifdef USE_SWITCH const FieldMeta ListEntitiesSwitchResponse::FIELDS[10] = { @@ -1859,16 +1914,16 @@ const FieldMeta ListEntitiesSwitchResponse::FIELDS[10] = { 1, {.decode_varint = &decode_uint32_field}}}; const FieldMetaV2 ListEntitiesSwitchResponse::FIELDS_V2[10] = { - {1, PROTO_FIELD_OFFSET(ListEntitiesSwitchResponse, object_id), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(ListEntitiesSwitchResponse, key), ProtoFieldType::TYPE_FIXED32, false, 1, 0}, - {3, PROTO_FIELD_OFFSET(ListEntitiesSwitchResponse, name), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {4, PROTO_FIELD_OFFSET(ListEntitiesSwitchResponse, unique_id), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {5, PROTO_FIELD_OFFSET(ListEntitiesSwitchResponse, icon), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {6, PROTO_FIELD_OFFSET(ListEntitiesSwitchResponse, assumed_state), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {7, PROTO_FIELD_OFFSET(ListEntitiesSwitchResponse, disabled_by_default), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {8, PROTO_FIELD_OFFSET(ListEntitiesSwitchResponse, entity_category), ProtoFieldType::TYPE_ENUM, false, 1, 0}, - {9, PROTO_FIELD_OFFSET(ListEntitiesSwitchResponse, device_class), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {10, PROTO_FIELD_OFFSET(ListEntitiesSwitchResponse, device_id), ProtoFieldType::TYPE_UINT32, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(ListEntitiesSwitchResponse, object_id), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(ListEntitiesSwitchResponse, key), ProtoFieldType::TYPE_FIXED32, false, 1, {}}, + {3, PROTO_FIELD_OFFSET(ListEntitiesSwitchResponse, name), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {4, PROTO_FIELD_OFFSET(ListEntitiesSwitchResponse, unique_id), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {5, PROTO_FIELD_OFFSET(ListEntitiesSwitchResponse, icon), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {6, PROTO_FIELD_OFFSET(ListEntitiesSwitchResponse, assumed_state), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {7, PROTO_FIELD_OFFSET(ListEntitiesSwitchResponse, disabled_by_default), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {8, PROTO_FIELD_OFFSET(ListEntitiesSwitchResponse, entity_category), ProtoFieldType::TYPE_ENUM, false, 1, {}}, + {9, PROTO_FIELD_OFFSET(ListEntitiesSwitchResponse, device_class), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {10, PROTO_FIELD_OFFSET(ListEntitiesSwitchResponse, device_id), ProtoFieldType::TYPE_UINT32, false, 1, {}}}; const FieldMeta SwitchStateResponse::FIELDS[3] = {{1, PROTO_FIELD_OFFSET(SwitchStateResponse, key), &encode_fixed32_field, @@ -1894,9 +1949,9 @@ const FieldMeta SwitchStateResponse::FIELDS[3] = {{1, 1, {.decode_varint = &decode_uint32_field}}}; const FieldMetaV2 SwitchStateResponse::FIELDS_V2[3] = { - {1, PROTO_FIELD_OFFSET(SwitchStateResponse, key), ProtoFieldType::TYPE_FIXED32, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(SwitchStateResponse, state), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {3, PROTO_FIELD_OFFSET(SwitchStateResponse, device_id), ProtoFieldType::TYPE_UINT32, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(SwitchStateResponse, key), ProtoFieldType::TYPE_FIXED32, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(SwitchStateResponse, state), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {3, PROTO_FIELD_OFFSET(SwitchStateResponse, device_id), ProtoFieldType::TYPE_UINT32, false, 1, {}}}; const FieldMeta SwitchCommandRequest::FIELDS[2] = {{1, PROTO_FIELD_OFFSET(SwitchCommandRequest, key), &encode_fixed32_field, @@ -1914,8 +1969,8 @@ const FieldMeta SwitchCommandRequest::FIELDS[2] = {{1, 1, {.decode_varint = &decode_bool_field}}}; const FieldMetaV2 SwitchCommandRequest::FIELDS_V2[2] = { - {1, PROTO_FIELD_OFFSET(SwitchCommandRequest, key), ProtoFieldType::TYPE_FIXED32, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(SwitchCommandRequest, state), ProtoFieldType::TYPE_BOOL, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(SwitchCommandRequest, key), ProtoFieldType::TYPE_FIXED32, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(SwitchCommandRequest, state), ProtoFieldType::TYPE_BOOL, false, 1, {}}}; #endif #ifdef USE_TEXT_SENSOR const FieldMeta ListEntitiesTextSensorResponse::FIELDS[9] = { @@ -1992,16 +2047,20 @@ const FieldMeta ListEntitiesTextSensorResponse::FIELDS[9] = { 1, {.decode_varint = &decode_uint32_field}}}; const FieldMetaV2 ListEntitiesTextSensorResponse::FIELDS_V2[9] = { - {1, PROTO_FIELD_OFFSET(ListEntitiesTextSensorResponse, object_id), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(ListEntitiesTextSensorResponse, key), ProtoFieldType::TYPE_FIXED32, false, 1, 0}, - {3, PROTO_FIELD_OFFSET(ListEntitiesTextSensorResponse, name), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {4, PROTO_FIELD_OFFSET(ListEntitiesTextSensorResponse, unique_id), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {5, PROTO_FIELD_OFFSET(ListEntitiesTextSensorResponse, icon), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {6, PROTO_FIELD_OFFSET(ListEntitiesTextSensorResponse, disabled_by_default), ProtoFieldType::TYPE_BOOL, false, 1, - 0}, - {7, PROTO_FIELD_OFFSET(ListEntitiesTextSensorResponse, entity_category), ProtoFieldType::TYPE_ENUM, false, 1, 0}, - {8, PROTO_FIELD_OFFSET(ListEntitiesTextSensorResponse, device_class), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {9, PROTO_FIELD_OFFSET(ListEntitiesTextSensorResponse, device_id), ProtoFieldType::TYPE_UINT32, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(ListEntitiesTextSensorResponse, object_id), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(ListEntitiesTextSensorResponse, key), ProtoFieldType::TYPE_FIXED32, false, 1, {}}, + {3, PROTO_FIELD_OFFSET(ListEntitiesTextSensorResponse, name), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {4, PROTO_FIELD_OFFSET(ListEntitiesTextSensorResponse, unique_id), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {5, PROTO_FIELD_OFFSET(ListEntitiesTextSensorResponse, icon), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {6, + PROTO_FIELD_OFFSET(ListEntitiesTextSensorResponse, disabled_by_default), + ProtoFieldType::TYPE_BOOL, + false, + 1, + {}}, + {7, PROTO_FIELD_OFFSET(ListEntitiesTextSensorResponse, entity_category), ProtoFieldType::TYPE_ENUM, false, 1, {}}, + {8, PROTO_FIELD_OFFSET(ListEntitiesTextSensorResponse, device_class), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {9, PROTO_FIELD_OFFSET(ListEntitiesTextSensorResponse, device_id), ProtoFieldType::TYPE_UINT32, false, 1, {}}}; const FieldMeta TextSensorStateResponse::FIELDS[4] = {{1, PROTO_FIELD_OFFSET(TextSensorStateResponse, key), &encode_fixed32_field, @@ -2035,10 +2094,10 @@ const FieldMeta TextSensorStateResponse::FIELDS[4] = {{1, 1, {.decode_varint = &decode_uint32_field}}}; const FieldMetaV2 TextSensorStateResponse::FIELDS_V2[4] = { - {1, PROTO_FIELD_OFFSET(TextSensorStateResponse, key), ProtoFieldType::TYPE_FIXED32, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(TextSensorStateResponse, state), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {3, PROTO_FIELD_OFFSET(TextSensorStateResponse, missing_state), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {4, PROTO_FIELD_OFFSET(TextSensorStateResponse, device_id), ProtoFieldType::TYPE_UINT32, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(TextSensorStateResponse, key), ProtoFieldType::TYPE_FIXED32, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(TextSensorStateResponse, state), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {3, PROTO_FIELD_OFFSET(TextSensorStateResponse, missing_state), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {4, PROTO_FIELD_OFFSET(TextSensorStateResponse, device_id), ProtoFieldType::TYPE_UINT32, false, 1, {}}}; #endif const FieldMeta SubscribeLogsRequest::FIELDS[2] = {{1, PROTO_FIELD_OFFSET(SubscribeLogsRequest, level), @@ -2057,8 +2116,8 @@ const FieldMeta SubscribeLogsRequest::FIELDS[2] = {{1, 1, {.decode_varint = &decode_bool_field}}}; const FieldMetaV2 SubscribeLogsRequest::FIELDS_V2[2] = { - {1, PROTO_FIELD_OFFSET(SubscribeLogsRequest, level), ProtoFieldType::TYPE_ENUM, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(SubscribeLogsRequest, dump_config), ProtoFieldType::TYPE_BOOL, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(SubscribeLogsRequest, level), ProtoFieldType::TYPE_ENUM, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(SubscribeLogsRequest, dump_config), ProtoFieldType::TYPE_BOOL, false, 1, {}}}; const FieldMeta SubscribeLogsResponse::FIELDS[3] = {{1, PROTO_FIELD_OFFSET(SubscribeLogsResponse, level), &encode_enum_field, @@ -2084,9 +2143,9 @@ const FieldMeta SubscribeLogsResponse::FIELDS[3] = {{1, 1, {.decode_varint = &decode_bool_field}}}; const FieldMetaV2 SubscribeLogsResponse::FIELDS_V2[3] = { - {1, PROTO_FIELD_OFFSET(SubscribeLogsResponse, level), ProtoFieldType::TYPE_ENUM, false, 1, 0}, - {3, PROTO_FIELD_OFFSET(SubscribeLogsResponse, message), ProtoFieldType::TYPE_BYTES, false, 1, 0}, - {4, PROTO_FIELD_OFFSET(SubscribeLogsResponse, send_failed), ProtoFieldType::TYPE_BOOL, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(SubscribeLogsResponse, level), ProtoFieldType::TYPE_ENUM, false, 1, {}}, + {3, PROTO_FIELD_OFFSET(SubscribeLogsResponse, message), ProtoFieldType::TYPE_BYTES, false, 1, {}}, + {4, PROTO_FIELD_OFFSET(SubscribeLogsResponse, send_failed), ProtoFieldType::TYPE_BOOL, false, 1, {}}}; #ifdef USE_API_NOISE const FieldMeta NoiseEncryptionSetKeyRequest::FIELDS[1] = {{1, PROTO_FIELD_OFFSET(NoiseEncryptionSetKeyRequest, key), @@ -2097,7 +2156,7 @@ const FieldMeta NoiseEncryptionSetKeyRequest::FIELDS[1] = {{1, 1, {.decode_length = &decode_bytes_field}}}; const FieldMetaV2 NoiseEncryptionSetKeyRequest::FIELDS_V2[1] = { - {1, PROTO_FIELD_OFFSET(NoiseEncryptionSetKeyRequest, key), ProtoFieldType::TYPE_BYTES, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(NoiseEncryptionSetKeyRequest, key), ProtoFieldType::TYPE_BYTES, false, 1, {}}}; const FieldMeta NoiseEncryptionSetKeyResponse::FIELDS[1] = {{1, PROTO_FIELD_OFFSET(NoiseEncryptionSetKeyResponse, success), &encode_bool_field, @@ -2107,7 +2166,7 @@ const FieldMeta NoiseEncryptionSetKeyResponse::FIELDS[1] = {{1, 1, {.decode_varint = &decode_bool_field}}}; const FieldMetaV2 NoiseEncryptionSetKeyResponse::FIELDS_V2[1] = { - {1, PROTO_FIELD_OFFSET(NoiseEncryptionSetKeyResponse, success), ProtoFieldType::TYPE_BOOL, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(NoiseEncryptionSetKeyResponse, success), ProtoFieldType::TYPE_BOOL, false, 1, {}}}; #endif const FieldMeta HomeassistantServiceMap::FIELDS[2] = {{1, PROTO_FIELD_OFFSET(HomeassistantServiceMap, key), @@ -2126,8 +2185,8 @@ const FieldMeta HomeassistantServiceMap::FIELDS[2] = {{1, 1, {.decode_length = &decode_string_field}}}; const FieldMetaV2 HomeassistantServiceMap::FIELDS_V2[2] = { - {1, PROTO_FIELD_OFFSET(HomeassistantServiceMap, key), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(HomeassistantServiceMap, value), ProtoFieldType::TYPE_STRING, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(HomeassistantServiceMap, key), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(HomeassistantServiceMap, value), ProtoFieldType::TYPE_STRING, false, 1, {}}}; const FieldMeta HomeassistantServiceResponse::FIELDS[2] = {{1, PROTO_FIELD_OFFSET(HomeassistantServiceResponse, service), &encode_string_field, @@ -2167,12 +2226,30 @@ const RepeatedFieldMeta HomeassistantServiceResponse::REPEATED_FIELDS[3] = { 2, {.decode_length = &decode_repeated_message_field}}}; const FieldMetaV2 HomeassistantServiceResponse::FIELDS_V2[2] = { - {1, PROTO_FIELD_OFFSET(HomeassistantServiceResponse, service), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {5, PROTO_FIELD_OFFSET(HomeassistantServiceResponse, is_event), ProtoFieldType::TYPE_BOOL, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(HomeassistantServiceResponse, service), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {5, PROTO_FIELD_OFFSET(HomeassistantServiceResponse, is_event), ProtoFieldType::TYPE_BOOL, false, 1, {}}}; const RepeatedFieldMetaV2 HomeassistantServiceResponse::REPEATED_FIELDS_V2[3] = { - {2, PROTO_FIELD_OFFSET(HomeassistantServiceResponse, data), ProtoFieldType::TYPE_MESSAGE, 1, 39}, - {3, PROTO_FIELD_OFFSET(HomeassistantServiceResponse, data_template), ProtoFieldType::TYPE_MESSAGE, 1, 39}, - {4, PROTO_FIELD_OFFSET(HomeassistantServiceResponse, variables), ProtoFieldType::TYPE_MESSAGE, 1, 39}}; + {2, + PROTO_FIELD_OFFSET(HomeassistantServiceResponse, data), + ProtoFieldType::TYPE_MESSAGE, + 1, + {.message = {&encode_repeated_message_field, + &size_repeated_message_field, + &decode_repeated_message_field}}}, + {3, + PROTO_FIELD_OFFSET(HomeassistantServiceResponse, data_template), + ProtoFieldType::TYPE_MESSAGE, + 1, + {.message = {&encode_repeated_message_field, + &size_repeated_message_field, + &decode_repeated_message_field}}}, + {4, + PROTO_FIELD_OFFSET(HomeassistantServiceResponse, variables), + ProtoFieldType::TYPE_MESSAGE, + 1, + {.message = {&encode_repeated_message_field, + &size_repeated_message_field, + &decode_repeated_message_field}}}}; const FieldMeta SubscribeHomeAssistantStateResponse::FIELDS[3] = { {1, PROTO_FIELD_OFFSET(SubscribeHomeAssistantStateResponse, entity_id), @@ -2199,9 +2276,9 @@ const FieldMeta SubscribeHomeAssistantStateResponse::FIELDS[3] = { 1, {.decode_varint = &decode_bool_field}}}; const FieldMetaV2 SubscribeHomeAssistantStateResponse::FIELDS_V2[3] = { - {1, PROTO_FIELD_OFFSET(SubscribeHomeAssistantStateResponse, entity_id), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(SubscribeHomeAssistantStateResponse, attribute), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {3, PROTO_FIELD_OFFSET(SubscribeHomeAssistantStateResponse, once), ProtoFieldType::TYPE_BOOL, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(SubscribeHomeAssistantStateResponse, entity_id), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(SubscribeHomeAssistantStateResponse, attribute), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {3, PROTO_FIELD_OFFSET(SubscribeHomeAssistantStateResponse, once), ProtoFieldType::TYPE_BOOL, false, 1, {}}}; const FieldMeta HomeAssistantStateResponse::FIELDS[3] = {{1, PROTO_FIELD_OFFSET(HomeAssistantStateResponse, entity_id), &encode_string_field, @@ -2227,9 +2304,9 @@ const FieldMeta HomeAssistantStateResponse::FIELDS[3] = {{1, 1, {.decode_length = &decode_string_field}}}; const FieldMetaV2 HomeAssistantStateResponse::FIELDS_V2[3] = { - {1, PROTO_FIELD_OFFSET(HomeAssistantStateResponse, entity_id), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(HomeAssistantStateResponse, state), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {3, PROTO_FIELD_OFFSET(HomeAssistantStateResponse, attribute), ProtoFieldType::TYPE_STRING, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(HomeAssistantStateResponse, entity_id), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(HomeAssistantStateResponse, state), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {3, PROTO_FIELD_OFFSET(HomeAssistantStateResponse, attribute), ProtoFieldType::TYPE_STRING, false, 1, {}}}; const FieldMeta GetTimeResponse::FIELDS[1] = {{1, PROTO_FIELD_OFFSET(GetTimeResponse, epoch_seconds), &encode_fixed32_field, @@ -2239,7 +2316,7 @@ const FieldMeta GetTimeResponse::FIELDS[1] = {{1, 1, {.decode_32bit = &decode_fixed32_field}}}; const FieldMetaV2 GetTimeResponse::FIELDS_V2[1] = { - {1, PROTO_FIELD_OFFSET(GetTimeResponse, epoch_seconds), ProtoFieldType::TYPE_FIXED32, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(GetTimeResponse, epoch_seconds), ProtoFieldType::TYPE_FIXED32, false, 1, {}}}; const FieldMeta ListEntitiesServicesArgument::FIELDS[2] = { {1, PROTO_FIELD_OFFSET(ListEntitiesServicesArgument, name), @@ -2258,8 +2335,8 @@ const FieldMeta ListEntitiesServicesArgument::FIELDS[2] = { 1, {.decode_varint = &decode_enum_field}}}; const FieldMetaV2 ListEntitiesServicesArgument::FIELDS_V2[2] = { - {1, PROTO_FIELD_OFFSET(ListEntitiesServicesArgument, name), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(ListEntitiesServicesArgument, type), ProtoFieldType::TYPE_ENUM, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(ListEntitiesServicesArgument, name), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(ListEntitiesServicesArgument, type), ProtoFieldType::TYPE_ENUM, false, 1, {}}}; const FieldMeta ListEntitiesServicesResponse::FIELDS[2] = {{1, PROTO_FIELD_OFFSET(ListEntitiesServicesResponse, name), &encode_string_field, @@ -2285,10 +2362,16 @@ const RepeatedFieldMeta ListEntitiesServicesResponse::REPEATED_FIELDS[1] = { 2, {.decode_length = &decode_repeated_message_field}}}; const FieldMetaV2 ListEntitiesServicesResponse::FIELDS_V2[2] = { - {1, PROTO_FIELD_OFFSET(ListEntitiesServicesResponse, name), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(ListEntitiesServicesResponse, key), ProtoFieldType::TYPE_FIXED32, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(ListEntitiesServicesResponse, name), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(ListEntitiesServicesResponse, key), ProtoFieldType::TYPE_FIXED32, false, 1, {}}}; const RepeatedFieldMetaV2 ListEntitiesServicesResponse::REPEATED_FIELDS_V2[1] = { - {3, PROTO_FIELD_OFFSET(ListEntitiesServicesResponse, args), ProtoFieldType::TYPE_MESSAGE, 1, 46}}; + {3, + PROTO_FIELD_OFFSET(ListEntitiesServicesResponse, args), + ProtoFieldType::TYPE_MESSAGE, + 1, + {.message = {&encode_repeated_message_field, + &size_repeated_message_field, + &decode_repeated_message_field}}}}; const FieldMeta ExecuteServiceArgument::FIELDS[5] = {{1, PROTO_FIELD_OFFSET(ExecuteServiceArgument, bool_), &encode_bool_field, @@ -2359,16 +2442,16 @@ const RepeatedFieldMeta ExecuteServiceArgument::REPEATED_FIELDS[4] = { 2, {.decode_length = &decode_repeated_string_field}}}; const FieldMetaV2 ExecuteServiceArgument::FIELDS_V2[5] = { - {1, PROTO_FIELD_OFFSET(ExecuteServiceArgument, bool_), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(ExecuteServiceArgument, legacy_int), ProtoFieldType::TYPE_INT32, false, 1, 0}, - {3, PROTO_FIELD_OFFSET(ExecuteServiceArgument, float_), ProtoFieldType::TYPE_FLOAT, false, 1, 0}, - {4, PROTO_FIELD_OFFSET(ExecuteServiceArgument, string_), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {5, PROTO_FIELD_OFFSET(ExecuteServiceArgument, int_), ProtoFieldType::TYPE_SINT32, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(ExecuteServiceArgument, bool_), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(ExecuteServiceArgument, legacy_int), ProtoFieldType::TYPE_INT32, false, 1, {}}, + {3, PROTO_FIELD_OFFSET(ExecuteServiceArgument, float_), ProtoFieldType::TYPE_FLOAT, false, 1, {}}, + {4, PROTO_FIELD_OFFSET(ExecuteServiceArgument, string_), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {5, PROTO_FIELD_OFFSET(ExecuteServiceArgument, int_), ProtoFieldType::TYPE_SINT32, false, 1, {}}}; const RepeatedFieldMetaV2 ExecuteServiceArgument::REPEATED_FIELDS_V2[4] = { - {6, PROTO_FIELD_OFFSET(ExecuteServiceArgument, bool_array), ProtoFieldType::TYPE_BOOL, 1, 0}, - {7, PROTO_FIELD_OFFSET(ExecuteServiceArgument, int_array), ProtoFieldType::TYPE_SINT32, 1, 0}, - {8, PROTO_FIELD_OFFSET(ExecuteServiceArgument, float_array), ProtoFieldType::TYPE_FLOAT, 1, 0}, - {9, PROTO_FIELD_OFFSET(ExecuteServiceArgument, string_array), ProtoFieldType::TYPE_STRING, 1, 0}}; + {6, PROTO_FIELD_OFFSET(ExecuteServiceArgument, bool_array), ProtoFieldType::TYPE_BOOL, 1, {}}, + {7, PROTO_FIELD_OFFSET(ExecuteServiceArgument, int_array), ProtoFieldType::TYPE_SINT32, 1, {}}, + {8, PROTO_FIELD_OFFSET(ExecuteServiceArgument, float_array), ProtoFieldType::TYPE_FLOAT, 1, {}}, + {9, PROTO_FIELD_OFFSET(ExecuteServiceArgument, string_array), ProtoFieldType::TYPE_STRING, 1, {}}}; const FieldMeta ExecuteServiceRequest::FIELDS[1] = {{1, PROTO_FIELD_OFFSET(ExecuteServiceRequest, key), &encode_fixed32_field, @@ -2386,9 +2469,15 @@ const RepeatedFieldMeta ExecuteServiceRequest::REPEATED_FIELDS[1] = { 2, {.decode_length = &decode_repeated_message_field}}}; const FieldMetaV2 ExecuteServiceRequest::FIELDS_V2[1] = { - {1, PROTO_FIELD_OFFSET(ExecuteServiceRequest, key), ProtoFieldType::TYPE_FIXED32, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(ExecuteServiceRequest, key), ProtoFieldType::TYPE_FIXED32, false, 1, {}}}; const RepeatedFieldMetaV2 ExecuteServiceRequest::REPEATED_FIELDS_V2[1] = { - {2, PROTO_FIELD_OFFSET(ExecuteServiceRequest, args), ProtoFieldType::TYPE_MESSAGE, 1, 48}}; + {2, + PROTO_FIELD_OFFSET(ExecuteServiceRequest, args), + ProtoFieldType::TYPE_MESSAGE, + 1, + {.message = {&encode_repeated_message_field, + &size_repeated_message_field, + &decode_repeated_message_field}}}}; #ifdef USE_CAMERA const FieldMeta ListEntitiesCameraResponse::FIELDS[8] = { {1, @@ -2456,14 +2545,14 @@ const FieldMeta ListEntitiesCameraResponse::FIELDS[8] = { 1, {.decode_varint = &decode_uint32_field}}}; const FieldMetaV2 ListEntitiesCameraResponse::FIELDS_V2[8] = { - {1, PROTO_FIELD_OFFSET(ListEntitiesCameraResponse, object_id), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(ListEntitiesCameraResponse, key), ProtoFieldType::TYPE_FIXED32, false, 1, 0}, - {3, PROTO_FIELD_OFFSET(ListEntitiesCameraResponse, name), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {4, PROTO_FIELD_OFFSET(ListEntitiesCameraResponse, unique_id), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {5, PROTO_FIELD_OFFSET(ListEntitiesCameraResponse, disabled_by_default), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {6, PROTO_FIELD_OFFSET(ListEntitiesCameraResponse, icon), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {7, PROTO_FIELD_OFFSET(ListEntitiesCameraResponse, entity_category), ProtoFieldType::TYPE_ENUM, false, 1, 0}, - {8, PROTO_FIELD_OFFSET(ListEntitiesCameraResponse, device_id), ProtoFieldType::TYPE_UINT32, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(ListEntitiesCameraResponse, object_id), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(ListEntitiesCameraResponse, key), ProtoFieldType::TYPE_FIXED32, false, 1, {}}, + {3, PROTO_FIELD_OFFSET(ListEntitiesCameraResponse, name), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {4, PROTO_FIELD_OFFSET(ListEntitiesCameraResponse, unique_id), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {5, PROTO_FIELD_OFFSET(ListEntitiesCameraResponse, disabled_by_default), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {6, PROTO_FIELD_OFFSET(ListEntitiesCameraResponse, icon), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {7, PROTO_FIELD_OFFSET(ListEntitiesCameraResponse, entity_category), ProtoFieldType::TYPE_ENUM, false, 1, {}}, + {8, PROTO_FIELD_OFFSET(ListEntitiesCameraResponse, device_id), ProtoFieldType::TYPE_UINT32, false, 1, {}}}; const FieldMeta CameraImageResponse::FIELDS[3] = {{1, PROTO_FIELD_OFFSET(CameraImageResponse, key), &encode_fixed32_field, @@ -2489,9 +2578,9 @@ const FieldMeta CameraImageResponse::FIELDS[3] = {{1, 1, {.decode_varint = &decode_bool_field}}}; const FieldMetaV2 CameraImageResponse::FIELDS_V2[3] = { - {1, PROTO_FIELD_OFFSET(CameraImageResponse, key), ProtoFieldType::TYPE_FIXED32, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(CameraImageResponse, data), ProtoFieldType::TYPE_BYTES, false, 1, 0}, - {3, PROTO_FIELD_OFFSET(CameraImageResponse, done), ProtoFieldType::TYPE_BOOL, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(CameraImageResponse, key), ProtoFieldType::TYPE_FIXED32, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(CameraImageResponse, data), ProtoFieldType::TYPE_BYTES, false, 1, {}}, + {3, PROTO_FIELD_OFFSET(CameraImageResponse, done), ProtoFieldType::TYPE_BOOL, false, 1, {}}}; const FieldMeta CameraImageRequest::FIELDS[2] = {{1, PROTO_FIELD_OFFSET(CameraImageRequest, single), &encode_bool_field, @@ -2509,8 +2598,8 @@ const FieldMeta CameraImageRequest::FIELDS[2] = {{1, 1, {.decode_varint = &decode_bool_field}}}; const FieldMetaV2 CameraImageRequest::FIELDS_V2[2] = { - {1, PROTO_FIELD_OFFSET(CameraImageRequest, single), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(CameraImageRequest, stream), ProtoFieldType::TYPE_BOOL, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(CameraImageRequest, single), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(CameraImageRequest, stream), ProtoFieldType::TYPE_BOOL, false, 1, {}}}; #endif #ifdef USE_CLIMATE const FieldMeta ListEntitiesClimateResponse::FIELDS[20] = { @@ -2718,42 +2807,96 @@ const RepeatedFieldMeta ListEntitiesClimateResponse::REPEATED_FIELDS[6] = { 2, {.decode_length = &decode_repeated_string_field}}}; const FieldMetaV2 ListEntitiesClimateResponse::FIELDS_V2[20] = { - {1, PROTO_FIELD_OFFSET(ListEntitiesClimateResponse, object_id), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(ListEntitiesClimateResponse, key), ProtoFieldType::TYPE_FIXED32, false, 1, 0}, - {3, PROTO_FIELD_OFFSET(ListEntitiesClimateResponse, name), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {4, PROTO_FIELD_OFFSET(ListEntitiesClimateResponse, unique_id), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {5, PROTO_FIELD_OFFSET(ListEntitiesClimateResponse, supports_current_temperature), ProtoFieldType::TYPE_BOOL, false, - 1, 0}, - {6, PROTO_FIELD_OFFSET(ListEntitiesClimateResponse, supports_two_point_target_temperature), - ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {8, PROTO_FIELD_OFFSET(ListEntitiesClimateResponse, visual_min_temperature), ProtoFieldType::TYPE_FLOAT, false, 1, - 0}, - {9, PROTO_FIELD_OFFSET(ListEntitiesClimateResponse, visual_max_temperature), ProtoFieldType::TYPE_FLOAT, false, 1, - 0}, - {10, PROTO_FIELD_OFFSET(ListEntitiesClimateResponse, visual_target_temperature_step), ProtoFieldType::TYPE_FLOAT, - false, 1, 0}, - {11, PROTO_FIELD_OFFSET(ListEntitiesClimateResponse, legacy_supports_away), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {12, PROTO_FIELD_OFFSET(ListEntitiesClimateResponse, supports_action), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {18, PROTO_FIELD_OFFSET(ListEntitiesClimateResponse, disabled_by_default), ProtoFieldType::TYPE_BOOL, false, 2, 0}, - {19, PROTO_FIELD_OFFSET(ListEntitiesClimateResponse, icon), ProtoFieldType::TYPE_STRING, false, 2, 0}, - {20, PROTO_FIELD_OFFSET(ListEntitiesClimateResponse, entity_category), ProtoFieldType::TYPE_ENUM, false, 2, 0}, - {21, PROTO_FIELD_OFFSET(ListEntitiesClimateResponse, visual_current_temperature_step), ProtoFieldType::TYPE_FLOAT, - false, 2, 0}, - {22, PROTO_FIELD_OFFSET(ListEntitiesClimateResponse, supports_current_humidity), ProtoFieldType::TYPE_BOOL, false, - 2, 0}, - {23, PROTO_FIELD_OFFSET(ListEntitiesClimateResponse, supports_target_humidity), ProtoFieldType::TYPE_BOOL, false, 2, - 0}, - {24, PROTO_FIELD_OFFSET(ListEntitiesClimateResponse, visual_min_humidity), ProtoFieldType::TYPE_FLOAT, false, 2, 0}, - {25, PROTO_FIELD_OFFSET(ListEntitiesClimateResponse, visual_max_humidity), ProtoFieldType::TYPE_FLOAT, false, 2, 0}, - {26, PROTO_FIELD_OFFSET(ListEntitiesClimateResponse, device_id), ProtoFieldType::TYPE_UINT32, false, 2, 0}}; + {1, PROTO_FIELD_OFFSET(ListEntitiesClimateResponse, object_id), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(ListEntitiesClimateResponse, key), ProtoFieldType::TYPE_FIXED32, false, 1, {}}, + {3, PROTO_FIELD_OFFSET(ListEntitiesClimateResponse, name), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {4, PROTO_FIELD_OFFSET(ListEntitiesClimateResponse, unique_id), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {5, + PROTO_FIELD_OFFSET(ListEntitiesClimateResponse, supports_current_temperature), + ProtoFieldType::TYPE_BOOL, + false, + 1, + {}}, + {6, + PROTO_FIELD_OFFSET(ListEntitiesClimateResponse, supports_two_point_target_temperature), + ProtoFieldType::TYPE_BOOL, + false, + 1, + {}}, + {8, + PROTO_FIELD_OFFSET(ListEntitiesClimateResponse, visual_min_temperature), + ProtoFieldType::TYPE_FLOAT, + false, + 1, + {}}, + {9, + PROTO_FIELD_OFFSET(ListEntitiesClimateResponse, visual_max_temperature), + ProtoFieldType::TYPE_FLOAT, + false, + 1, + {}}, + {10, + PROTO_FIELD_OFFSET(ListEntitiesClimateResponse, visual_target_temperature_step), + ProtoFieldType::TYPE_FLOAT, + false, + 1, + {}}, + {11, + PROTO_FIELD_OFFSET(ListEntitiesClimateResponse, legacy_supports_away), + ProtoFieldType::TYPE_BOOL, + false, + 1, + {}}, + {12, PROTO_FIELD_OFFSET(ListEntitiesClimateResponse, supports_action), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {18, PROTO_FIELD_OFFSET(ListEntitiesClimateResponse, disabled_by_default), ProtoFieldType::TYPE_BOOL, false, 2, {}}, + {19, PROTO_FIELD_OFFSET(ListEntitiesClimateResponse, icon), ProtoFieldType::TYPE_STRING, false, 2, {}}, + {20, PROTO_FIELD_OFFSET(ListEntitiesClimateResponse, entity_category), ProtoFieldType::TYPE_ENUM, false, 2, {}}, + {21, + PROTO_FIELD_OFFSET(ListEntitiesClimateResponse, visual_current_temperature_step), + ProtoFieldType::TYPE_FLOAT, + false, + 2, + {}}, + {22, + PROTO_FIELD_OFFSET(ListEntitiesClimateResponse, supports_current_humidity), + ProtoFieldType::TYPE_BOOL, + false, + 2, + {}}, + {23, + PROTO_FIELD_OFFSET(ListEntitiesClimateResponse, supports_target_humidity), + ProtoFieldType::TYPE_BOOL, + false, + 2, + {}}, + {24, + PROTO_FIELD_OFFSET(ListEntitiesClimateResponse, visual_min_humidity), + ProtoFieldType::TYPE_FLOAT, + false, + 2, + {}}, + {25, + PROTO_FIELD_OFFSET(ListEntitiesClimateResponse, visual_max_humidity), + ProtoFieldType::TYPE_FLOAT, + false, + 2, + {}}, + {26, PROTO_FIELD_OFFSET(ListEntitiesClimateResponse, device_id), ProtoFieldType::TYPE_UINT32, false, 2, {}}}; const RepeatedFieldMetaV2 ListEntitiesClimateResponse::REPEATED_FIELDS_V2[6] = { - {7, PROTO_FIELD_OFFSET(ListEntitiesClimateResponse, supported_modes), ProtoFieldType::TYPE_ENUM, 1, 0}, - {13, PROTO_FIELD_OFFSET(ListEntitiesClimateResponse, supported_fan_modes), ProtoFieldType::TYPE_ENUM, 1, 0}, - {14, PROTO_FIELD_OFFSET(ListEntitiesClimateResponse, supported_swing_modes), ProtoFieldType::TYPE_ENUM, 1, 0}, - {15, PROTO_FIELD_OFFSET(ListEntitiesClimateResponse, supported_custom_fan_modes), ProtoFieldType::TYPE_STRING, 1, - 0}, - {16, PROTO_FIELD_OFFSET(ListEntitiesClimateResponse, supported_presets), ProtoFieldType::TYPE_ENUM, 2, 0}, - {17, PROTO_FIELD_OFFSET(ListEntitiesClimateResponse, supported_custom_presets), ProtoFieldType::TYPE_STRING, 2, 0}}; + {7, PROTO_FIELD_OFFSET(ListEntitiesClimateResponse, supported_modes), ProtoFieldType::TYPE_ENUM, 1, {}}, + {13, PROTO_FIELD_OFFSET(ListEntitiesClimateResponse, supported_fan_modes), ProtoFieldType::TYPE_ENUM, 1, {}}, + {14, PROTO_FIELD_OFFSET(ListEntitiesClimateResponse, supported_swing_modes), ProtoFieldType::TYPE_ENUM, 1, {}}, + {15, + PROTO_FIELD_OFFSET(ListEntitiesClimateResponse, supported_custom_fan_modes), + ProtoFieldType::TYPE_STRING, + 1, + {}}, + {16, PROTO_FIELD_OFFSET(ListEntitiesClimateResponse, supported_presets), ProtoFieldType::TYPE_ENUM, 2, {}}, + {17, + PROTO_FIELD_OFFSET(ListEntitiesClimateResponse, supported_custom_presets), + ProtoFieldType::TYPE_STRING, + 2, + {}}}; const FieldMeta ClimateStateResponse::FIELDS[16] = {{1, PROTO_FIELD_OFFSET(ClimateStateResponse, key), &encode_fixed32_field, @@ -2883,22 +3026,22 @@ const FieldMeta ClimateStateResponse::FIELDS[16] = {{1, 2, {.decode_varint = &decode_uint32_field}}}; const FieldMetaV2 ClimateStateResponse::FIELDS_V2[16] = { - {1, PROTO_FIELD_OFFSET(ClimateStateResponse, key), ProtoFieldType::TYPE_FIXED32, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(ClimateStateResponse, mode), ProtoFieldType::TYPE_ENUM, false, 1, 0}, - {3, PROTO_FIELD_OFFSET(ClimateStateResponse, current_temperature), ProtoFieldType::TYPE_FLOAT, false, 1, 0}, - {4, PROTO_FIELD_OFFSET(ClimateStateResponse, target_temperature), ProtoFieldType::TYPE_FLOAT, false, 1, 0}, - {5, PROTO_FIELD_OFFSET(ClimateStateResponse, target_temperature_low), ProtoFieldType::TYPE_FLOAT, false, 1, 0}, - {6, PROTO_FIELD_OFFSET(ClimateStateResponse, target_temperature_high), ProtoFieldType::TYPE_FLOAT, false, 1, 0}, - {7, PROTO_FIELD_OFFSET(ClimateStateResponse, unused_legacy_away), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {8, PROTO_FIELD_OFFSET(ClimateStateResponse, action), ProtoFieldType::TYPE_ENUM, false, 1, 0}, - {9, PROTO_FIELD_OFFSET(ClimateStateResponse, fan_mode), ProtoFieldType::TYPE_ENUM, false, 1, 0}, - {10, PROTO_FIELD_OFFSET(ClimateStateResponse, swing_mode), ProtoFieldType::TYPE_ENUM, false, 1, 0}, - {11, PROTO_FIELD_OFFSET(ClimateStateResponse, custom_fan_mode), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {12, PROTO_FIELD_OFFSET(ClimateStateResponse, preset), ProtoFieldType::TYPE_ENUM, false, 1, 0}, - {13, PROTO_FIELD_OFFSET(ClimateStateResponse, custom_preset), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {14, PROTO_FIELD_OFFSET(ClimateStateResponse, current_humidity), ProtoFieldType::TYPE_FLOAT, false, 1, 0}, - {15, PROTO_FIELD_OFFSET(ClimateStateResponse, target_humidity), ProtoFieldType::TYPE_FLOAT, false, 1, 0}, - {16, PROTO_FIELD_OFFSET(ClimateStateResponse, device_id), ProtoFieldType::TYPE_UINT32, false, 2, 0}}; + {1, PROTO_FIELD_OFFSET(ClimateStateResponse, key), ProtoFieldType::TYPE_FIXED32, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(ClimateStateResponse, mode), ProtoFieldType::TYPE_ENUM, false, 1, {}}, + {3, PROTO_FIELD_OFFSET(ClimateStateResponse, current_temperature), ProtoFieldType::TYPE_FLOAT, false, 1, {}}, + {4, PROTO_FIELD_OFFSET(ClimateStateResponse, target_temperature), ProtoFieldType::TYPE_FLOAT, false, 1, {}}, + {5, PROTO_FIELD_OFFSET(ClimateStateResponse, target_temperature_low), ProtoFieldType::TYPE_FLOAT, false, 1, {}}, + {6, PROTO_FIELD_OFFSET(ClimateStateResponse, target_temperature_high), ProtoFieldType::TYPE_FLOAT, false, 1, {}}, + {7, PROTO_FIELD_OFFSET(ClimateStateResponse, unused_legacy_away), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {8, PROTO_FIELD_OFFSET(ClimateStateResponse, action), ProtoFieldType::TYPE_ENUM, false, 1, {}}, + {9, PROTO_FIELD_OFFSET(ClimateStateResponse, fan_mode), ProtoFieldType::TYPE_ENUM, false, 1, {}}, + {10, PROTO_FIELD_OFFSET(ClimateStateResponse, swing_mode), ProtoFieldType::TYPE_ENUM, false, 1, {}}, + {11, PROTO_FIELD_OFFSET(ClimateStateResponse, custom_fan_mode), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {12, PROTO_FIELD_OFFSET(ClimateStateResponse, preset), ProtoFieldType::TYPE_ENUM, false, 1, {}}, + {13, PROTO_FIELD_OFFSET(ClimateStateResponse, custom_preset), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {14, PROTO_FIELD_OFFSET(ClimateStateResponse, current_humidity), ProtoFieldType::TYPE_FLOAT, false, 1, {}}, + {15, PROTO_FIELD_OFFSET(ClimateStateResponse, target_humidity), ProtoFieldType::TYPE_FLOAT, false, 1, {}}, + {16, PROTO_FIELD_OFFSET(ClimateStateResponse, device_id), ProtoFieldType::TYPE_UINT32, false, 2, {}}}; const FieldMeta ClimateCommandRequest::FIELDS[23] = { {1, PROTO_FIELD_OFFSET(ClimateCommandRequest, key), @@ -3085,29 +3228,34 @@ const FieldMeta ClimateCommandRequest::FIELDS[23] = { 2, {.decode_32bit = &decode_float_field}}}; const FieldMetaV2 ClimateCommandRequest::FIELDS_V2[23] = { - {1, PROTO_FIELD_OFFSET(ClimateCommandRequest, key), ProtoFieldType::TYPE_FIXED32, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(ClimateCommandRequest, has_mode), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {3, PROTO_FIELD_OFFSET(ClimateCommandRequest, mode), ProtoFieldType::TYPE_ENUM, false, 1, 0}, - {4, PROTO_FIELD_OFFSET(ClimateCommandRequest, has_target_temperature), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {5, PROTO_FIELD_OFFSET(ClimateCommandRequest, target_temperature), ProtoFieldType::TYPE_FLOAT, false, 1, 0}, - {6, PROTO_FIELD_OFFSET(ClimateCommandRequest, has_target_temperature_low), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {7, PROTO_FIELD_OFFSET(ClimateCommandRequest, target_temperature_low), ProtoFieldType::TYPE_FLOAT, false, 1, 0}, - {8, PROTO_FIELD_OFFSET(ClimateCommandRequest, has_target_temperature_high), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {9, PROTO_FIELD_OFFSET(ClimateCommandRequest, target_temperature_high), ProtoFieldType::TYPE_FLOAT, false, 1, 0}, - {10, PROTO_FIELD_OFFSET(ClimateCommandRequest, unused_has_legacy_away), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {11, PROTO_FIELD_OFFSET(ClimateCommandRequest, unused_legacy_away), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {12, PROTO_FIELD_OFFSET(ClimateCommandRequest, has_fan_mode), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {13, PROTO_FIELD_OFFSET(ClimateCommandRequest, fan_mode), ProtoFieldType::TYPE_ENUM, false, 1, 0}, - {14, PROTO_FIELD_OFFSET(ClimateCommandRequest, has_swing_mode), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {15, PROTO_FIELD_OFFSET(ClimateCommandRequest, swing_mode), ProtoFieldType::TYPE_ENUM, false, 1, 0}, - {16, PROTO_FIELD_OFFSET(ClimateCommandRequest, has_custom_fan_mode), ProtoFieldType::TYPE_BOOL, false, 2, 0}, - {17, PROTO_FIELD_OFFSET(ClimateCommandRequest, custom_fan_mode), ProtoFieldType::TYPE_STRING, false, 2, 0}, - {18, PROTO_FIELD_OFFSET(ClimateCommandRequest, has_preset), ProtoFieldType::TYPE_BOOL, false, 2, 0}, - {19, PROTO_FIELD_OFFSET(ClimateCommandRequest, preset), ProtoFieldType::TYPE_ENUM, false, 2, 0}, - {20, PROTO_FIELD_OFFSET(ClimateCommandRequest, has_custom_preset), ProtoFieldType::TYPE_BOOL, false, 2, 0}, - {21, PROTO_FIELD_OFFSET(ClimateCommandRequest, custom_preset), ProtoFieldType::TYPE_STRING, false, 2, 0}, - {22, PROTO_FIELD_OFFSET(ClimateCommandRequest, has_target_humidity), ProtoFieldType::TYPE_BOOL, false, 2, 0}, - {23, PROTO_FIELD_OFFSET(ClimateCommandRequest, target_humidity), ProtoFieldType::TYPE_FLOAT, false, 2, 0}}; + {1, PROTO_FIELD_OFFSET(ClimateCommandRequest, key), ProtoFieldType::TYPE_FIXED32, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(ClimateCommandRequest, has_mode), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {3, PROTO_FIELD_OFFSET(ClimateCommandRequest, mode), ProtoFieldType::TYPE_ENUM, false, 1, {}}, + {4, PROTO_FIELD_OFFSET(ClimateCommandRequest, has_target_temperature), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {5, PROTO_FIELD_OFFSET(ClimateCommandRequest, target_temperature), ProtoFieldType::TYPE_FLOAT, false, 1, {}}, + {6, PROTO_FIELD_OFFSET(ClimateCommandRequest, has_target_temperature_low), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {7, PROTO_FIELD_OFFSET(ClimateCommandRequest, target_temperature_low), ProtoFieldType::TYPE_FLOAT, false, 1, {}}, + {8, + PROTO_FIELD_OFFSET(ClimateCommandRequest, has_target_temperature_high), + ProtoFieldType::TYPE_BOOL, + false, + 1, + {}}, + {9, PROTO_FIELD_OFFSET(ClimateCommandRequest, target_temperature_high), ProtoFieldType::TYPE_FLOAT, false, 1, {}}, + {10, PROTO_FIELD_OFFSET(ClimateCommandRequest, unused_has_legacy_away), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {11, PROTO_FIELD_OFFSET(ClimateCommandRequest, unused_legacy_away), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {12, PROTO_FIELD_OFFSET(ClimateCommandRequest, has_fan_mode), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {13, PROTO_FIELD_OFFSET(ClimateCommandRequest, fan_mode), ProtoFieldType::TYPE_ENUM, false, 1, {}}, + {14, PROTO_FIELD_OFFSET(ClimateCommandRequest, has_swing_mode), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {15, PROTO_FIELD_OFFSET(ClimateCommandRequest, swing_mode), ProtoFieldType::TYPE_ENUM, false, 1, {}}, + {16, PROTO_FIELD_OFFSET(ClimateCommandRequest, has_custom_fan_mode), ProtoFieldType::TYPE_BOOL, false, 2, {}}, + {17, PROTO_FIELD_OFFSET(ClimateCommandRequest, custom_fan_mode), ProtoFieldType::TYPE_STRING, false, 2, {}}, + {18, PROTO_FIELD_OFFSET(ClimateCommandRequest, has_preset), ProtoFieldType::TYPE_BOOL, false, 2, {}}, + {19, PROTO_FIELD_OFFSET(ClimateCommandRequest, preset), ProtoFieldType::TYPE_ENUM, false, 2, {}}, + {20, PROTO_FIELD_OFFSET(ClimateCommandRequest, has_custom_preset), ProtoFieldType::TYPE_BOOL, false, 2, {}}, + {21, PROTO_FIELD_OFFSET(ClimateCommandRequest, custom_preset), ProtoFieldType::TYPE_STRING, false, 2, {}}, + {22, PROTO_FIELD_OFFSET(ClimateCommandRequest, has_target_humidity), ProtoFieldType::TYPE_BOOL, false, 2, {}}, + {23, PROTO_FIELD_OFFSET(ClimateCommandRequest, target_humidity), ProtoFieldType::TYPE_FLOAT, false, 2, {}}}; #endif #ifdef USE_NUMBER const FieldMeta ListEntitiesNumberResponse::FIELDS[14] = { @@ -3224,20 +3372,25 @@ const FieldMeta ListEntitiesNumberResponse::FIELDS[14] = { 1, {.decode_varint = &decode_uint32_field}}}; const FieldMetaV2 ListEntitiesNumberResponse::FIELDS_V2[14] = { - {1, PROTO_FIELD_OFFSET(ListEntitiesNumberResponse, object_id), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(ListEntitiesNumberResponse, key), ProtoFieldType::TYPE_FIXED32, false, 1, 0}, - {3, PROTO_FIELD_OFFSET(ListEntitiesNumberResponse, name), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {4, PROTO_FIELD_OFFSET(ListEntitiesNumberResponse, unique_id), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {5, PROTO_FIELD_OFFSET(ListEntitiesNumberResponse, icon), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {6, PROTO_FIELD_OFFSET(ListEntitiesNumberResponse, min_value), ProtoFieldType::TYPE_FLOAT, false, 1, 0}, - {7, PROTO_FIELD_OFFSET(ListEntitiesNumberResponse, max_value), ProtoFieldType::TYPE_FLOAT, false, 1, 0}, - {8, PROTO_FIELD_OFFSET(ListEntitiesNumberResponse, step), ProtoFieldType::TYPE_FLOAT, false, 1, 0}, - {9, PROTO_FIELD_OFFSET(ListEntitiesNumberResponse, disabled_by_default), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {10, PROTO_FIELD_OFFSET(ListEntitiesNumberResponse, entity_category), ProtoFieldType::TYPE_ENUM, false, 1, 0}, - {11, PROTO_FIELD_OFFSET(ListEntitiesNumberResponse, unit_of_measurement), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {12, PROTO_FIELD_OFFSET(ListEntitiesNumberResponse, mode), ProtoFieldType::TYPE_ENUM, false, 1, 0}, - {13, PROTO_FIELD_OFFSET(ListEntitiesNumberResponse, device_class), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {14, PROTO_FIELD_OFFSET(ListEntitiesNumberResponse, device_id), ProtoFieldType::TYPE_UINT32, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(ListEntitiesNumberResponse, object_id), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(ListEntitiesNumberResponse, key), ProtoFieldType::TYPE_FIXED32, false, 1, {}}, + {3, PROTO_FIELD_OFFSET(ListEntitiesNumberResponse, name), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {4, PROTO_FIELD_OFFSET(ListEntitiesNumberResponse, unique_id), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {5, PROTO_FIELD_OFFSET(ListEntitiesNumberResponse, icon), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {6, PROTO_FIELD_OFFSET(ListEntitiesNumberResponse, min_value), ProtoFieldType::TYPE_FLOAT, false, 1, {}}, + {7, PROTO_FIELD_OFFSET(ListEntitiesNumberResponse, max_value), ProtoFieldType::TYPE_FLOAT, false, 1, {}}, + {8, PROTO_FIELD_OFFSET(ListEntitiesNumberResponse, step), ProtoFieldType::TYPE_FLOAT, false, 1, {}}, + {9, PROTO_FIELD_OFFSET(ListEntitiesNumberResponse, disabled_by_default), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {10, PROTO_FIELD_OFFSET(ListEntitiesNumberResponse, entity_category), ProtoFieldType::TYPE_ENUM, false, 1, {}}, + {11, + PROTO_FIELD_OFFSET(ListEntitiesNumberResponse, unit_of_measurement), + ProtoFieldType::TYPE_STRING, + false, + 1, + {}}, + {12, PROTO_FIELD_OFFSET(ListEntitiesNumberResponse, mode), ProtoFieldType::TYPE_ENUM, false, 1, {}}, + {13, PROTO_FIELD_OFFSET(ListEntitiesNumberResponse, device_class), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {14, PROTO_FIELD_OFFSET(ListEntitiesNumberResponse, device_id), ProtoFieldType::TYPE_UINT32, false, 1, {}}}; const FieldMeta NumberStateResponse::FIELDS[4] = {{1, PROTO_FIELD_OFFSET(NumberStateResponse, key), &encode_fixed32_field, @@ -3271,10 +3424,10 @@ const FieldMeta NumberStateResponse::FIELDS[4] = {{1, 1, {.decode_varint = &decode_uint32_field}}}; const FieldMetaV2 NumberStateResponse::FIELDS_V2[4] = { - {1, PROTO_FIELD_OFFSET(NumberStateResponse, key), ProtoFieldType::TYPE_FIXED32, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(NumberStateResponse, state), ProtoFieldType::TYPE_FLOAT, false, 1, 0}, - {3, PROTO_FIELD_OFFSET(NumberStateResponse, missing_state), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {4, PROTO_FIELD_OFFSET(NumberStateResponse, device_id), ProtoFieldType::TYPE_UINT32, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(NumberStateResponse, key), ProtoFieldType::TYPE_FIXED32, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(NumberStateResponse, state), ProtoFieldType::TYPE_FLOAT, false, 1, {}}, + {3, PROTO_FIELD_OFFSET(NumberStateResponse, missing_state), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {4, PROTO_FIELD_OFFSET(NumberStateResponse, device_id), ProtoFieldType::TYPE_UINT32, false, 1, {}}}; const FieldMeta NumberCommandRequest::FIELDS[2] = {{1, PROTO_FIELD_OFFSET(NumberCommandRequest, key), &encode_fixed32_field, @@ -3292,8 +3445,8 @@ const FieldMeta NumberCommandRequest::FIELDS[2] = {{1, 1, {.decode_32bit = &decode_float_field}}}; const FieldMetaV2 NumberCommandRequest::FIELDS_V2[2] = { - {1, PROTO_FIELD_OFFSET(NumberCommandRequest, key), ProtoFieldType::TYPE_FIXED32, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(NumberCommandRequest, state), ProtoFieldType::TYPE_FLOAT, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(NumberCommandRequest, key), ProtoFieldType::TYPE_FIXED32, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(NumberCommandRequest, state), ProtoFieldType::TYPE_FLOAT, false, 1, {}}}; #endif #ifdef USE_SELECT const FieldMeta ListEntitiesSelectResponse::FIELDS[8] = { @@ -3370,16 +3523,16 @@ const RepeatedFieldMeta ListEntitiesSelectResponse::REPEATED_FIELDS[1] = { 2, {.decode_length = &decode_repeated_string_field}}}; const FieldMetaV2 ListEntitiesSelectResponse::FIELDS_V2[8] = { - {1, PROTO_FIELD_OFFSET(ListEntitiesSelectResponse, object_id), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(ListEntitiesSelectResponse, key), ProtoFieldType::TYPE_FIXED32, false, 1, 0}, - {3, PROTO_FIELD_OFFSET(ListEntitiesSelectResponse, name), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {4, PROTO_FIELD_OFFSET(ListEntitiesSelectResponse, unique_id), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {5, PROTO_FIELD_OFFSET(ListEntitiesSelectResponse, icon), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {7, PROTO_FIELD_OFFSET(ListEntitiesSelectResponse, disabled_by_default), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {8, PROTO_FIELD_OFFSET(ListEntitiesSelectResponse, entity_category), ProtoFieldType::TYPE_ENUM, false, 1, 0}, - {9, PROTO_FIELD_OFFSET(ListEntitiesSelectResponse, device_id), ProtoFieldType::TYPE_UINT32, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(ListEntitiesSelectResponse, object_id), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(ListEntitiesSelectResponse, key), ProtoFieldType::TYPE_FIXED32, false, 1, {}}, + {3, PROTO_FIELD_OFFSET(ListEntitiesSelectResponse, name), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {4, PROTO_FIELD_OFFSET(ListEntitiesSelectResponse, unique_id), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {5, PROTO_FIELD_OFFSET(ListEntitiesSelectResponse, icon), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {7, PROTO_FIELD_OFFSET(ListEntitiesSelectResponse, disabled_by_default), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {8, PROTO_FIELD_OFFSET(ListEntitiesSelectResponse, entity_category), ProtoFieldType::TYPE_ENUM, false, 1, {}}, + {9, PROTO_FIELD_OFFSET(ListEntitiesSelectResponse, device_id), ProtoFieldType::TYPE_UINT32, false, 1, {}}}; const RepeatedFieldMetaV2 ListEntitiesSelectResponse::REPEATED_FIELDS_V2[1] = { - {6, PROTO_FIELD_OFFSET(ListEntitiesSelectResponse, options), ProtoFieldType::TYPE_STRING, 1, 0}}; + {6, PROTO_FIELD_OFFSET(ListEntitiesSelectResponse, options), ProtoFieldType::TYPE_STRING, 1, {}}}; const FieldMeta SelectStateResponse::FIELDS[4] = {{1, PROTO_FIELD_OFFSET(SelectStateResponse, key), &encode_fixed32_field, @@ -3413,10 +3566,10 @@ const FieldMeta SelectStateResponse::FIELDS[4] = {{1, 1, {.decode_varint = &decode_uint32_field}}}; const FieldMetaV2 SelectStateResponse::FIELDS_V2[4] = { - {1, PROTO_FIELD_OFFSET(SelectStateResponse, key), ProtoFieldType::TYPE_FIXED32, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(SelectStateResponse, state), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {3, PROTO_FIELD_OFFSET(SelectStateResponse, missing_state), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {4, PROTO_FIELD_OFFSET(SelectStateResponse, device_id), ProtoFieldType::TYPE_UINT32, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(SelectStateResponse, key), ProtoFieldType::TYPE_FIXED32, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(SelectStateResponse, state), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {3, PROTO_FIELD_OFFSET(SelectStateResponse, missing_state), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {4, PROTO_FIELD_OFFSET(SelectStateResponse, device_id), ProtoFieldType::TYPE_UINT32, false, 1, {}}}; const FieldMeta SelectCommandRequest::FIELDS[2] = {{1, PROTO_FIELD_OFFSET(SelectCommandRequest, key), &encode_fixed32_field, @@ -3434,8 +3587,8 @@ const FieldMeta SelectCommandRequest::FIELDS[2] = {{1, 1, {.decode_length = &decode_string_field}}}; const FieldMetaV2 SelectCommandRequest::FIELDS_V2[2] = { - {1, PROTO_FIELD_OFFSET(SelectCommandRequest, key), ProtoFieldType::TYPE_FIXED32, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(SelectCommandRequest, state), ProtoFieldType::TYPE_STRING, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(SelectCommandRequest, key), ProtoFieldType::TYPE_FIXED32, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(SelectCommandRequest, state), ProtoFieldType::TYPE_STRING, false, 1, {}}}; #endif #ifdef USE_SIREN const FieldMeta ListEntitiesSirenResponse::FIELDS[10] = { @@ -3528,18 +3681,18 @@ const RepeatedFieldMeta ListEntitiesSirenResponse::REPEATED_FIELDS[1] = { 2, {.decode_length = &decode_repeated_string_field}}}; const FieldMetaV2 ListEntitiesSirenResponse::FIELDS_V2[10] = { - {1, PROTO_FIELD_OFFSET(ListEntitiesSirenResponse, object_id), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(ListEntitiesSirenResponse, key), ProtoFieldType::TYPE_FIXED32, false, 1, 0}, - {3, PROTO_FIELD_OFFSET(ListEntitiesSirenResponse, name), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {4, PROTO_FIELD_OFFSET(ListEntitiesSirenResponse, unique_id), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {5, PROTO_FIELD_OFFSET(ListEntitiesSirenResponse, icon), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {6, PROTO_FIELD_OFFSET(ListEntitiesSirenResponse, disabled_by_default), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {8, PROTO_FIELD_OFFSET(ListEntitiesSirenResponse, supports_duration), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {9, PROTO_FIELD_OFFSET(ListEntitiesSirenResponse, supports_volume), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {10, PROTO_FIELD_OFFSET(ListEntitiesSirenResponse, entity_category), ProtoFieldType::TYPE_ENUM, false, 1, 0}, - {11, PROTO_FIELD_OFFSET(ListEntitiesSirenResponse, device_id), ProtoFieldType::TYPE_UINT32, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(ListEntitiesSirenResponse, object_id), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(ListEntitiesSirenResponse, key), ProtoFieldType::TYPE_FIXED32, false, 1, {}}, + {3, PROTO_FIELD_OFFSET(ListEntitiesSirenResponse, name), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {4, PROTO_FIELD_OFFSET(ListEntitiesSirenResponse, unique_id), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {5, PROTO_FIELD_OFFSET(ListEntitiesSirenResponse, icon), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {6, PROTO_FIELD_OFFSET(ListEntitiesSirenResponse, disabled_by_default), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {8, PROTO_FIELD_OFFSET(ListEntitiesSirenResponse, supports_duration), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {9, PROTO_FIELD_OFFSET(ListEntitiesSirenResponse, supports_volume), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {10, PROTO_FIELD_OFFSET(ListEntitiesSirenResponse, entity_category), ProtoFieldType::TYPE_ENUM, false, 1, {}}, + {11, PROTO_FIELD_OFFSET(ListEntitiesSirenResponse, device_id), ProtoFieldType::TYPE_UINT32, false, 1, {}}}; const RepeatedFieldMetaV2 ListEntitiesSirenResponse::REPEATED_FIELDS_V2[1] = { - {7, PROTO_FIELD_OFFSET(ListEntitiesSirenResponse, tones), ProtoFieldType::TYPE_STRING, 1, 0}}; + {7, PROTO_FIELD_OFFSET(ListEntitiesSirenResponse, tones), ProtoFieldType::TYPE_STRING, 1, {}}}; const FieldMeta SirenStateResponse::FIELDS[3] = {{1, PROTO_FIELD_OFFSET(SirenStateResponse, key), &encode_fixed32_field, @@ -3565,9 +3718,9 @@ const FieldMeta SirenStateResponse::FIELDS[3] = {{1, 1, {.decode_varint = &decode_uint32_field}}}; const FieldMetaV2 SirenStateResponse::FIELDS_V2[3] = { - {1, PROTO_FIELD_OFFSET(SirenStateResponse, key), ProtoFieldType::TYPE_FIXED32, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(SirenStateResponse, state), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {3, PROTO_FIELD_OFFSET(SirenStateResponse, device_id), ProtoFieldType::TYPE_UINT32, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(SirenStateResponse, key), ProtoFieldType::TYPE_FIXED32, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(SirenStateResponse, state), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {3, PROTO_FIELD_OFFSET(SirenStateResponse, device_id), ProtoFieldType::TYPE_UINT32, false, 1, {}}}; const FieldMeta SirenCommandRequest::FIELDS[9] = {{1, PROTO_FIELD_OFFSET(SirenCommandRequest, key), &encode_fixed32_field, @@ -3641,15 +3794,15 @@ const FieldMeta SirenCommandRequest::FIELDS[9] = {{1, 1, {.decode_32bit = &decode_float_field}}}; const FieldMetaV2 SirenCommandRequest::FIELDS_V2[9] = { - {1, PROTO_FIELD_OFFSET(SirenCommandRequest, key), ProtoFieldType::TYPE_FIXED32, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(SirenCommandRequest, has_state), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {3, PROTO_FIELD_OFFSET(SirenCommandRequest, state), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {4, PROTO_FIELD_OFFSET(SirenCommandRequest, has_tone), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {5, PROTO_FIELD_OFFSET(SirenCommandRequest, tone), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {6, PROTO_FIELD_OFFSET(SirenCommandRequest, has_duration), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {7, PROTO_FIELD_OFFSET(SirenCommandRequest, duration), ProtoFieldType::TYPE_UINT32, false, 1, 0}, - {8, PROTO_FIELD_OFFSET(SirenCommandRequest, has_volume), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {9, PROTO_FIELD_OFFSET(SirenCommandRequest, volume), ProtoFieldType::TYPE_FLOAT, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(SirenCommandRequest, key), ProtoFieldType::TYPE_FIXED32, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(SirenCommandRequest, has_state), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {3, PROTO_FIELD_OFFSET(SirenCommandRequest, state), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {4, PROTO_FIELD_OFFSET(SirenCommandRequest, has_tone), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {5, PROTO_FIELD_OFFSET(SirenCommandRequest, tone), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {6, PROTO_FIELD_OFFSET(SirenCommandRequest, has_duration), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {7, PROTO_FIELD_OFFSET(SirenCommandRequest, duration), ProtoFieldType::TYPE_UINT32, false, 1, {}}, + {8, PROTO_FIELD_OFFSET(SirenCommandRequest, has_volume), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {9, PROTO_FIELD_OFFSET(SirenCommandRequest, volume), ProtoFieldType::TYPE_FLOAT, false, 1, {}}}; #endif #ifdef USE_LOCK const FieldMeta ListEntitiesLockResponse::FIELDS[12] = { @@ -3750,18 +3903,18 @@ const FieldMeta ListEntitiesLockResponse::FIELDS[12] = { 1, {.decode_varint = &decode_uint32_field}}}; const FieldMetaV2 ListEntitiesLockResponse::FIELDS_V2[12] = { - {1, PROTO_FIELD_OFFSET(ListEntitiesLockResponse, object_id), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(ListEntitiesLockResponse, key), ProtoFieldType::TYPE_FIXED32, false, 1, 0}, - {3, PROTO_FIELD_OFFSET(ListEntitiesLockResponse, name), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {4, PROTO_FIELD_OFFSET(ListEntitiesLockResponse, unique_id), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {5, PROTO_FIELD_OFFSET(ListEntitiesLockResponse, icon), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {6, PROTO_FIELD_OFFSET(ListEntitiesLockResponse, disabled_by_default), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {7, PROTO_FIELD_OFFSET(ListEntitiesLockResponse, entity_category), ProtoFieldType::TYPE_ENUM, false, 1, 0}, - {8, PROTO_FIELD_OFFSET(ListEntitiesLockResponse, assumed_state), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {9, PROTO_FIELD_OFFSET(ListEntitiesLockResponse, supports_open), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {10, PROTO_FIELD_OFFSET(ListEntitiesLockResponse, requires_code), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {11, PROTO_FIELD_OFFSET(ListEntitiesLockResponse, code_format), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {12, PROTO_FIELD_OFFSET(ListEntitiesLockResponse, device_id), ProtoFieldType::TYPE_UINT32, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(ListEntitiesLockResponse, object_id), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(ListEntitiesLockResponse, key), ProtoFieldType::TYPE_FIXED32, false, 1, {}}, + {3, PROTO_FIELD_OFFSET(ListEntitiesLockResponse, name), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {4, PROTO_FIELD_OFFSET(ListEntitiesLockResponse, unique_id), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {5, PROTO_FIELD_OFFSET(ListEntitiesLockResponse, icon), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {6, PROTO_FIELD_OFFSET(ListEntitiesLockResponse, disabled_by_default), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {7, PROTO_FIELD_OFFSET(ListEntitiesLockResponse, entity_category), ProtoFieldType::TYPE_ENUM, false, 1, {}}, + {8, PROTO_FIELD_OFFSET(ListEntitiesLockResponse, assumed_state), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {9, PROTO_FIELD_OFFSET(ListEntitiesLockResponse, supports_open), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {10, PROTO_FIELD_OFFSET(ListEntitiesLockResponse, requires_code), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {11, PROTO_FIELD_OFFSET(ListEntitiesLockResponse, code_format), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {12, PROTO_FIELD_OFFSET(ListEntitiesLockResponse, device_id), ProtoFieldType::TYPE_UINT32, false, 1, {}}}; const FieldMeta LockStateResponse::FIELDS[3] = {{1, PROTO_FIELD_OFFSET(LockStateResponse, key), &encode_fixed32_field, @@ -3787,9 +3940,9 @@ const FieldMeta LockStateResponse::FIELDS[3] = {{1, 1, {.decode_varint = &decode_uint32_field}}}; const FieldMetaV2 LockStateResponse::FIELDS_V2[3] = { - {1, PROTO_FIELD_OFFSET(LockStateResponse, key), ProtoFieldType::TYPE_FIXED32, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(LockStateResponse, state), ProtoFieldType::TYPE_ENUM, false, 1, 0}, - {3, PROTO_FIELD_OFFSET(LockStateResponse, device_id), ProtoFieldType::TYPE_UINT32, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(LockStateResponse, key), ProtoFieldType::TYPE_FIXED32, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(LockStateResponse, state), ProtoFieldType::TYPE_ENUM, false, 1, {}}, + {3, PROTO_FIELD_OFFSET(LockStateResponse, device_id), ProtoFieldType::TYPE_UINT32, false, 1, {}}}; const FieldMeta LockCommandRequest::FIELDS[4] = {{1, PROTO_FIELD_OFFSET(LockCommandRequest, key), &encode_fixed32_field, @@ -3823,10 +3976,10 @@ const FieldMeta LockCommandRequest::FIELDS[4] = {{1, 1, {.decode_length = &decode_string_field}}}; const FieldMetaV2 LockCommandRequest::FIELDS_V2[4] = { - {1, PROTO_FIELD_OFFSET(LockCommandRequest, key), ProtoFieldType::TYPE_FIXED32, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(LockCommandRequest, command), ProtoFieldType::TYPE_ENUM, false, 1, 0}, - {3, PROTO_FIELD_OFFSET(LockCommandRequest, has_code), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {4, PROTO_FIELD_OFFSET(LockCommandRequest, code), ProtoFieldType::TYPE_STRING, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(LockCommandRequest, key), ProtoFieldType::TYPE_FIXED32, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(LockCommandRequest, command), ProtoFieldType::TYPE_ENUM, false, 1, {}}, + {3, PROTO_FIELD_OFFSET(LockCommandRequest, has_code), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {4, PROTO_FIELD_OFFSET(LockCommandRequest, code), ProtoFieldType::TYPE_STRING, false, 1, {}}}; #endif #ifdef USE_BUTTON const FieldMeta ListEntitiesButtonResponse::FIELDS[9] = { @@ -3903,15 +4056,15 @@ const FieldMeta ListEntitiesButtonResponse::FIELDS[9] = { 1, {.decode_varint = &decode_uint32_field}}}; const FieldMetaV2 ListEntitiesButtonResponse::FIELDS_V2[9] = { - {1, PROTO_FIELD_OFFSET(ListEntitiesButtonResponse, object_id), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(ListEntitiesButtonResponse, key), ProtoFieldType::TYPE_FIXED32, false, 1, 0}, - {3, PROTO_FIELD_OFFSET(ListEntitiesButtonResponse, name), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {4, PROTO_FIELD_OFFSET(ListEntitiesButtonResponse, unique_id), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {5, PROTO_FIELD_OFFSET(ListEntitiesButtonResponse, icon), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {6, PROTO_FIELD_OFFSET(ListEntitiesButtonResponse, disabled_by_default), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {7, PROTO_FIELD_OFFSET(ListEntitiesButtonResponse, entity_category), ProtoFieldType::TYPE_ENUM, false, 1, 0}, - {8, PROTO_FIELD_OFFSET(ListEntitiesButtonResponse, device_class), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {9, PROTO_FIELD_OFFSET(ListEntitiesButtonResponse, device_id), ProtoFieldType::TYPE_UINT32, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(ListEntitiesButtonResponse, object_id), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(ListEntitiesButtonResponse, key), ProtoFieldType::TYPE_FIXED32, false, 1, {}}, + {3, PROTO_FIELD_OFFSET(ListEntitiesButtonResponse, name), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {4, PROTO_FIELD_OFFSET(ListEntitiesButtonResponse, unique_id), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {5, PROTO_FIELD_OFFSET(ListEntitiesButtonResponse, icon), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {6, PROTO_FIELD_OFFSET(ListEntitiesButtonResponse, disabled_by_default), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {7, PROTO_FIELD_OFFSET(ListEntitiesButtonResponse, entity_category), ProtoFieldType::TYPE_ENUM, false, 1, {}}, + {8, PROTO_FIELD_OFFSET(ListEntitiesButtonResponse, device_class), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {9, PROTO_FIELD_OFFSET(ListEntitiesButtonResponse, device_id), ProtoFieldType::TYPE_UINT32, false, 1, {}}}; const FieldMeta ButtonCommandRequest::FIELDS[1] = {{1, PROTO_FIELD_OFFSET(ButtonCommandRequest, key), &encode_fixed32_field, @@ -3921,7 +4074,7 @@ const FieldMeta ButtonCommandRequest::FIELDS[1] = {{1, 1, {.decode_32bit = &decode_fixed32_field}}}; const FieldMetaV2 ButtonCommandRequest::FIELDS_V2[1] = { - {1, PROTO_FIELD_OFFSET(ButtonCommandRequest, key), ProtoFieldType::TYPE_FIXED32, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(ButtonCommandRequest, key), ProtoFieldType::TYPE_FIXED32, false, 1, {}}}; #endif #ifdef USE_MEDIA_PLAYER const FieldMeta MediaPlayerSupportedFormat::FIELDS[5] = { @@ -3966,11 +4119,11 @@ const FieldMeta MediaPlayerSupportedFormat::FIELDS[5] = { 1, {.decode_varint = &decode_uint32_field}}}; const FieldMetaV2 MediaPlayerSupportedFormat::FIELDS_V2[5] = { - {1, PROTO_FIELD_OFFSET(MediaPlayerSupportedFormat, format), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(MediaPlayerSupportedFormat, sample_rate), ProtoFieldType::TYPE_UINT32, false, 1, 0}, - {3, PROTO_FIELD_OFFSET(MediaPlayerSupportedFormat, num_channels), ProtoFieldType::TYPE_UINT32, false, 1, 0}, - {4, PROTO_FIELD_OFFSET(MediaPlayerSupportedFormat, purpose), ProtoFieldType::TYPE_ENUM, false, 1, 0}, - {5, PROTO_FIELD_OFFSET(MediaPlayerSupportedFormat, sample_bytes), ProtoFieldType::TYPE_UINT32, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(MediaPlayerSupportedFormat, format), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(MediaPlayerSupportedFormat, sample_rate), ProtoFieldType::TYPE_UINT32, false, 1, {}}, + {3, PROTO_FIELD_OFFSET(MediaPlayerSupportedFormat, num_channels), ProtoFieldType::TYPE_UINT32, false, 1, {}}, + {4, PROTO_FIELD_OFFSET(MediaPlayerSupportedFormat, purpose), ProtoFieldType::TYPE_ENUM, false, 1, {}}, + {5, PROTO_FIELD_OFFSET(MediaPlayerSupportedFormat, sample_bytes), ProtoFieldType::TYPE_UINT32, false, 1, {}}}; const FieldMeta ListEntitiesMediaPlayerResponse::FIELDS[9] = { {1, PROTO_FIELD_OFFSET(ListEntitiesMediaPlayerResponse, object_id), @@ -4053,18 +4206,28 @@ const RepeatedFieldMeta ListEntitiesMediaPlayerResponse::REPEATED_FIELDS[1] = { 2, {.decode_length = &decode_repeated_message_field}}}; const FieldMetaV2 ListEntitiesMediaPlayerResponse::FIELDS_V2[9] = { - {1, PROTO_FIELD_OFFSET(ListEntitiesMediaPlayerResponse, object_id), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(ListEntitiesMediaPlayerResponse, key), ProtoFieldType::TYPE_FIXED32, false, 1, 0}, - {3, PROTO_FIELD_OFFSET(ListEntitiesMediaPlayerResponse, name), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {4, PROTO_FIELD_OFFSET(ListEntitiesMediaPlayerResponse, unique_id), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {5, PROTO_FIELD_OFFSET(ListEntitiesMediaPlayerResponse, icon), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {6, PROTO_FIELD_OFFSET(ListEntitiesMediaPlayerResponse, disabled_by_default), ProtoFieldType::TYPE_BOOL, false, 1, - 0}, - {7, PROTO_FIELD_OFFSET(ListEntitiesMediaPlayerResponse, entity_category), ProtoFieldType::TYPE_ENUM, false, 1, 0}, - {8, PROTO_FIELD_OFFSET(ListEntitiesMediaPlayerResponse, supports_pause), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {10, PROTO_FIELD_OFFSET(ListEntitiesMediaPlayerResponse, device_id), ProtoFieldType::TYPE_UINT32, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(ListEntitiesMediaPlayerResponse, object_id), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(ListEntitiesMediaPlayerResponse, key), ProtoFieldType::TYPE_FIXED32, false, 1, {}}, + {3, PROTO_FIELD_OFFSET(ListEntitiesMediaPlayerResponse, name), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {4, PROTO_FIELD_OFFSET(ListEntitiesMediaPlayerResponse, unique_id), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {5, PROTO_FIELD_OFFSET(ListEntitiesMediaPlayerResponse, icon), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {6, + PROTO_FIELD_OFFSET(ListEntitiesMediaPlayerResponse, disabled_by_default), + ProtoFieldType::TYPE_BOOL, + false, + 1, + {}}, + {7, PROTO_FIELD_OFFSET(ListEntitiesMediaPlayerResponse, entity_category), ProtoFieldType::TYPE_ENUM, false, 1, {}}, + {8, PROTO_FIELD_OFFSET(ListEntitiesMediaPlayerResponse, supports_pause), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {10, PROTO_FIELD_OFFSET(ListEntitiesMediaPlayerResponse, device_id), ProtoFieldType::TYPE_UINT32, false, 1, {}}}; const RepeatedFieldMetaV2 ListEntitiesMediaPlayerResponse::REPEATED_FIELDS_V2[1] = { - {9, PROTO_FIELD_OFFSET(ListEntitiesMediaPlayerResponse, supported_formats), ProtoFieldType::TYPE_MESSAGE, 1, 70}}; + {9, + PROTO_FIELD_OFFSET(ListEntitiesMediaPlayerResponse, supported_formats), + ProtoFieldType::TYPE_MESSAGE, + 1, + {.message = {&encode_repeated_message_field, + &size_repeated_message_field, + &decode_repeated_message_field}}}}; const FieldMeta MediaPlayerStateResponse::FIELDS[5] = {{1, PROTO_FIELD_OFFSET(MediaPlayerStateResponse, key), &encode_fixed32_field, @@ -4106,11 +4269,11 @@ const FieldMeta MediaPlayerStateResponse::FIELDS[5] = {{1, 1, {.decode_varint = &decode_uint32_field}}}; const FieldMetaV2 MediaPlayerStateResponse::FIELDS_V2[5] = { - {1, PROTO_FIELD_OFFSET(MediaPlayerStateResponse, key), ProtoFieldType::TYPE_FIXED32, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(MediaPlayerStateResponse, state), ProtoFieldType::TYPE_ENUM, false, 1, 0}, - {3, PROTO_FIELD_OFFSET(MediaPlayerStateResponse, volume), ProtoFieldType::TYPE_FLOAT, false, 1, 0}, - {4, PROTO_FIELD_OFFSET(MediaPlayerStateResponse, muted), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {5, PROTO_FIELD_OFFSET(MediaPlayerStateResponse, device_id), ProtoFieldType::TYPE_UINT32, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(MediaPlayerStateResponse, key), ProtoFieldType::TYPE_FIXED32, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(MediaPlayerStateResponse, state), ProtoFieldType::TYPE_ENUM, false, 1, {}}, + {3, PROTO_FIELD_OFFSET(MediaPlayerStateResponse, volume), ProtoFieldType::TYPE_FLOAT, false, 1, {}}, + {4, PROTO_FIELD_OFFSET(MediaPlayerStateResponse, muted), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {5, PROTO_FIELD_OFFSET(MediaPlayerStateResponse, device_id), ProtoFieldType::TYPE_UINT32, false, 1, {}}}; const FieldMeta MediaPlayerCommandRequest::FIELDS[9] = { {1, PROTO_FIELD_OFFSET(MediaPlayerCommandRequest, key), @@ -4185,15 +4348,15 @@ const FieldMeta MediaPlayerCommandRequest::FIELDS[9] = { 1, {.decode_varint = &decode_bool_field}}}; const FieldMetaV2 MediaPlayerCommandRequest::FIELDS_V2[9] = { - {1, PROTO_FIELD_OFFSET(MediaPlayerCommandRequest, key), ProtoFieldType::TYPE_FIXED32, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(MediaPlayerCommandRequest, has_command), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {3, PROTO_FIELD_OFFSET(MediaPlayerCommandRequest, command), ProtoFieldType::TYPE_ENUM, false, 1, 0}, - {4, PROTO_FIELD_OFFSET(MediaPlayerCommandRequest, has_volume), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {5, PROTO_FIELD_OFFSET(MediaPlayerCommandRequest, volume), ProtoFieldType::TYPE_FLOAT, false, 1, 0}, - {6, PROTO_FIELD_OFFSET(MediaPlayerCommandRequest, has_media_url), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {7, PROTO_FIELD_OFFSET(MediaPlayerCommandRequest, media_url), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {8, PROTO_FIELD_OFFSET(MediaPlayerCommandRequest, has_announcement), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {9, PROTO_FIELD_OFFSET(MediaPlayerCommandRequest, announcement), ProtoFieldType::TYPE_BOOL, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(MediaPlayerCommandRequest, key), ProtoFieldType::TYPE_FIXED32, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(MediaPlayerCommandRequest, has_command), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {3, PROTO_FIELD_OFFSET(MediaPlayerCommandRequest, command), ProtoFieldType::TYPE_ENUM, false, 1, {}}, + {4, PROTO_FIELD_OFFSET(MediaPlayerCommandRequest, has_volume), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {5, PROTO_FIELD_OFFSET(MediaPlayerCommandRequest, volume), ProtoFieldType::TYPE_FLOAT, false, 1, {}}, + {6, PROTO_FIELD_OFFSET(MediaPlayerCommandRequest, has_media_url), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {7, PROTO_FIELD_OFFSET(MediaPlayerCommandRequest, media_url), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {8, PROTO_FIELD_OFFSET(MediaPlayerCommandRequest, has_announcement), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {9, PROTO_FIELD_OFFSET(MediaPlayerCommandRequest, announcement), ProtoFieldType::TYPE_BOOL, false, 1, {}}}; #endif #ifdef USE_BLUETOOTH_PROXY const FieldMeta SubscribeBluetoothLEAdvertisementsRequest::FIELDS[1] = { @@ -4206,8 +4369,12 @@ const FieldMeta SubscribeBluetoothLEAdvertisementsRequest::FIELDS[1] = { 1, {.decode_varint = &decode_uint32_field}}}; const FieldMetaV2 SubscribeBluetoothLEAdvertisementsRequest::FIELDS_V2[1] = { - {1, PROTO_FIELD_OFFSET(SubscribeBluetoothLEAdvertisementsRequest, flags), ProtoFieldType::TYPE_UINT32, false, 1, - 0}}; + {1, + PROTO_FIELD_OFFSET(SubscribeBluetoothLEAdvertisementsRequest, flags), + ProtoFieldType::TYPE_UINT32, + false, + 1, + {}}}; const FieldMeta BluetoothServiceData::FIELDS[2] = {{1, PROTO_FIELD_OFFSET(BluetoothServiceData, uuid), &encode_string_field, @@ -4233,10 +4400,10 @@ const RepeatedFieldMeta BluetoothServiceData::REPEATED_FIELDS[1] = { 0, {.decode_varint = &decode_repeated_uint32_field}}}; const FieldMetaV2 BluetoothServiceData::FIELDS_V2[2] = { - {1, PROTO_FIELD_OFFSET(BluetoothServiceData, uuid), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {3, PROTO_FIELD_OFFSET(BluetoothServiceData, data), ProtoFieldType::TYPE_BYTES, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(BluetoothServiceData, uuid), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {3, PROTO_FIELD_OFFSET(BluetoothServiceData, data), ProtoFieldType::TYPE_BYTES, false, 1, {}}}; const RepeatedFieldMetaV2 BluetoothServiceData::REPEATED_FIELDS_V2[1] = { - {2, PROTO_FIELD_OFFSET(BluetoothServiceData, legacy_data), ProtoFieldType::TYPE_UINT32, 1, 0}}; + {2, PROTO_FIELD_OFFSET(BluetoothServiceData, legacy_data), ProtoFieldType::TYPE_UINT32, 1, {}}}; const FieldMeta BluetoothLEAdvertisementResponse::FIELDS[4] = { {1, PROTO_FIELD_OFFSET(BluetoothLEAdvertisementResponse, address), @@ -4293,14 +4460,26 @@ const RepeatedFieldMeta BluetoothLEAdvertisementResponse::REPEATED_FIELDS[3] = { 2, {.decode_length = &decode_repeated_message_field}}}; const FieldMetaV2 BluetoothLEAdvertisementResponse::FIELDS_V2[4] = { - {1, PROTO_FIELD_OFFSET(BluetoothLEAdvertisementResponse, address), ProtoFieldType::TYPE_UINT64, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(BluetoothLEAdvertisementResponse, name), ProtoFieldType::TYPE_BYTES, false, 1, 0}, - {3, PROTO_FIELD_OFFSET(BluetoothLEAdvertisementResponse, rssi), ProtoFieldType::TYPE_SINT32, false, 1, 0}, - {7, PROTO_FIELD_OFFSET(BluetoothLEAdvertisementResponse, address_type), ProtoFieldType::TYPE_UINT32, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(BluetoothLEAdvertisementResponse, address), ProtoFieldType::TYPE_UINT64, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(BluetoothLEAdvertisementResponse, name), ProtoFieldType::TYPE_BYTES, false, 1, {}}, + {3, PROTO_FIELD_OFFSET(BluetoothLEAdvertisementResponse, rssi), ProtoFieldType::TYPE_SINT32, false, 1, {}}, + {7, PROTO_FIELD_OFFSET(BluetoothLEAdvertisementResponse, address_type), ProtoFieldType::TYPE_UINT32, false, 1, {}}}; const RepeatedFieldMetaV2 BluetoothLEAdvertisementResponse::REPEATED_FIELDS_V2[3] = { - {4, PROTO_FIELD_OFFSET(BluetoothLEAdvertisementResponse, service_uuids), ProtoFieldType::TYPE_STRING, 1, 0}, - {5, PROTO_FIELD_OFFSET(BluetoothLEAdvertisementResponse, service_data), ProtoFieldType::TYPE_MESSAGE, 1, 75}, - {6, PROTO_FIELD_OFFSET(BluetoothLEAdvertisementResponse, manufacturer_data), ProtoFieldType::TYPE_MESSAGE, 1, 75}}; + {4, PROTO_FIELD_OFFSET(BluetoothLEAdvertisementResponse, service_uuids), ProtoFieldType::TYPE_STRING, 1, {}}, + {5, + PROTO_FIELD_OFFSET(BluetoothLEAdvertisementResponse, service_data), + ProtoFieldType::TYPE_MESSAGE, + 1, + {.message = {&encode_repeated_message_field, + &size_repeated_message_field, + &decode_repeated_message_field}}}, + {6, + PROTO_FIELD_OFFSET(BluetoothLEAdvertisementResponse, manufacturer_data), + ProtoFieldType::TYPE_MESSAGE, + 1, + {.message = {&encode_repeated_message_field, + &size_repeated_message_field, + &decode_repeated_message_field}}}}; const FieldMeta BluetoothLERawAdvertisement::FIELDS[4] = { {1, PROTO_FIELD_OFFSET(BluetoothLERawAdvertisement, address), @@ -4335,10 +4514,10 @@ const FieldMeta BluetoothLERawAdvertisement::FIELDS[4] = { 1, {.decode_length = &decode_bytes_field}}}; const FieldMetaV2 BluetoothLERawAdvertisement::FIELDS_V2[4] = { - {1, PROTO_FIELD_OFFSET(BluetoothLERawAdvertisement, address), ProtoFieldType::TYPE_UINT64, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(BluetoothLERawAdvertisement, rssi), ProtoFieldType::TYPE_SINT32, false, 1, 0}, - {3, PROTO_FIELD_OFFSET(BluetoothLERawAdvertisement, address_type), ProtoFieldType::TYPE_UINT32, false, 1, 0}, - {4, PROTO_FIELD_OFFSET(BluetoothLERawAdvertisement, data), ProtoFieldType::TYPE_BYTES, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(BluetoothLERawAdvertisement, address), ProtoFieldType::TYPE_UINT64, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(BluetoothLERawAdvertisement, rssi), ProtoFieldType::TYPE_SINT32, false, 1, {}}, + {3, PROTO_FIELD_OFFSET(BluetoothLERawAdvertisement, address_type), ProtoFieldType::TYPE_UINT32, false, 1, {}}, + {4, PROTO_FIELD_OFFSET(BluetoothLERawAdvertisement, data), ProtoFieldType::TYPE_BYTES, false, 1, {}}}; const RepeatedFieldMeta BluetoothLERawAdvertisementsResponse::REPEATED_FIELDS[1] = { {1, PROTO_FIELD_OFFSET(BluetoothLERawAdvertisementsResponse, advertisements), @@ -4348,7 +4527,13 @@ const RepeatedFieldMeta BluetoothLERawAdvertisementsResponse::REPEATED_FIELDS[1] 2, {.decode_length = &decode_repeated_message_field}}}; const RepeatedFieldMetaV2 BluetoothLERawAdvertisementsResponse::REPEATED_FIELDS_V2[1] = { - {1, PROTO_FIELD_OFFSET(BluetoothLERawAdvertisementsResponse, advertisements), ProtoFieldType::TYPE_MESSAGE, 1, 77}}; + {1, + PROTO_FIELD_OFFSET(BluetoothLERawAdvertisementsResponse, advertisements), + ProtoFieldType::TYPE_MESSAGE, + 1, + {.message = {&encode_repeated_message_field, + &size_repeated_message_field, + &decode_repeated_message_field}}}}; const FieldMeta BluetoothDeviceRequest::FIELDS[4] = { {1, PROTO_FIELD_OFFSET(BluetoothDeviceRequest, address), @@ -4383,10 +4568,10 @@ const FieldMeta BluetoothDeviceRequest::FIELDS[4] = { 1, {.decode_varint = &decode_uint32_field}}}; const FieldMetaV2 BluetoothDeviceRequest::FIELDS_V2[4] = { - {1, PROTO_FIELD_OFFSET(BluetoothDeviceRequest, address), ProtoFieldType::TYPE_UINT64, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(BluetoothDeviceRequest, request_type), ProtoFieldType::TYPE_ENUM, false, 1, 0}, - {3, PROTO_FIELD_OFFSET(BluetoothDeviceRequest, has_address_type), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {4, PROTO_FIELD_OFFSET(BluetoothDeviceRequest, address_type), ProtoFieldType::TYPE_UINT32, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(BluetoothDeviceRequest, address), ProtoFieldType::TYPE_UINT64, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(BluetoothDeviceRequest, request_type), ProtoFieldType::TYPE_ENUM, false, 1, {}}, + {3, PROTO_FIELD_OFFSET(BluetoothDeviceRequest, has_address_type), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {4, PROTO_FIELD_OFFSET(BluetoothDeviceRequest, address_type), ProtoFieldType::TYPE_UINT32, false, 1, {}}}; const FieldMeta BluetoothDeviceConnectionResponse::FIELDS[4] = { {1, PROTO_FIELD_OFFSET(BluetoothDeviceConnectionResponse, address), @@ -4421,10 +4606,10 @@ const FieldMeta BluetoothDeviceConnectionResponse::FIELDS[4] = { 1, {.decode_varint = &decode_int32_field}}}; const FieldMetaV2 BluetoothDeviceConnectionResponse::FIELDS_V2[4] = { - {1, PROTO_FIELD_OFFSET(BluetoothDeviceConnectionResponse, address), ProtoFieldType::TYPE_UINT64, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(BluetoothDeviceConnectionResponse, connected), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {3, PROTO_FIELD_OFFSET(BluetoothDeviceConnectionResponse, mtu), ProtoFieldType::TYPE_UINT32, false, 1, 0}, - {4, PROTO_FIELD_OFFSET(BluetoothDeviceConnectionResponse, error), ProtoFieldType::TYPE_INT32, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(BluetoothDeviceConnectionResponse, address), ProtoFieldType::TYPE_UINT64, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(BluetoothDeviceConnectionResponse, connected), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {3, PROTO_FIELD_OFFSET(BluetoothDeviceConnectionResponse, mtu), ProtoFieldType::TYPE_UINT32, false, 1, {}}, + {4, PROTO_FIELD_OFFSET(BluetoothDeviceConnectionResponse, error), ProtoFieldType::TYPE_INT32, false, 1, {}}}; const FieldMeta BluetoothGATTGetServicesRequest::FIELDS[1] = { {1, PROTO_FIELD_OFFSET(BluetoothGATTGetServicesRequest, address), @@ -4435,7 +4620,7 @@ const FieldMeta BluetoothGATTGetServicesRequest::FIELDS[1] = { 1, {.decode_varint = &decode_uint64_field}}}; const FieldMetaV2 BluetoothGATTGetServicesRequest::FIELDS_V2[1] = { - {1, PROTO_FIELD_OFFSET(BluetoothGATTGetServicesRequest, address), ProtoFieldType::TYPE_UINT64, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(BluetoothGATTGetServicesRequest, address), ProtoFieldType::TYPE_UINT64, false, 1, {}}}; const FieldMeta BluetoothGATTDescriptor::FIELDS[1] = {{2, PROTO_FIELD_OFFSET(BluetoothGATTDescriptor, handle), &encode_uint32_field, @@ -4453,9 +4638,9 @@ const RepeatedFieldMeta BluetoothGATTDescriptor::REPEATED_FIELDS[1] = { 0, {.decode_varint = &decode_repeated_uint64_field}}}; const FieldMetaV2 BluetoothGATTDescriptor::FIELDS_V2[1] = { - {2, PROTO_FIELD_OFFSET(BluetoothGATTDescriptor, handle), ProtoFieldType::TYPE_UINT32, false, 1, 0}}; + {2, PROTO_FIELD_OFFSET(BluetoothGATTDescriptor, handle), ProtoFieldType::TYPE_UINT32, false, 1, {}}}; const RepeatedFieldMetaV2 BluetoothGATTDescriptor::REPEATED_FIELDS_V2[1] = { - {1, PROTO_FIELD_OFFSET(BluetoothGATTDescriptor, uuid), ProtoFieldType::TYPE_UINT64, 1, 0}}; + {1, PROTO_FIELD_OFFSET(BluetoothGATTDescriptor, uuid), ProtoFieldType::TYPE_UINT64, 1, {}}}; const FieldMeta BluetoothGATTCharacteristic::FIELDS[2] = {{2, PROTO_FIELD_OFFSET(BluetoothGATTCharacteristic, handle), &encode_uint32_field, @@ -4488,11 +4673,17 @@ const RepeatedFieldMeta BluetoothGATTCharacteristic::REPEATED_FIELDS[2] = { 2, {.decode_length = &decode_repeated_message_field}}}; const FieldMetaV2 BluetoothGATTCharacteristic::FIELDS_V2[2] = { - {2, PROTO_FIELD_OFFSET(BluetoothGATTCharacteristic, handle), ProtoFieldType::TYPE_UINT32, false, 1, 0}, - {3, PROTO_FIELD_OFFSET(BluetoothGATTCharacteristic, properties), ProtoFieldType::TYPE_UINT32, false, 1, 0}}; + {2, PROTO_FIELD_OFFSET(BluetoothGATTCharacteristic, handle), ProtoFieldType::TYPE_UINT32, false, 1, {}}, + {3, PROTO_FIELD_OFFSET(BluetoothGATTCharacteristic, properties), ProtoFieldType::TYPE_UINT32, false, 1, {}}}; const RepeatedFieldMetaV2 BluetoothGATTCharacteristic::REPEATED_FIELDS_V2[2] = { - {1, PROTO_FIELD_OFFSET(BluetoothGATTCharacteristic, uuid), ProtoFieldType::TYPE_UINT64, 1, 0}, - {4, PROTO_FIELD_OFFSET(BluetoothGATTCharacteristic, descriptors), ProtoFieldType::TYPE_MESSAGE, 1, 82}}; + {1, PROTO_FIELD_OFFSET(BluetoothGATTCharacteristic, uuid), ProtoFieldType::TYPE_UINT64, 1, {}}, + {4, + PROTO_FIELD_OFFSET(BluetoothGATTCharacteristic, descriptors), + ProtoFieldType::TYPE_MESSAGE, + 1, + {.message = {&encode_repeated_message_field, + &size_repeated_message_field, + &decode_repeated_message_field}}}}; const FieldMeta BluetoothGATTService::FIELDS[1] = {{2, PROTO_FIELD_OFFSET(BluetoothGATTService, handle), &encode_uint32_field, @@ -4517,10 +4708,16 @@ const RepeatedFieldMeta BluetoothGATTService::REPEATED_FIELDS[2] = { 2, {.decode_length = &decode_repeated_message_field}}}; const FieldMetaV2 BluetoothGATTService::FIELDS_V2[1] = { - {2, PROTO_FIELD_OFFSET(BluetoothGATTService, handle), ProtoFieldType::TYPE_UINT32, false, 1, 0}}; + {2, PROTO_FIELD_OFFSET(BluetoothGATTService, handle), ProtoFieldType::TYPE_UINT32, false, 1, {}}}; const RepeatedFieldMetaV2 BluetoothGATTService::REPEATED_FIELDS_V2[2] = { - {1, PROTO_FIELD_OFFSET(BluetoothGATTService, uuid), ProtoFieldType::TYPE_UINT64, 1, 0}, - {3, PROTO_FIELD_OFFSET(BluetoothGATTService, characteristics), ProtoFieldType::TYPE_MESSAGE, 1, 83}}; + {1, PROTO_FIELD_OFFSET(BluetoothGATTService, uuid), ProtoFieldType::TYPE_UINT64, 1, {}}, + {3, + PROTO_FIELD_OFFSET(BluetoothGATTService, characteristics), + ProtoFieldType::TYPE_MESSAGE, + 1, + {.message = {&encode_repeated_message_field, + &size_repeated_message_field, + &decode_repeated_message_field}}}}; const FieldMeta BluetoothGATTGetServicesResponse::FIELDS[1] = { {1, PROTO_FIELD_OFFSET(BluetoothGATTGetServicesResponse, address), @@ -4539,9 +4736,15 @@ const RepeatedFieldMeta BluetoothGATTGetServicesResponse::REPEATED_FIELDS[1] = { 2, {.decode_length = &decode_repeated_message_field}}}; const FieldMetaV2 BluetoothGATTGetServicesResponse::FIELDS_V2[1] = { - {1, PROTO_FIELD_OFFSET(BluetoothGATTGetServicesResponse, address), ProtoFieldType::TYPE_UINT64, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(BluetoothGATTGetServicesResponse, address), ProtoFieldType::TYPE_UINT64, false, 1, {}}}; const RepeatedFieldMetaV2 BluetoothGATTGetServicesResponse::REPEATED_FIELDS_V2[1] = { - {2, PROTO_FIELD_OFFSET(BluetoothGATTGetServicesResponse, services), ProtoFieldType::TYPE_MESSAGE, 1, 84}}; + {2, + PROTO_FIELD_OFFSET(BluetoothGATTGetServicesResponse, services), + ProtoFieldType::TYPE_MESSAGE, + 1, + {.message = {&encode_repeated_message_field, + &size_repeated_message_field, + &decode_repeated_message_field}}}}; const FieldMeta BluetoothGATTGetServicesDoneResponse::FIELDS[1] = { {1, PROTO_FIELD_OFFSET(BluetoothGATTGetServicesDoneResponse, address), @@ -4552,7 +4755,7 @@ const FieldMeta BluetoothGATTGetServicesDoneResponse::FIELDS[1] = { 1, {.decode_varint = &decode_uint64_field}}}; const FieldMetaV2 BluetoothGATTGetServicesDoneResponse::FIELDS_V2[1] = { - {1, PROTO_FIELD_OFFSET(BluetoothGATTGetServicesDoneResponse, address), ProtoFieldType::TYPE_UINT64, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(BluetoothGATTGetServicesDoneResponse, address), ProtoFieldType::TYPE_UINT64, false, 1, {}}}; const FieldMeta BluetoothGATTReadRequest::FIELDS[2] = {{1, PROTO_FIELD_OFFSET(BluetoothGATTReadRequest, address), &encode_uint64_field, @@ -4570,8 +4773,8 @@ const FieldMeta BluetoothGATTReadRequest::FIELDS[2] = {{1, 1, {.decode_varint = &decode_uint32_field}}}; const FieldMetaV2 BluetoothGATTReadRequest::FIELDS_V2[2] = { - {1, PROTO_FIELD_OFFSET(BluetoothGATTReadRequest, address), ProtoFieldType::TYPE_UINT64, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(BluetoothGATTReadRequest, handle), ProtoFieldType::TYPE_UINT32, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(BluetoothGATTReadRequest, address), ProtoFieldType::TYPE_UINT64, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(BluetoothGATTReadRequest, handle), ProtoFieldType::TYPE_UINT32, false, 1, {}}}; const FieldMeta BluetoothGATTReadResponse::FIELDS[3] = {{1, PROTO_FIELD_OFFSET(BluetoothGATTReadResponse, address), &encode_uint64_field, @@ -4597,9 +4800,9 @@ const FieldMeta BluetoothGATTReadResponse::FIELDS[3] = {{1, 1, {.decode_length = &decode_bytes_field}}}; const FieldMetaV2 BluetoothGATTReadResponse::FIELDS_V2[3] = { - {1, PROTO_FIELD_OFFSET(BluetoothGATTReadResponse, address), ProtoFieldType::TYPE_UINT64, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(BluetoothGATTReadResponse, handle), ProtoFieldType::TYPE_UINT32, false, 1, 0}, - {3, PROTO_FIELD_OFFSET(BluetoothGATTReadResponse, data), ProtoFieldType::TYPE_BYTES, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(BluetoothGATTReadResponse, address), ProtoFieldType::TYPE_UINT64, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(BluetoothGATTReadResponse, handle), ProtoFieldType::TYPE_UINT32, false, 1, {}}, + {3, PROTO_FIELD_OFFSET(BluetoothGATTReadResponse, data), ProtoFieldType::TYPE_BYTES, false, 1, {}}}; const FieldMeta BluetoothGATTWriteRequest::FIELDS[4] = {{1, PROTO_FIELD_OFFSET(BluetoothGATTWriteRequest, address), &encode_uint64_field, @@ -4633,10 +4836,10 @@ const FieldMeta BluetoothGATTWriteRequest::FIELDS[4] = {{1, 1, {.decode_length = &decode_bytes_field}}}; const FieldMetaV2 BluetoothGATTWriteRequest::FIELDS_V2[4] = { - {1, PROTO_FIELD_OFFSET(BluetoothGATTWriteRequest, address), ProtoFieldType::TYPE_UINT64, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(BluetoothGATTWriteRequest, handle), ProtoFieldType::TYPE_UINT32, false, 1, 0}, - {3, PROTO_FIELD_OFFSET(BluetoothGATTWriteRequest, response), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {4, PROTO_FIELD_OFFSET(BluetoothGATTWriteRequest, data), ProtoFieldType::TYPE_BYTES, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(BluetoothGATTWriteRequest, address), ProtoFieldType::TYPE_UINT64, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(BluetoothGATTWriteRequest, handle), ProtoFieldType::TYPE_UINT32, false, 1, {}}, + {3, PROTO_FIELD_OFFSET(BluetoothGATTWriteRequest, response), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {4, PROTO_FIELD_OFFSET(BluetoothGATTWriteRequest, data), ProtoFieldType::TYPE_BYTES, false, 1, {}}}; const FieldMeta BluetoothGATTReadDescriptorRequest::FIELDS[2] = { {1, PROTO_FIELD_OFFSET(BluetoothGATTReadDescriptorRequest, address), @@ -4655,8 +4858,8 @@ const FieldMeta BluetoothGATTReadDescriptorRequest::FIELDS[2] = { 1, {.decode_varint = &decode_uint32_field}}}; const FieldMetaV2 BluetoothGATTReadDescriptorRequest::FIELDS_V2[2] = { - {1, PROTO_FIELD_OFFSET(BluetoothGATTReadDescriptorRequest, address), ProtoFieldType::TYPE_UINT64, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(BluetoothGATTReadDescriptorRequest, handle), ProtoFieldType::TYPE_UINT32, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(BluetoothGATTReadDescriptorRequest, address), ProtoFieldType::TYPE_UINT64, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(BluetoothGATTReadDescriptorRequest, handle), ProtoFieldType::TYPE_UINT32, false, 1, {}}}; const FieldMeta BluetoothGATTWriteDescriptorRequest::FIELDS[3] = { {1, PROTO_FIELD_OFFSET(BluetoothGATTWriteDescriptorRequest, address), @@ -4683,9 +4886,9 @@ const FieldMeta BluetoothGATTWriteDescriptorRequest::FIELDS[3] = { 1, {.decode_length = &decode_bytes_field}}}; const FieldMetaV2 BluetoothGATTWriteDescriptorRequest::FIELDS_V2[3] = { - {1, PROTO_FIELD_OFFSET(BluetoothGATTWriteDescriptorRequest, address), ProtoFieldType::TYPE_UINT64, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(BluetoothGATTWriteDescriptorRequest, handle), ProtoFieldType::TYPE_UINT32, false, 1, 0}, - {3, PROTO_FIELD_OFFSET(BluetoothGATTWriteDescriptorRequest, data), ProtoFieldType::TYPE_BYTES, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(BluetoothGATTWriteDescriptorRequest, address), ProtoFieldType::TYPE_UINT64, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(BluetoothGATTWriteDescriptorRequest, handle), ProtoFieldType::TYPE_UINT32, false, 1, {}}, + {3, PROTO_FIELD_OFFSET(BluetoothGATTWriteDescriptorRequest, data), ProtoFieldType::TYPE_BYTES, false, 1, {}}}; const FieldMeta BluetoothGATTNotifyRequest::FIELDS[3] = {{1, PROTO_FIELD_OFFSET(BluetoothGATTNotifyRequest, address), &encode_uint64_field, @@ -4711,9 +4914,9 @@ const FieldMeta BluetoothGATTNotifyRequest::FIELDS[3] = {{1, 1, {.decode_varint = &decode_bool_field}}}; const FieldMetaV2 BluetoothGATTNotifyRequest::FIELDS_V2[3] = { - {1, PROTO_FIELD_OFFSET(BluetoothGATTNotifyRequest, address), ProtoFieldType::TYPE_UINT64, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(BluetoothGATTNotifyRequest, handle), ProtoFieldType::TYPE_UINT32, false, 1, 0}, - {3, PROTO_FIELD_OFFSET(BluetoothGATTNotifyRequest, enable), ProtoFieldType::TYPE_BOOL, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(BluetoothGATTNotifyRequest, address), ProtoFieldType::TYPE_UINT64, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(BluetoothGATTNotifyRequest, handle), ProtoFieldType::TYPE_UINT32, false, 1, {}}, + {3, PROTO_FIELD_OFFSET(BluetoothGATTNotifyRequest, enable), ProtoFieldType::TYPE_BOOL, false, 1, {}}}; const FieldMeta BluetoothGATTNotifyDataResponse::FIELDS[3] = { {1, PROTO_FIELD_OFFSET(BluetoothGATTNotifyDataResponse, address), @@ -4740,9 +4943,9 @@ const FieldMeta BluetoothGATTNotifyDataResponse::FIELDS[3] = { 1, {.decode_length = &decode_bytes_field}}}; const FieldMetaV2 BluetoothGATTNotifyDataResponse::FIELDS_V2[3] = { - {1, PROTO_FIELD_OFFSET(BluetoothGATTNotifyDataResponse, address), ProtoFieldType::TYPE_UINT64, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(BluetoothGATTNotifyDataResponse, handle), ProtoFieldType::TYPE_UINT32, false, 1, 0}, - {3, PROTO_FIELD_OFFSET(BluetoothGATTNotifyDataResponse, data), ProtoFieldType::TYPE_BYTES, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(BluetoothGATTNotifyDataResponse, address), ProtoFieldType::TYPE_UINT64, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(BluetoothGATTNotifyDataResponse, handle), ProtoFieldType::TYPE_UINT32, false, 1, {}}, + {3, PROTO_FIELD_OFFSET(BluetoothGATTNotifyDataResponse, data), ProtoFieldType::TYPE_BYTES, false, 1, {}}}; const FieldMeta BluetoothConnectionsFreeResponse::FIELDS[2] = { {1, PROTO_FIELD_OFFSET(BluetoothConnectionsFreeResponse, free), @@ -4769,10 +4972,10 @@ const RepeatedFieldMeta BluetoothConnectionsFreeResponse::REPEATED_FIELDS[1] = { 0, {.decode_varint = &decode_repeated_uint64_field}}}; const FieldMetaV2 BluetoothConnectionsFreeResponse::FIELDS_V2[2] = { - {1, PROTO_FIELD_OFFSET(BluetoothConnectionsFreeResponse, free), ProtoFieldType::TYPE_UINT32, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(BluetoothConnectionsFreeResponse, limit), ProtoFieldType::TYPE_UINT32, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(BluetoothConnectionsFreeResponse, free), ProtoFieldType::TYPE_UINT32, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(BluetoothConnectionsFreeResponse, limit), ProtoFieldType::TYPE_UINT32, false, 1, {}}}; const RepeatedFieldMetaV2 BluetoothConnectionsFreeResponse::REPEATED_FIELDS_V2[1] = { - {3, PROTO_FIELD_OFFSET(BluetoothConnectionsFreeResponse, allocated), ProtoFieldType::TYPE_UINT64, 1, 0}}; + {3, PROTO_FIELD_OFFSET(BluetoothConnectionsFreeResponse, allocated), ProtoFieldType::TYPE_UINT64, 1, {}}}; const FieldMeta BluetoothGATTErrorResponse::FIELDS[3] = {{1, PROTO_FIELD_OFFSET(BluetoothGATTErrorResponse, address), &encode_uint64_field, @@ -4798,9 +5001,9 @@ const FieldMeta BluetoothGATTErrorResponse::FIELDS[3] = {{1, 1, {.decode_varint = &decode_int32_field}}}; const FieldMetaV2 BluetoothGATTErrorResponse::FIELDS_V2[3] = { - {1, PROTO_FIELD_OFFSET(BluetoothGATTErrorResponse, address), ProtoFieldType::TYPE_UINT64, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(BluetoothGATTErrorResponse, handle), ProtoFieldType::TYPE_UINT32, false, 1, 0}, - {3, PROTO_FIELD_OFFSET(BluetoothGATTErrorResponse, error), ProtoFieldType::TYPE_INT32, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(BluetoothGATTErrorResponse, address), ProtoFieldType::TYPE_UINT64, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(BluetoothGATTErrorResponse, handle), ProtoFieldType::TYPE_UINT32, false, 1, {}}, + {3, PROTO_FIELD_OFFSET(BluetoothGATTErrorResponse, error), ProtoFieldType::TYPE_INT32, false, 1, {}}}; const FieldMeta BluetoothGATTWriteResponse::FIELDS[2] = {{1, PROTO_FIELD_OFFSET(BluetoothGATTWriteResponse, address), &encode_uint64_field, @@ -4818,8 +5021,8 @@ const FieldMeta BluetoothGATTWriteResponse::FIELDS[2] = {{1, 1, {.decode_varint = &decode_uint32_field}}}; const FieldMetaV2 BluetoothGATTWriteResponse::FIELDS_V2[2] = { - {1, PROTO_FIELD_OFFSET(BluetoothGATTWriteResponse, address), ProtoFieldType::TYPE_UINT64, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(BluetoothGATTWriteResponse, handle), ProtoFieldType::TYPE_UINT32, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(BluetoothGATTWriteResponse, address), ProtoFieldType::TYPE_UINT64, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(BluetoothGATTWriteResponse, handle), ProtoFieldType::TYPE_UINT32, false, 1, {}}}; const FieldMeta BluetoothGATTNotifyResponse::FIELDS[2] = {{1, PROTO_FIELD_OFFSET(BluetoothGATTNotifyResponse, address), &encode_uint64_field, @@ -4837,8 +5040,8 @@ const FieldMeta BluetoothGATTNotifyResponse::FIELDS[2] = {{1, 1, {.decode_varint = &decode_uint32_field}}}; const FieldMetaV2 BluetoothGATTNotifyResponse::FIELDS_V2[2] = { - {1, PROTO_FIELD_OFFSET(BluetoothGATTNotifyResponse, address), ProtoFieldType::TYPE_UINT64, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(BluetoothGATTNotifyResponse, handle), ProtoFieldType::TYPE_UINT32, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(BluetoothGATTNotifyResponse, address), ProtoFieldType::TYPE_UINT64, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(BluetoothGATTNotifyResponse, handle), ProtoFieldType::TYPE_UINT32, false, 1, {}}}; const FieldMeta BluetoothDevicePairingResponse::FIELDS[3] = { {1, PROTO_FIELD_OFFSET(BluetoothDevicePairingResponse, address), @@ -4865,9 +5068,9 @@ const FieldMeta BluetoothDevicePairingResponse::FIELDS[3] = { 1, {.decode_varint = &decode_int32_field}}}; const FieldMetaV2 BluetoothDevicePairingResponse::FIELDS_V2[3] = { - {1, PROTO_FIELD_OFFSET(BluetoothDevicePairingResponse, address), ProtoFieldType::TYPE_UINT64, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(BluetoothDevicePairingResponse, paired), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {3, PROTO_FIELD_OFFSET(BluetoothDevicePairingResponse, error), ProtoFieldType::TYPE_INT32, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(BluetoothDevicePairingResponse, address), ProtoFieldType::TYPE_UINT64, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(BluetoothDevicePairingResponse, paired), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {3, PROTO_FIELD_OFFSET(BluetoothDevicePairingResponse, error), ProtoFieldType::TYPE_INT32, false, 1, {}}}; const FieldMeta BluetoothDeviceUnpairingResponse::FIELDS[3] = { {1, PROTO_FIELD_OFFSET(BluetoothDeviceUnpairingResponse, address), @@ -4894,9 +5097,9 @@ const FieldMeta BluetoothDeviceUnpairingResponse::FIELDS[3] = { 1, {.decode_varint = &decode_int32_field}}}; const FieldMetaV2 BluetoothDeviceUnpairingResponse::FIELDS_V2[3] = { - {1, PROTO_FIELD_OFFSET(BluetoothDeviceUnpairingResponse, address), ProtoFieldType::TYPE_UINT64, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(BluetoothDeviceUnpairingResponse, success), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {3, PROTO_FIELD_OFFSET(BluetoothDeviceUnpairingResponse, error), ProtoFieldType::TYPE_INT32, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(BluetoothDeviceUnpairingResponse, address), ProtoFieldType::TYPE_UINT64, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(BluetoothDeviceUnpairingResponse, success), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {3, PROTO_FIELD_OFFSET(BluetoothDeviceUnpairingResponse, error), ProtoFieldType::TYPE_INT32, false, 1, {}}}; const FieldMeta BluetoothDeviceClearCacheResponse::FIELDS[3] = { {1, PROTO_FIELD_OFFSET(BluetoothDeviceClearCacheResponse, address), @@ -4923,9 +5126,9 @@ const FieldMeta BluetoothDeviceClearCacheResponse::FIELDS[3] = { 1, {.decode_varint = &decode_int32_field}}}; const FieldMetaV2 BluetoothDeviceClearCacheResponse::FIELDS_V2[3] = { - {1, PROTO_FIELD_OFFSET(BluetoothDeviceClearCacheResponse, address), ProtoFieldType::TYPE_UINT64, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(BluetoothDeviceClearCacheResponse, success), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {3, PROTO_FIELD_OFFSET(BluetoothDeviceClearCacheResponse, error), ProtoFieldType::TYPE_INT32, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(BluetoothDeviceClearCacheResponse, address), ProtoFieldType::TYPE_UINT64, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(BluetoothDeviceClearCacheResponse, success), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {3, PROTO_FIELD_OFFSET(BluetoothDeviceClearCacheResponse, error), ProtoFieldType::TYPE_INT32, false, 1, {}}}; const FieldMeta BluetoothScannerStateResponse::FIELDS[2] = { {1, PROTO_FIELD_OFFSET(BluetoothScannerStateResponse, state), @@ -4944,8 +5147,8 @@ const FieldMeta BluetoothScannerStateResponse::FIELDS[2] = { 1, {.decode_varint = &decode_enum_field}}}; const FieldMetaV2 BluetoothScannerStateResponse::FIELDS_V2[2] = { - {1, PROTO_FIELD_OFFSET(BluetoothScannerStateResponse, state), ProtoFieldType::TYPE_ENUM, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(BluetoothScannerStateResponse, mode), ProtoFieldType::TYPE_ENUM, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(BluetoothScannerStateResponse, state), ProtoFieldType::TYPE_ENUM, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(BluetoothScannerStateResponse, mode), ProtoFieldType::TYPE_ENUM, false, 1, {}}}; const FieldMeta BluetoothScannerSetModeRequest::FIELDS[1] = { {1, PROTO_FIELD_OFFSET(BluetoothScannerSetModeRequest, mode), @@ -4956,7 +5159,7 @@ const FieldMeta BluetoothScannerSetModeRequest::FIELDS[1] = { 1, {.decode_varint = &decode_enum_field}}}; const FieldMetaV2 BluetoothScannerSetModeRequest::FIELDS_V2[1] = { - {1, PROTO_FIELD_OFFSET(BluetoothScannerSetModeRequest, mode), ProtoFieldType::TYPE_ENUM, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(BluetoothScannerSetModeRequest, mode), ProtoFieldType::TYPE_ENUM, false, 1, {}}}; #endif #ifdef USE_VOICE_ASSISTANT const FieldMeta SubscribeVoiceAssistantRequest::FIELDS[2] = { @@ -4977,8 +5180,8 @@ const FieldMeta SubscribeVoiceAssistantRequest::FIELDS[2] = { 1, {.decode_varint = &decode_uint32_field}}}; const FieldMetaV2 SubscribeVoiceAssistantRequest::FIELDS_V2[2] = { - {1, PROTO_FIELD_OFFSET(SubscribeVoiceAssistantRequest, subscribe), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(SubscribeVoiceAssistantRequest, flags), ProtoFieldType::TYPE_UINT32, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(SubscribeVoiceAssistantRequest, subscribe), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(SubscribeVoiceAssistantRequest, flags), ProtoFieldType::TYPE_UINT32, false, 1, {}}}; const FieldMeta VoiceAssistantAudioSettings::FIELDS[3] = { {1, PROTO_FIELD_OFFSET(VoiceAssistantAudioSettings, noise_suppression_level), @@ -5005,10 +5208,14 @@ const FieldMeta VoiceAssistantAudioSettings::FIELDS[3] = { 1, {.decode_32bit = &decode_float_field}}}; const FieldMetaV2 VoiceAssistantAudioSettings::FIELDS_V2[3] = { - {1, PROTO_FIELD_OFFSET(VoiceAssistantAudioSettings, noise_suppression_level), ProtoFieldType::TYPE_UINT32, false, 1, - 0}, - {2, PROTO_FIELD_OFFSET(VoiceAssistantAudioSettings, auto_gain), ProtoFieldType::TYPE_UINT32, false, 1, 0}, - {3, PROTO_FIELD_OFFSET(VoiceAssistantAudioSettings, volume_multiplier), ProtoFieldType::TYPE_FLOAT, false, 1, 0}}; + {1, + PROTO_FIELD_OFFSET(VoiceAssistantAudioSettings, noise_suppression_level), + ProtoFieldType::TYPE_UINT32, + false, + 1, + {}}, + {2, PROTO_FIELD_OFFSET(VoiceAssistantAudioSettings, auto_gain), ProtoFieldType::TYPE_UINT32, false, 1, {}}, + {3, PROTO_FIELD_OFFSET(VoiceAssistantAudioSettings, volume_multiplier), ProtoFieldType::TYPE_FLOAT, false, 1, {}}}; const FieldMeta VoiceAssistantRequest::FIELDS[4] = {{1, PROTO_FIELD_OFFSET(VoiceAssistantRequest, start), &encode_bool_field, @@ -5042,11 +5249,17 @@ const FieldMeta VoiceAssistantRequest::FIELDS[4] = {{1, 1, {.decode_length = &decode_string_field}}}; const FieldMetaV2 VoiceAssistantRequest::FIELDS_V2[5] = { - {1, PROTO_FIELD_OFFSET(VoiceAssistantRequest, start), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(VoiceAssistantRequest, conversation_id), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {3, PROTO_FIELD_OFFSET(VoiceAssistantRequest, flags), ProtoFieldType::TYPE_UINT32, false, 1, 0}, - {4, PROTO_FIELD_OFFSET(VoiceAssistantRequest, audio_settings), ProtoFieldType::TYPE_MESSAGE, false, 1, 106}, - {5, PROTO_FIELD_OFFSET(VoiceAssistantRequest, wake_word_phrase), ProtoFieldType::TYPE_STRING, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(VoiceAssistantRequest, start), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(VoiceAssistantRequest, conversation_id), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {3, PROTO_FIELD_OFFSET(VoiceAssistantRequest, flags), ProtoFieldType::TYPE_UINT32, false, 1, {}}, + {4, + PROTO_FIELD_OFFSET(VoiceAssistantRequest, audio_settings), + ProtoFieldType::TYPE_MESSAGE, + false, + 1, + {.message = {&encode_message_field, &size_message_field, + &decode_message_field}}}, + {5, PROTO_FIELD_OFFSET(VoiceAssistantRequest, wake_word_phrase), ProtoFieldType::TYPE_STRING, false, 1, {}}}; const FieldMeta VoiceAssistantResponse::FIELDS[2] = {{1, PROTO_FIELD_OFFSET(VoiceAssistantResponse, port), &encode_uint32_field, @@ -5064,8 +5277,8 @@ const FieldMeta VoiceAssistantResponse::FIELDS[2] = {{1, 1, {.decode_varint = &decode_bool_field}}}; const FieldMetaV2 VoiceAssistantResponse::FIELDS_V2[2] = { - {1, PROTO_FIELD_OFFSET(VoiceAssistantResponse, port), ProtoFieldType::TYPE_UINT32, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(VoiceAssistantResponse, error), ProtoFieldType::TYPE_BOOL, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(VoiceAssistantResponse, port), ProtoFieldType::TYPE_UINT32, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(VoiceAssistantResponse, error), ProtoFieldType::TYPE_BOOL, false, 1, {}}}; const FieldMeta VoiceAssistantEventData::FIELDS[2] = {{1, PROTO_FIELD_OFFSET(VoiceAssistantEventData, name), &encode_string_field, @@ -5083,8 +5296,8 @@ const FieldMeta VoiceAssistantEventData::FIELDS[2] = {{1, 1, {.decode_length = &decode_string_field}}}; const FieldMetaV2 VoiceAssistantEventData::FIELDS_V2[2] = { - {1, PROTO_FIELD_OFFSET(VoiceAssistantEventData, name), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(VoiceAssistantEventData, value), ProtoFieldType::TYPE_STRING, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(VoiceAssistantEventData, name), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(VoiceAssistantEventData, value), ProtoFieldType::TYPE_STRING, false, 1, {}}}; const FieldMeta VoiceAssistantEventResponse::FIELDS[1] = { {1, PROTO_FIELD_OFFSET(VoiceAssistantEventResponse, event_type), @@ -5103,9 +5316,15 @@ const RepeatedFieldMeta VoiceAssistantEventResponse::REPEATED_FIELDS[1] = { 2, {.decode_length = &decode_repeated_message_field}}}; const FieldMetaV2 VoiceAssistantEventResponse::FIELDS_V2[1] = { - {1, PROTO_FIELD_OFFSET(VoiceAssistantEventResponse, event_type), ProtoFieldType::TYPE_ENUM, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(VoiceAssistantEventResponse, event_type), ProtoFieldType::TYPE_ENUM, false, 1, {}}}; const RepeatedFieldMetaV2 VoiceAssistantEventResponse::REPEATED_FIELDS_V2[1] = { - {2, PROTO_FIELD_OFFSET(VoiceAssistantEventResponse, data), ProtoFieldType::TYPE_MESSAGE, 1, 109}}; + {2, + PROTO_FIELD_OFFSET(VoiceAssistantEventResponse, data), + ProtoFieldType::TYPE_MESSAGE, + 1, + {.message = {&encode_repeated_message_field, + &size_repeated_message_field, + &decode_repeated_message_field}}}}; const FieldMeta VoiceAssistantAudio::FIELDS[2] = {{1, PROTO_FIELD_OFFSET(VoiceAssistantAudio, data), &encode_bytes_field, @@ -5123,8 +5342,8 @@ const FieldMeta VoiceAssistantAudio::FIELDS[2] = {{1, 1, {.decode_varint = &decode_bool_field}}}; const FieldMetaV2 VoiceAssistantAudio::FIELDS_V2[2] = { - {1, PROTO_FIELD_OFFSET(VoiceAssistantAudio, data), ProtoFieldType::TYPE_BYTES, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(VoiceAssistantAudio, end), ProtoFieldType::TYPE_BOOL, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(VoiceAssistantAudio, data), ProtoFieldType::TYPE_BYTES, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(VoiceAssistantAudio, end), ProtoFieldType::TYPE_BOOL, false, 1, {}}}; const FieldMeta VoiceAssistantTimerEventResponse::FIELDS[6] = { {1, PROTO_FIELD_OFFSET(VoiceAssistantTimerEventResponse, event_type), @@ -5175,12 +5394,12 @@ const FieldMeta VoiceAssistantTimerEventResponse::FIELDS[6] = { 1, {.decode_varint = &decode_bool_field}}}; const FieldMetaV2 VoiceAssistantTimerEventResponse::FIELDS_V2[6] = { - {1, PROTO_FIELD_OFFSET(VoiceAssistantTimerEventResponse, event_type), ProtoFieldType::TYPE_ENUM, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(VoiceAssistantTimerEventResponse, timer_id), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {3, PROTO_FIELD_OFFSET(VoiceAssistantTimerEventResponse, name), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {4, PROTO_FIELD_OFFSET(VoiceAssistantTimerEventResponse, total_seconds), ProtoFieldType::TYPE_UINT32, false, 1, 0}, - {5, PROTO_FIELD_OFFSET(VoiceAssistantTimerEventResponse, seconds_left), ProtoFieldType::TYPE_UINT32, false, 1, 0}, - {6, PROTO_FIELD_OFFSET(VoiceAssistantTimerEventResponse, is_active), ProtoFieldType::TYPE_BOOL, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(VoiceAssistantTimerEventResponse, event_type), ProtoFieldType::TYPE_ENUM, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(VoiceAssistantTimerEventResponse, timer_id), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {3, PROTO_FIELD_OFFSET(VoiceAssistantTimerEventResponse, name), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {4, PROTO_FIELD_OFFSET(VoiceAssistantTimerEventResponse, total_seconds), ProtoFieldType::TYPE_UINT32, false, 1, {}}, + {5, PROTO_FIELD_OFFSET(VoiceAssistantTimerEventResponse, seconds_left), ProtoFieldType::TYPE_UINT32, false, 1, {}}, + {6, PROTO_FIELD_OFFSET(VoiceAssistantTimerEventResponse, is_active), ProtoFieldType::TYPE_BOOL, false, 1, {}}}; const FieldMeta VoiceAssistantAnnounceRequest::FIELDS[4] = { {1, PROTO_FIELD_OFFSET(VoiceAssistantAnnounceRequest, media_id), @@ -5215,11 +5434,20 @@ const FieldMeta VoiceAssistantAnnounceRequest::FIELDS[4] = { 1, {.decode_varint = &decode_bool_field}}}; const FieldMetaV2 VoiceAssistantAnnounceRequest::FIELDS_V2[4] = { - {1, PROTO_FIELD_OFFSET(VoiceAssistantAnnounceRequest, media_id), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(VoiceAssistantAnnounceRequest, text), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {3, PROTO_FIELD_OFFSET(VoiceAssistantAnnounceRequest, preannounce_media_id), ProtoFieldType::TYPE_STRING, false, 1, - 0}, - {4, PROTO_FIELD_OFFSET(VoiceAssistantAnnounceRequest, start_conversation), ProtoFieldType::TYPE_BOOL, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(VoiceAssistantAnnounceRequest, media_id), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(VoiceAssistantAnnounceRequest, text), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {3, + PROTO_FIELD_OFFSET(VoiceAssistantAnnounceRequest, preannounce_media_id), + ProtoFieldType::TYPE_STRING, + false, + 1, + {}}, + {4, + PROTO_FIELD_OFFSET(VoiceAssistantAnnounceRequest, start_conversation), + ProtoFieldType::TYPE_BOOL, + false, + 1, + {}}}; const FieldMeta VoiceAssistantAnnounceFinished::FIELDS[1] = { {1, PROTO_FIELD_OFFSET(VoiceAssistantAnnounceFinished, success), @@ -5230,7 +5458,7 @@ const FieldMeta VoiceAssistantAnnounceFinished::FIELDS[1] = { 1, {.decode_varint = &decode_bool_field}}}; const FieldMetaV2 VoiceAssistantAnnounceFinished::FIELDS_V2[1] = { - {1, PROTO_FIELD_OFFSET(VoiceAssistantAnnounceFinished, success), ProtoFieldType::TYPE_BOOL, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(VoiceAssistantAnnounceFinished, success), ProtoFieldType::TYPE_BOOL, false, 1, {}}}; const FieldMeta VoiceAssistantWakeWord::FIELDS[2] = {{1, PROTO_FIELD_OFFSET(VoiceAssistantWakeWord, id), &encode_string_field, @@ -5256,10 +5484,10 @@ const RepeatedFieldMeta VoiceAssistantWakeWord::REPEATED_FIELDS[1] = { 2, {.decode_length = &decode_repeated_string_field}}}; const FieldMetaV2 VoiceAssistantWakeWord::FIELDS_V2[2] = { - {1, PROTO_FIELD_OFFSET(VoiceAssistantWakeWord, id), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(VoiceAssistantWakeWord, wake_word), ProtoFieldType::TYPE_STRING, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(VoiceAssistantWakeWord, id), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(VoiceAssistantWakeWord, wake_word), ProtoFieldType::TYPE_STRING, false, 1, {}}}; const RepeatedFieldMetaV2 VoiceAssistantWakeWord::REPEATED_FIELDS_V2[1] = { - {3, PROTO_FIELD_OFFSET(VoiceAssistantWakeWord, trained_languages), ProtoFieldType::TYPE_STRING, 1, 0}}; + {3, PROTO_FIELD_OFFSET(VoiceAssistantWakeWord, trained_languages), ProtoFieldType::TYPE_STRING, 1, {}}}; const FieldMeta VoiceAssistantConfigurationResponse::FIELDS[1] = { {3, PROTO_FIELD_OFFSET(VoiceAssistantConfigurationResponse, max_active_wake_words), @@ -5285,12 +5513,25 @@ const RepeatedFieldMeta VoiceAssistantConfigurationResponse::REPEATED_FIELDS[2] 2, {.decode_length = &decode_repeated_string_field}}}; const FieldMetaV2 VoiceAssistantConfigurationResponse::FIELDS_V2[1] = { - {3, PROTO_FIELD_OFFSET(VoiceAssistantConfigurationResponse, max_active_wake_words), ProtoFieldType::TYPE_UINT32, - false, 1, 0}}; + {3, + PROTO_FIELD_OFFSET(VoiceAssistantConfigurationResponse, max_active_wake_words), + ProtoFieldType::TYPE_UINT32, + false, + 1, + {}}}; const RepeatedFieldMetaV2 VoiceAssistantConfigurationResponse::REPEATED_FIELDS_V2[2] = { - {1, PROTO_FIELD_OFFSET(VoiceAssistantConfigurationResponse, available_wake_words), ProtoFieldType::TYPE_MESSAGE, 1, - 115}, - {2, PROTO_FIELD_OFFSET(VoiceAssistantConfigurationResponse, active_wake_words), ProtoFieldType::TYPE_STRING, 1, 0}}; + {1, + PROTO_FIELD_OFFSET(VoiceAssistantConfigurationResponse, available_wake_words), + ProtoFieldType::TYPE_MESSAGE, + 1, + {.message = {&encode_repeated_message_field, + &size_repeated_message_field, + &decode_repeated_message_field}}}, + {2, + PROTO_FIELD_OFFSET(VoiceAssistantConfigurationResponse, active_wake_words), + ProtoFieldType::TYPE_STRING, + 1, + {}}}; const RepeatedFieldMeta VoiceAssistantSetConfiguration::REPEATED_FIELDS[1] = { {1, PROTO_FIELD_OFFSET(VoiceAssistantSetConfiguration, active_wake_words), @@ -5300,7 +5541,7 @@ const RepeatedFieldMeta VoiceAssistantSetConfiguration::REPEATED_FIELDS[1] = { 2, {.decode_length = &decode_repeated_string_field}}}; const RepeatedFieldMetaV2 VoiceAssistantSetConfiguration::REPEATED_FIELDS_V2[1] = { - {1, PROTO_FIELD_OFFSET(VoiceAssistantSetConfiguration, active_wake_words), ProtoFieldType::TYPE_STRING, 1, 0}}; + {1, PROTO_FIELD_OFFSET(VoiceAssistantSetConfiguration, active_wake_words), ProtoFieldType::TYPE_STRING, 1, {}}}; #endif #ifdef USE_ALARM_CONTROL_PANEL const FieldMeta ListEntitiesAlarmControlPanelResponse::FIELDS[11] = { @@ -5393,23 +5634,57 @@ const FieldMeta ListEntitiesAlarmControlPanelResponse::FIELDS[11] = { 1, {.decode_varint = &decode_uint32_field}}}; const FieldMetaV2 ListEntitiesAlarmControlPanelResponse::FIELDS_V2[11] = { - {1, PROTO_FIELD_OFFSET(ListEntitiesAlarmControlPanelResponse, object_id), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(ListEntitiesAlarmControlPanelResponse, key), ProtoFieldType::TYPE_FIXED32, false, 1, 0}, - {3, PROTO_FIELD_OFFSET(ListEntitiesAlarmControlPanelResponse, name), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {4, PROTO_FIELD_OFFSET(ListEntitiesAlarmControlPanelResponse, unique_id), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {5, PROTO_FIELD_OFFSET(ListEntitiesAlarmControlPanelResponse, icon), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {6, PROTO_FIELD_OFFSET(ListEntitiesAlarmControlPanelResponse, disabled_by_default), ProtoFieldType::TYPE_BOOL, - false, 1, 0}, - {7, PROTO_FIELD_OFFSET(ListEntitiesAlarmControlPanelResponse, entity_category), ProtoFieldType::TYPE_ENUM, false, 1, - 0}, - {8, PROTO_FIELD_OFFSET(ListEntitiesAlarmControlPanelResponse, supported_features), ProtoFieldType::TYPE_UINT32, - false, 1, 0}, - {9, PROTO_FIELD_OFFSET(ListEntitiesAlarmControlPanelResponse, requires_code), ProtoFieldType::TYPE_BOOL, false, 1, - 0}, - {10, PROTO_FIELD_OFFSET(ListEntitiesAlarmControlPanelResponse, requires_code_to_arm), ProtoFieldType::TYPE_BOOL, - false, 1, 0}, - {11, PROTO_FIELD_OFFSET(ListEntitiesAlarmControlPanelResponse, device_id), ProtoFieldType::TYPE_UINT32, false, 1, - 0}}; + {1, + PROTO_FIELD_OFFSET(ListEntitiesAlarmControlPanelResponse, object_id), + ProtoFieldType::TYPE_STRING, + false, + 1, + {}}, + {2, PROTO_FIELD_OFFSET(ListEntitiesAlarmControlPanelResponse, key), ProtoFieldType::TYPE_FIXED32, false, 1, {}}, + {3, PROTO_FIELD_OFFSET(ListEntitiesAlarmControlPanelResponse, name), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {4, + PROTO_FIELD_OFFSET(ListEntitiesAlarmControlPanelResponse, unique_id), + ProtoFieldType::TYPE_STRING, + false, + 1, + {}}, + {5, PROTO_FIELD_OFFSET(ListEntitiesAlarmControlPanelResponse, icon), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {6, + PROTO_FIELD_OFFSET(ListEntitiesAlarmControlPanelResponse, disabled_by_default), + ProtoFieldType::TYPE_BOOL, + false, + 1, + {}}, + {7, + PROTO_FIELD_OFFSET(ListEntitiesAlarmControlPanelResponse, entity_category), + ProtoFieldType::TYPE_ENUM, + false, + 1, + {}}, + {8, + PROTO_FIELD_OFFSET(ListEntitiesAlarmControlPanelResponse, supported_features), + ProtoFieldType::TYPE_UINT32, + false, + 1, + {}}, + {9, + PROTO_FIELD_OFFSET(ListEntitiesAlarmControlPanelResponse, requires_code), + ProtoFieldType::TYPE_BOOL, + false, + 1, + {}}, + {10, + PROTO_FIELD_OFFSET(ListEntitiesAlarmControlPanelResponse, requires_code_to_arm), + ProtoFieldType::TYPE_BOOL, + false, + 1, + {}}, + {11, + PROTO_FIELD_OFFSET(ListEntitiesAlarmControlPanelResponse, device_id), + ProtoFieldType::TYPE_UINT32, + false, + 1, + {}}}; const FieldMeta AlarmControlPanelStateResponse::FIELDS[3] = { {1, PROTO_FIELD_OFFSET(AlarmControlPanelStateResponse, key), @@ -5436,9 +5711,9 @@ const FieldMeta AlarmControlPanelStateResponse::FIELDS[3] = { 1, {.decode_varint = &decode_uint32_field}}}; const FieldMetaV2 AlarmControlPanelStateResponse::FIELDS_V2[3] = { - {1, PROTO_FIELD_OFFSET(AlarmControlPanelStateResponse, key), ProtoFieldType::TYPE_FIXED32, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(AlarmControlPanelStateResponse, state), ProtoFieldType::TYPE_ENUM, false, 1, 0}, - {3, PROTO_FIELD_OFFSET(AlarmControlPanelStateResponse, device_id), ProtoFieldType::TYPE_UINT32, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(AlarmControlPanelStateResponse, key), ProtoFieldType::TYPE_FIXED32, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(AlarmControlPanelStateResponse, state), ProtoFieldType::TYPE_ENUM, false, 1, {}}, + {3, PROTO_FIELD_OFFSET(AlarmControlPanelStateResponse, device_id), ProtoFieldType::TYPE_UINT32, false, 1, {}}}; const FieldMeta AlarmControlPanelCommandRequest::FIELDS[3] = { {1, PROTO_FIELD_OFFSET(AlarmControlPanelCommandRequest, key), @@ -5465,9 +5740,9 @@ const FieldMeta AlarmControlPanelCommandRequest::FIELDS[3] = { 1, {.decode_length = &decode_string_field}}}; const FieldMetaV2 AlarmControlPanelCommandRequest::FIELDS_V2[3] = { - {1, PROTO_FIELD_OFFSET(AlarmControlPanelCommandRequest, key), ProtoFieldType::TYPE_FIXED32, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(AlarmControlPanelCommandRequest, command), ProtoFieldType::TYPE_ENUM, false, 1, 0}, - {3, PROTO_FIELD_OFFSET(AlarmControlPanelCommandRequest, code), ProtoFieldType::TYPE_STRING, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(AlarmControlPanelCommandRequest, key), ProtoFieldType::TYPE_FIXED32, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(AlarmControlPanelCommandRequest, command), ProtoFieldType::TYPE_ENUM, false, 1, {}}, + {3, PROTO_FIELD_OFFSET(AlarmControlPanelCommandRequest, code), ProtoFieldType::TYPE_STRING, false, 1, {}}}; #endif #ifdef USE_TEXT const FieldMeta ListEntitiesTextResponse::FIELDS[12] = { @@ -5568,18 +5843,18 @@ const FieldMeta ListEntitiesTextResponse::FIELDS[12] = { 1, {.decode_varint = &decode_uint32_field}}}; const FieldMetaV2 ListEntitiesTextResponse::FIELDS_V2[12] = { - {1, PROTO_FIELD_OFFSET(ListEntitiesTextResponse, object_id), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(ListEntitiesTextResponse, key), ProtoFieldType::TYPE_FIXED32, false, 1, 0}, - {3, PROTO_FIELD_OFFSET(ListEntitiesTextResponse, name), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {4, PROTO_FIELD_OFFSET(ListEntitiesTextResponse, unique_id), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {5, PROTO_FIELD_OFFSET(ListEntitiesTextResponse, icon), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {6, PROTO_FIELD_OFFSET(ListEntitiesTextResponse, disabled_by_default), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {7, PROTO_FIELD_OFFSET(ListEntitiesTextResponse, entity_category), ProtoFieldType::TYPE_ENUM, false, 1, 0}, - {8, PROTO_FIELD_OFFSET(ListEntitiesTextResponse, min_length), ProtoFieldType::TYPE_UINT32, false, 1, 0}, - {9, PROTO_FIELD_OFFSET(ListEntitiesTextResponse, max_length), ProtoFieldType::TYPE_UINT32, false, 1, 0}, - {10, PROTO_FIELD_OFFSET(ListEntitiesTextResponse, pattern), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {11, PROTO_FIELD_OFFSET(ListEntitiesTextResponse, mode), ProtoFieldType::TYPE_ENUM, false, 1, 0}, - {12, PROTO_FIELD_OFFSET(ListEntitiesTextResponse, device_id), ProtoFieldType::TYPE_UINT32, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(ListEntitiesTextResponse, object_id), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(ListEntitiesTextResponse, key), ProtoFieldType::TYPE_FIXED32, false, 1, {}}, + {3, PROTO_FIELD_OFFSET(ListEntitiesTextResponse, name), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {4, PROTO_FIELD_OFFSET(ListEntitiesTextResponse, unique_id), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {5, PROTO_FIELD_OFFSET(ListEntitiesTextResponse, icon), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {6, PROTO_FIELD_OFFSET(ListEntitiesTextResponse, disabled_by_default), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {7, PROTO_FIELD_OFFSET(ListEntitiesTextResponse, entity_category), ProtoFieldType::TYPE_ENUM, false, 1, {}}, + {8, PROTO_FIELD_OFFSET(ListEntitiesTextResponse, min_length), ProtoFieldType::TYPE_UINT32, false, 1, {}}, + {9, PROTO_FIELD_OFFSET(ListEntitiesTextResponse, max_length), ProtoFieldType::TYPE_UINT32, false, 1, {}}, + {10, PROTO_FIELD_OFFSET(ListEntitiesTextResponse, pattern), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {11, PROTO_FIELD_OFFSET(ListEntitiesTextResponse, mode), ProtoFieldType::TYPE_ENUM, false, 1, {}}, + {12, PROTO_FIELD_OFFSET(ListEntitiesTextResponse, device_id), ProtoFieldType::TYPE_UINT32, false, 1, {}}}; const FieldMeta TextStateResponse::FIELDS[4] = {{1, PROTO_FIELD_OFFSET(TextStateResponse, key), &encode_fixed32_field, @@ -5613,10 +5888,10 @@ const FieldMeta TextStateResponse::FIELDS[4] = {{1, 1, {.decode_varint = &decode_uint32_field}}}; const FieldMetaV2 TextStateResponse::FIELDS_V2[4] = { - {1, PROTO_FIELD_OFFSET(TextStateResponse, key), ProtoFieldType::TYPE_FIXED32, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(TextStateResponse, state), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {3, PROTO_FIELD_OFFSET(TextStateResponse, missing_state), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {4, PROTO_FIELD_OFFSET(TextStateResponse, device_id), ProtoFieldType::TYPE_UINT32, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(TextStateResponse, key), ProtoFieldType::TYPE_FIXED32, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(TextStateResponse, state), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {3, PROTO_FIELD_OFFSET(TextStateResponse, missing_state), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {4, PROTO_FIELD_OFFSET(TextStateResponse, device_id), ProtoFieldType::TYPE_UINT32, false, 1, {}}}; const FieldMeta TextCommandRequest::FIELDS[2] = {{1, PROTO_FIELD_OFFSET(TextCommandRequest, key), &encode_fixed32_field, @@ -5634,8 +5909,8 @@ const FieldMeta TextCommandRequest::FIELDS[2] = {{1, 1, {.decode_length = &decode_string_field}}}; const FieldMetaV2 TextCommandRequest::FIELDS_V2[2] = { - {1, PROTO_FIELD_OFFSET(TextCommandRequest, key), ProtoFieldType::TYPE_FIXED32, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(TextCommandRequest, state), ProtoFieldType::TYPE_STRING, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(TextCommandRequest, key), ProtoFieldType::TYPE_FIXED32, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(TextCommandRequest, state), ProtoFieldType::TYPE_STRING, false, 1, {}}}; #endif #ifdef USE_DATETIME_DATE const FieldMeta ListEntitiesDateResponse::FIELDS[8] = { @@ -5704,14 +5979,14 @@ const FieldMeta ListEntitiesDateResponse::FIELDS[8] = { 1, {.decode_varint = &decode_uint32_field}}}; const FieldMetaV2 ListEntitiesDateResponse::FIELDS_V2[8] = { - {1, PROTO_FIELD_OFFSET(ListEntitiesDateResponse, object_id), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(ListEntitiesDateResponse, key), ProtoFieldType::TYPE_FIXED32, false, 1, 0}, - {3, PROTO_FIELD_OFFSET(ListEntitiesDateResponse, name), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {4, PROTO_FIELD_OFFSET(ListEntitiesDateResponse, unique_id), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {5, PROTO_FIELD_OFFSET(ListEntitiesDateResponse, icon), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {6, PROTO_FIELD_OFFSET(ListEntitiesDateResponse, disabled_by_default), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {7, PROTO_FIELD_OFFSET(ListEntitiesDateResponse, entity_category), ProtoFieldType::TYPE_ENUM, false, 1, 0}, - {8, PROTO_FIELD_OFFSET(ListEntitiesDateResponse, device_id), ProtoFieldType::TYPE_UINT32, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(ListEntitiesDateResponse, object_id), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(ListEntitiesDateResponse, key), ProtoFieldType::TYPE_FIXED32, false, 1, {}}, + {3, PROTO_FIELD_OFFSET(ListEntitiesDateResponse, name), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {4, PROTO_FIELD_OFFSET(ListEntitiesDateResponse, unique_id), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {5, PROTO_FIELD_OFFSET(ListEntitiesDateResponse, icon), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {6, PROTO_FIELD_OFFSET(ListEntitiesDateResponse, disabled_by_default), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {7, PROTO_FIELD_OFFSET(ListEntitiesDateResponse, entity_category), ProtoFieldType::TYPE_ENUM, false, 1, {}}, + {8, PROTO_FIELD_OFFSET(ListEntitiesDateResponse, device_id), ProtoFieldType::TYPE_UINT32, false, 1, {}}}; const FieldMeta DateStateResponse::FIELDS[6] = {{1, PROTO_FIELD_OFFSET(DateStateResponse, key), &encode_fixed32_field, @@ -5761,12 +6036,12 @@ const FieldMeta DateStateResponse::FIELDS[6] = {{1, 1, {.decode_varint = &decode_uint32_field}}}; const FieldMetaV2 DateStateResponse::FIELDS_V2[6] = { - {1, PROTO_FIELD_OFFSET(DateStateResponse, key), ProtoFieldType::TYPE_FIXED32, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(DateStateResponse, missing_state), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {3, PROTO_FIELD_OFFSET(DateStateResponse, year), ProtoFieldType::TYPE_UINT32, false, 1, 0}, - {4, PROTO_FIELD_OFFSET(DateStateResponse, month), ProtoFieldType::TYPE_UINT32, false, 1, 0}, - {5, PROTO_FIELD_OFFSET(DateStateResponse, day), ProtoFieldType::TYPE_UINT32, false, 1, 0}, - {6, PROTO_FIELD_OFFSET(DateStateResponse, device_id), ProtoFieldType::TYPE_UINT32, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(DateStateResponse, key), ProtoFieldType::TYPE_FIXED32, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(DateStateResponse, missing_state), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {3, PROTO_FIELD_OFFSET(DateStateResponse, year), ProtoFieldType::TYPE_UINT32, false, 1, {}}, + {4, PROTO_FIELD_OFFSET(DateStateResponse, month), ProtoFieldType::TYPE_UINT32, false, 1, {}}, + {5, PROTO_FIELD_OFFSET(DateStateResponse, day), ProtoFieldType::TYPE_UINT32, false, 1, {}}, + {6, PROTO_FIELD_OFFSET(DateStateResponse, device_id), ProtoFieldType::TYPE_UINT32, false, 1, {}}}; const FieldMeta DateCommandRequest::FIELDS[4] = {{1, PROTO_FIELD_OFFSET(DateCommandRequest, key), &encode_fixed32_field, @@ -5800,10 +6075,10 @@ const FieldMeta DateCommandRequest::FIELDS[4] = {{1, 1, {.decode_varint = &decode_uint32_field}}}; const FieldMetaV2 DateCommandRequest::FIELDS_V2[4] = { - {1, PROTO_FIELD_OFFSET(DateCommandRequest, key), ProtoFieldType::TYPE_FIXED32, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(DateCommandRequest, year), ProtoFieldType::TYPE_UINT32, false, 1, 0}, - {3, PROTO_FIELD_OFFSET(DateCommandRequest, month), ProtoFieldType::TYPE_UINT32, false, 1, 0}, - {4, PROTO_FIELD_OFFSET(DateCommandRequest, day), ProtoFieldType::TYPE_UINT32, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(DateCommandRequest, key), ProtoFieldType::TYPE_FIXED32, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(DateCommandRequest, year), ProtoFieldType::TYPE_UINT32, false, 1, {}}, + {3, PROTO_FIELD_OFFSET(DateCommandRequest, month), ProtoFieldType::TYPE_UINT32, false, 1, {}}, + {4, PROTO_FIELD_OFFSET(DateCommandRequest, day), ProtoFieldType::TYPE_UINT32, false, 1, {}}}; #endif #ifdef USE_DATETIME_TIME const FieldMeta ListEntitiesTimeResponse::FIELDS[8] = { @@ -5872,14 +6147,14 @@ const FieldMeta ListEntitiesTimeResponse::FIELDS[8] = { 1, {.decode_varint = &decode_uint32_field}}}; const FieldMetaV2 ListEntitiesTimeResponse::FIELDS_V2[8] = { - {1, PROTO_FIELD_OFFSET(ListEntitiesTimeResponse, object_id), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(ListEntitiesTimeResponse, key), ProtoFieldType::TYPE_FIXED32, false, 1, 0}, - {3, PROTO_FIELD_OFFSET(ListEntitiesTimeResponse, name), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {4, PROTO_FIELD_OFFSET(ListEntitiesTimeResponse, unique_id), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {5, PROTO_FIELD_OFFSET(ListEntitiesTimeResponse, icon), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {6, PROTO_FIELD_OFFSET(ListEntitiesTimeResponse, disabled_by_default), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {7, PROTO_FIELD_OFFSET(ListEntitiesTimeResponse, entity_category), ProtoFieldType::TYPE_ENUM, false, 1, 0}, - {8, PROTO_FIELD_OFFSET(ListEntitiesTimeResponse, device_id), ProtoFieldType::TYPE_UINT32, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(ListEntitiesTimeResponse, object_id), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(ListEntitiesTimeResponse, key), ProtoFieldType::TYPE_FIXED32, false, 1, {}}, + {3, PROTO_FIELD_OFFSET(ListEntitiesTimeResponse, name), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {4, PROTO_FIELD_OFFSET(ListEntitiesTimeResponse, unique_id), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {5, PROTO_FIELD_OFFSET(ListEntitiesTimeResponse, icon), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {6, PROTO_FIELD_OFFSET(ListEntitiesTimeResponse, disabled_by_default), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {7, PROTO_FIELD_OFFSET(ListEntitiesTimeResponse, entity_category), ProtoFieldType::TYPE_ENUM, false, 1, {}}, + {8, PROTO_FIELD_OFFSET(ListEntitiesTimeResponse, device_id), ProtoFieldType::TYPE_UINT32, false, 1, {}}}; const FieldMeta TimeStateResponse::FIELDS[6] = {{1, PROTO_FIELD_OFFSET(TimeStateResponse, key), &encode_fixed32_field, @@ -5929,12 +6204,12 @@ const FieldMeta TimeStateResponse::FIELDS[6] = {{1, 1, {.decode_varint = &decode_uint32_field}}}; const FieldMetaV2 TimeStateResponse::FIELDS_V2[6] = { - {1, PROTO_FIELD_OFFSET(TimeStateResponse, key), ProtoFieldType::TYPE_FIXED32, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(TimeStateResponse, missing_state), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {3, PROTO_FIELD_OFFSET(TimeStateResponse, hour), ProtoFieldType::TYPE_UINT32, false, 1, 0}, - {4, PROTO_FIELD_OFFSET(TimeStateResponse, minute), ProtoFieldType::TYPE_UINT32, false, 1, 0}, - {5, PROTO_FIELD_OFFSET(TimeStateResponse, second), ProtoFieldType::TYPE_UINT32, false, 1, 0}, - {6, PROTO_FIELD_OFFSET(TimeStateResponse, device_id), ProtoFieldType::TYPE_UINT32, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(TimeStateResponse, key), ProtoFieldType::TYPE_FIXED32, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(TimeStateResponse, missing_state), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {3, PROTO_FIELD_OFFSET(TimeStateResponse, hour), ProtoFieldType::TYPE_UINT32, false, 1, {}}, + {4, PROTO_FIELD_OFFSET(TimeStateResponse, minute), ProtoFieldType::TYPE_UINT32, false, 1, {}}, + {5, PROTO_FIELD_OFFSET(TimeStateResponse, second), ProtoFieldType::TYPE_UINT32, false, 1, {}}, + {6, PROTO_FIELD_OFFSET(TimeStateResponse, device_id), ProtoFieldType::TYPE_UINT32, false, 1, {}}}; const FieldMeta TimeCommandRequest::FIELDS[4] = {{1, PROTO_FIELD_OFFSET(TimeCommandRequest, key), &encode_fixed32_field, @@ -5968,10 +6243,10 @@ const FieldMeta TimeCommandRequest::FIELDS[4] = {{1, 1, {.decode_varint = &decode_uint32_field}}}; const FieldMetaV2 TimeCommandRequest::FIELDS_V2[4] = { - {1, PROTO_FIELD_OFFSET(TimeCommandRequest, key), ProtoFieldType::TYPE_FIXED32, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(TimeCommandRequest, hour), ProtoFieldType::TYPE_UINT32, false, 1, 0}, - {3, PROTO_FIELD_OFFSET(TimeCommandRequest, minute), ProtoFieldType::TYPE_UINT32, false, 1, 0}, - {4, PROTO_FIELD_OFFSET(TimeCommandRequest, second), ProtoFieldType::TYPE_UINT32, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(TimeCommandRequest, key), ProtoFieldType::TYPE_FIXED32, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(TimeCommandRequest, hour), ProtoFieldType::TYPE_UINT32, false, 1, {}}, + {3, PROTO_FIELD_OFFSET(TimeCommandRequest, minute), ProtoFieldType::TYPE_UINT32, false, 1, {}}, + {4, PROTO_FIELD_OFFSET(TimeCommandRequest, second), ProtoFieldType::TYPE_UINT32, false, 1, {}}}; #endif #ifdef USE_EVENT const FieldMeta ListEntitiesEventResponse::FIELDS[9] = { @@ -6056,17 +6331,17 @@ const RepeatedFieldMeta ListEntitiesEventResponse::REPEATED_FIELDS[1] = { 2, {.decode_length = &decode_repeated_string_field}}}; const FieldMetaV2 ListEntitiesEventResponse::FIELDS_V2[9] = { - {1, PROTO_FIELD_OFFSET(ListEntitiesEventResponse, object_id), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(ListEntitiesEventResponse, key), ProtoFieldType::TYPE_FIXED32, false, 1, 0}, - {3, PROTO_FIELD_OFFSET(ListEntitiesEventResponse, name), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {4, PROTO_FIELD_OFFSET(ListEntitiesEventResponse, unique_id), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {5, PROTO_FIELD_OFFSET(ListEntitiesEventResponse, icon), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {6, PROTO_FIELD_OFFSET(ListEntitiesEventResponse, disabled_by_default), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {7, PROTO_FIELD_OFFSET(ListEntitiesEventResponse, entity_category), ProtoFieldType::TYPE_ENUM, false, 1, 0}, - {8, PROTO_FIELD_OFFSET(ListEntitiesEventResponse, device_class), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {10, PROTO_FIELD_OFFSET(ListEntitiesEventResponse, device_id), ProtoFieldType::TYPE_UINT32, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(ListEntitiesEventResponse, object_id), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(ListEntitiesEventResponse, key), ProtoFieldType::TYPE_FIXED32, false, 1, {}}, + {3, PROTO_FIELD_OFFSET(ListEntitiesEventResponse, name), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {4, PROTO_FIELD_OFFSET(ListEntitiesEventResponse, unique_id), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {5, PROTO_FIELD_OFFSET(ListEntitiesEventResponse, icon), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {6, PROTO_FIELD_OFFSET(ListEntitiesEventResponse, disabled_by_default), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {7, PROTO_FIELD_OFFSET(ListEntitiesEventResponse, entity_category), ProtoFieldType::TYPE_ENUM, false, 1, {}}, + {8, PROTO_FIELD_OFFSET(ListEntitiesEventResponse, device_class), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {10, PROTO_FIELD_OFFSET(ListEntitiesEventResponse, device_id), ProtoFieldType::TYPE_UINT32, false, 1, {}}}; const RepeatedFieldMetaV2 ListEntitiesEventResponse::REPEATED_FIELDS_V2[1] = { - {9, PROTO_FIELD_OFFSET(ListEntitiesEventResponse, event_types), ProtoFieldType::TYPE_STRING, 1, 0}}; + {9, PROTO_FIELD_OFFSET(ListEntitiesEventResponse, event_types), ProtoFieldType::TYPE_STRING, 1, {}}}; const FieldMeta EventResponse::FIELDS[3] = {{1, PROTO_FIELD_OFFSET(EventResponse, key), &encode_fixed32_field, @@ -6092,9 +6367,9 @@ const FieldMeta EventResponse::FIELDS[3] = {{1, 1, {.decode_varint = &decode_uint32_field}}}; const FieldMetaV2 EventResponse::FIELDS_V2[3] = { - {1, PROTO_FIELD_OFFSET(EventResponse, key), ProtoFieldType::TYPE_FIXED32, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(EventResponse, event_type), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {3, PROTO_FIELD_OFFSET(EventResponse, device_id), ProtoFieldType::TYPE_UINT32, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(EventResponse, key), ProtoFieldType::TYPE_FIXED32, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(EventResponse, event_type), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {3, PROTO_FIELD_OFFSET(EventResponse, device_id), ProtoFieldType::TYPE_UINT32, false, 1, {}}}; #endif #ifdef USE_VALVE const FieldMeta ListEntitiesValveResponse::FIELDS[12] = { @@ -6195,18 +6470,18 @@ const FieldMeta ListEntitiesValveResponse::FIELDS[12] = { 1, {.decode_varint = &decode_uint32_field}}}; const FieldMetaV2 ListEntitiesValveResponse::FIELDS_V2[12] = { - {1, PROTO_FIELD_OFFSET(ListEntitiesValveResponse, object_id), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(ListEntitiesValveResponse, key), ProtoFieldType::TYPE_FIXED32, false, 1, 0}, - {3, PROTO_FIELD_OFFSET(ListEntitiesValveResponse, name), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {4, PROTO_FIELD_OFFSET(ListEntitiesValveResponse, unique_id), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {5, PROTO_FIELD_OFFSET(ListEntitiesValveResponse, icon), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {6, PROTO_FIELD_OFFSET(ListEntitiesValveResponse, disabled_by_default), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {7, PROTO_FIELD_OFFSET(ListEntitiesValveResponse, entity_category), ProtoFieldType::TYPE_ENUM, false, 1, 0}, - {8, PROTO_FIELD_OFFSET(ListEntitiesValveResponse, device_class), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {9, PROTO_FIELD_OFFSET(ListEntitiesValveResponse, assumed_state), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {10, PROTO_FIELD_OFFSET(ListEntitiesValveResponse, supports_position), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {11, PROTO_FIELD_OFFSET(ListEntitiesValveResponse, supports_stop), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {12, PROTO_FIELD_OFFSET(ListEntitiesValveResponse, device_id), ProtoFieldType::TYPE_UINT32, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(ListEntitiesValveResponse, object_id), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(ListEntitiesValveResponse, key), ProtoFieldType::TYPE_FIXED32, false, 1, {}}, + {3, PROTO_FIELD_OFFSET(ListEntitiesValveResponse, name), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {4, PROTO_FIELD_OFFSET(ListEntitiesValveResponse, unique_id), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {5, PROTO_FIELD_OFFSET(ListEntitiesValveResponse, icon), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {6, PROTO_FIELD_OFFSET(ListEntitiesValveResponse, disabled_by_default), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {7, PROTO_FIELD_OFFSET(ListEntitiesValveResponse, entity_category), ProtoFieldType::TYPE_ENUM, false, 1, {}}, + {8, PROTO_FIELD_OFFSET(ListEntitiesValveResponse, device_class), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {9, PROTO_FIELD_OFFSET(ListEntitiesValveResponse, assumed_state), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {10, PROTO_FIELD_OFFSET(ListEntitiesValveResponse, supports_position), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {11, PROTO_FIELD_OFFSET(ListEntitiesValveResponse, supports_stop), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {12, PROTO_FIELD_OFFSET(ListEntitiesValveResponse, device_id), ProtoFieldType::TYPE_UINT32, false, 1, {}}}; const FieldMeta ValveStateResponse::FIELDS[4] = {{1, PROTO_FIELD_OFFSET(ValveStateResponse, key), &encode_fixed32_field, @@ -6240,10 +6515,10 @@ const FieldMeta ValveStateResponse::FIELDS[4] = {{1, 1, {.decode_varint = &decode_uint32_field}}}; const FieldMetaV2 ValveStateResponse::FIELDS_V2[4] = { - {1, PROTO_FIELD_OFFSET(ValveStateResponse, key), ProtoFieldType::TYPE_FIXED32, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(ValveStateResponse, position), ProtoFieldType::TYPE_FLOAT, false, 1, 0}, - {3, PROTO_FIELD_OFFSET(ValveStateResponse, current_operation), ProtoFieldType::TYPE_ENUM, false, 1, 0}, - {4, PROTO_FIELD_OFFSET(ValveStateResponse, device_id), ProtoFieldType::TYPE_UINT32, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(ValveStateResponse, key), ProtoFieldType::TYPE_FIXED32, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(ValveStateResponse, position), ProtoFieldType::TYPE_FLOAT, false, 1, {}}, + {3, PROTO_FIELD_OFFSET(ValveStateResponse, current_operation), ProtoFieldType::TYPE_ENUM, false, 1, {}}, + {4, PROTO_FIELD_OFFSET(ValveStateResponse, device_id), ProtoFieldType::TYPE_UINT32, false, 1, {}}}; const FieldMeta ValveCommandRequest::FIELDS[4] = {{1, PROTO_FIELD_OFFSET(ValveCommandRequest, key), &encode_fixed32_field, @@ -6277,10 +6552,10 @@ const FieldMeta ValveCommandRequest::FIELDS[4] = {{1, 1, {.decode_varint = &decode_bool_field}}}; const FieldMetaV2 ValveCommandRequest::FIELDS_V2[4] = { - {1, PROTO_FIELD_OFFSET(ValveCommandRequest, key), ProtoFieldType::TYPE_FIXED32, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(ValveCommandRequest, has_position), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {3, PROTO_FIELD_OFFSET(ValveCommandRequest, position), ProtoFieldType::TYPE_FLOAT, false, 1, 0}, - {4, PROTO_FIELD_OFFSET(ValveCommandRequest, stop), ProtoFieldType::TYPE_BOOL, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(ValveCommandRequest, key), ProtoFieldType::TYPE_FIXED32, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(ValveCommandRequest, has_position), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {3, PROTO_FIELD_OFFSET(ValveCommandRequest, position), ProtoFieldType::TYPE_FLOAT, false, 1, {}}, + {4, PROTO_FIELD_OFFSET(ValveCommandRequest, stop), ProtoFieldType::TYPE_BOOL, false, 1, {}}}; #endif #ifdef USE_DATETIME_DATETIME const FieldMeta ListEntitiesDateTimeResponse::FIELDS[8] = { @@ -6349,14 +6624,14 @@ const FieldMeta ListEntitiesDateTimeResponse::FIELDS[8] = { 1, {.decode_varint = &decode_uint32_field}}}; const FieldMetaV2 ListEntitiesDateTimeResponse::FIELDS_V2[8] = { - {1, PROTO_FIELD_OFFSET(ListEntitiesDateTimeResponse, object_id), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(ListEntitiesDateTimeResponse, key), ProtoFieldType::TYPE_FIXED32, false, 1, 0}, - {3, PROTO_FIELD_OFFSET(ListEntitiesDateTimeResponse, name), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {4, PROTO_FIELD_OFFSET(ListEntitiesDateTimeResponse, unique_id), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {5, PROTO_FIELD_OFFSET(ListEntitiesDateTimeResponse, icon), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {6, PROTO_FIELD_OFFSET(ListEntitiesDateTimeResponse, disabled_by_default), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {7, PROTO_FIELD_OFFSET(ListEntitiesDateTimeResponse, entity_category), ProtoFieldType::TYPE_ENUM, false, 1, 0}, - {8, PROTO_FIELD_OFFSET(ListEntitiesDateTimeResponse, device_id), ProtoFieldType::TYPE_UINT32, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(ListEntitiesDateTimeResponse, object_id), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(ListEntitiesDateTimeResponse, key), ProtoFieldType::TYPE_FIXED32, false, 1, {}}, + {3, PROTO_FIELD_OFFSET(ListEntitiesDateTimeResponse, name), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {4, PROTO_FIELD_OFFSET(ListEntitiesDateTimeResponse, unique_id), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {5, PROTO_FIELD_OFFSET(ListEntitiesDateTimeResponse, icon), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {6, PROTO_FIELD_OFFSET(ListEntitiesDateTimeResponse, disabled_by_default), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {7, PROTO_FIELD_OFFSET(ListEntitiesDateTimeResponse, entity_category), ProtoFieldType::TYPE_ENUM, false, 1, {}}, + {8, PROTO_FIELD_OFFSET(ListEntitiesDateTimeResponse, device_id), ProtoFieldType::TYPE_UINT32, false, 1, {}}}; const FieldMeta DateTimeStateResponse::FIELDS[4] = {{1, PROTO_FIELD_OFFSET(DateTimeStateResponse, key), &encode_fixed32_field, @@ -6390,10 +6665,10 @@ const FieldMeta DateTimeStateResponse::FIELDS[4] = {{1, 1, {.decode_varint = &decode_uint32_field}}}; const FieldMetaV2 DateTimeStateResponse::FIELDS_V2[4] = { - {1, PROTO_FIELD_OFFSET(DateTimeStateResponse, key), ProtoFieldType::TYPE_FIXED32, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(DateTimeStateResponse, missing_state), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {3, PROTO_FIELD_OFFSET(DateTimeStateResponse, epoch_seconds), ProtoFieldType::TYPE_FIXED32, false, 1, 0}, - {4, PROTO_FIELD_OFFSET(DateTimeStateResponse, device_id), ProtoFieldType::TYPE_UINT32, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(DateTimeStateResponse, key), ProtoFieldType::TYPE_FIXED32, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(DateTimeStateResponse, missing_state), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {3, PROTO_FIELD_OFFSET(DateTimeStateResponse, epoch_seconds), ProtoFieldType::TYPE_FIXED32, false, 1, {}}, + {4, PROTO_FIELD_OFFSET(DateTimeStateResponse, device_id), ProtoFieldType::TYPE_UINT32, false, 1, {}}}; const FieldMeta DateTimeCommandRequest::FIELDS[2] = {{1, PROTO_FIELD_OFFSET(DateTimeCommandRequest, key), &encode_fixed32_field, @@ -6411,8 +6686,8 @@ const FieldMeta DateTimeCommandRequest::FIELDS[2] = {{1, 1, {.decode_32bit = &decode_fixed32_field}}}; const FieldMetaV2 DateTimeCommandRequest::FIELDS_V2[2] = { - {1, PROTO_FIELD_OFFSET(DateTimeCommandRequest, key), ProtoFieldType::TYPE_FIXED32, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(DateTimeCommandRequest, epoch_seconds), ProtoFieldType::TYPE_FIXED32, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(DateTimeCommandRequest, key), ProtoFieldType::TYPE_FIXED32, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(DateTimeCommandRequest, epoch_seconds), ProtoFieldType::TYPE_FIXED32, false, 1, {}}}; #endif #ifdef USE_UPDATE const FieldMeta ListEntitiesUpdateResponse::FIELDS[9] = { @@ -6489,15 +6764,15 @@ const FieldMeta ListEntitiesUpdateResponse::FIELDS[9] = { 1, {.decode_varint = &decode_uint32_field}}}; const FieldMetaV2 ListEntitiesUpdateResponse::FIELDS_V2[9] = { - {1, PROTO_FIELD_OFFSET(ListEntitiesUpdateResponse, object_id), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(ListEntitiesUpdateResponse, key), ProtoFieldType::TYPE_FIXED32, false, 1, 0}, - {3, PROTO_FIELD_OFFSET(ListEntitiesUpdateResponse, name), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {4, PROTO_FIELD_OFFSET(ListEntitiesUpdateResponse, unique_id), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {5, PROTO_FIELD_OFFSET(ListEntitiesUpdateResponse, icon), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {6, PROTO_FIELD_OFFSET(ListEntitiesUpdateResponse, disabled_by_default), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {7, PROTO_FIELD_OFFSET(ListEntitiesUpdateResponse, entity_category), ProtoFieldType::TYPE_ENUM, false, 1, 0}, - {8, PROTO_FIELD_OFFSET(ListEntitiesUpdateResponse, device_class), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {9, PROTO_FIELD_OFFSET(ListEntitiesUpdateResponse, device_id), ProtoFieldType::TYPE_UINT32, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(ListEntitiesUpdateResponse, object_id), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(ListEntitiesUpdateResponse, key), ProtoFieldType::TYPE_FIXED32, false, 1, {}}, + {3, PROTO_FIELD_OFFSET(ListEntitiesUpdateResponse, name), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {4, PROTO_FIELD_OFFSET(ListEntitiesUpdateResponse, unique_id), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {5, PROTO_FIELD_OFFSET(ListEntitiesUpdateResponse, icon), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {6, PROTO_FIELD_OFFSET(ListEntitiesUpdateResponse, disabled_by_default), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {7, PROTO_FIELD_OFFSET(ListEntitiesUpdateResponse, entity_category), ProtoFieldType::TYPE_ENUM, false, 1, {}}, + {8, PROTO_FIELD_OFFSET(ListEntitiesUpdateResponse, device_class), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {9, PROTO_FIELD_OFFSET(ListEntitiesUpdateResponse, device_id), ProtoFieldType::TYPE_UINT32, false, 1, {}}}; const FieldMeta UpdateStateResponse::FIELDS[11] = {{1, PROTO_FIELD_OFFSET(UpdateStateResponse, key), &encode_fixed32_field, @@ -6587,17 +6862,17 @@ const FieldMeta UpdateStateResponse::FIELDS[11] = {{1, 1, {.decode_varint = &decode_uint32_field}}}; const FieldMetaV2 UpdateStateResponse::FIELDS_V2[11] = { - {1, PROTO_FIELD_OFFSET(UpdateStateResponse, key), ProtoFieldType::TYPE_FIXED32, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(UpdateStateResponse, missing_state), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {3, PROTO_FIELD_OFFSET(UpdateStateResponse, in_progress), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {4, PROTO_FIELD_OFFSET(UpdateStateResponse, has_progress), ProtoFieldType::TYPE_BOOL, false, 1, 0}, - {5, PROTO_FIELD_OFFSET(UpdateStateResponse, progress), ProtoFieldType::TYPE_FLOAT, false, 1, 0}, - {6, PROTO_FIELD_OFFSET(UpdateStateResponse, current_version), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {7, PROTO_FIELD_OFFSET(UpdateStateResponse, latest_version), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {8, PROTO_FIELD_OFFSET(UpdateStateResponse, title), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {9, PROTO_FIELD_OFFSET(UpdateStateResponse, release_summary), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {10, PROTO_FIELD_OFFSET(UpdateStateResponse, release_url), ProtoFieldType::TYPE_STRING, false, 1, 0}, - {11, PROTO_FIELD_OFFSET(UpdateStateResponse, device_id), ProtoFieldType::TYPE_UINT32, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(UpdateStateResponse, key), ProtoFieldType::TYPE_FIXED32, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(UpdateStateResponse, missing_state), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {3, PROTO_FIELD_OFFSET(UpdateStateResponse, in_progress), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {4, PROTO_FIELD_OFFSET(UpdateStateResponse, has_progress), ProtoFieldType::TYPE_BOOL, false, 1, {}}, + {5, PROTO_FIELD_OFFSET(UpdateStateResponse, progress), ProtoFieldType::TYPE_FLOAT, false, 1, {}}, + {6, PROTO_FIELD_OFFSET(UpdateStateResponse, current_version), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {7, PROTO_FIELD_OFFSET(UpdateStateResponse, latest_version), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {8, PROTO_FIELD_OFFSET(UpdateStateResponse, title), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {9, PROTO_FIELD_OFFSET(UpdateStateResponse, release_summary), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {10, PROTO_FIELD_OFFSET(UpdateStateResponse, release_url), ProtoFieldType::TYPE_STRING, false, 1, {}}, + {11, PROTO_FIELD_OFFSET(UpdateStateResponse, device_id), ProtoFieldType::TYPE_UINT32, false, 1, {}}}; const FieldMeta UpdateCommandRequest::FIELDS[2] = {{1, PROTO_FIELD_OFFSET(UpdateCommandRequest, key), &encode_fixed32_field, @@ -6615,6170 +6890,9 @@ const FieldMeta UpdateCommandRequest::FIELDS[2] = {{1, 1, {.decode_varint = &decode_enum_field}}}; const FieldMetaV2 UpdateCommandRequest::FIELDS_V2[2] = { - {1, PROTO_FIELD_OFFSET(UpdateCommandRequest, key), ProtoFieldType::TYPE_FIXED32, false, 1, 0}, - {2, PROTO_FIELD_OFFSET(UpdateCommandRequest, command), ProtoFieldType::TYPE_ENUM, false, 1, 0}}; + {1, PROTO_FIELD_OFFSET(UpdateCommandRequest, key), ProtoFieldType::TYPE_FIXED32, false, 1, {}}, + {2, PROTO_FIELD_OFFSET(UpdateCommandRequest, command), ProtoFieldType::TYPE_ENUM, false, 1, {}}}; #endif -// Message type handler implementations -void encode_message_field_by_type(ProtoWriteBuffer &buffer, uint8_t field_num, const void *field_ptr, - uint8_t message_type_id) { - switch (message_type_id) { - case 1: { - const HelloRequest *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } - case 2: { - const HelloResponse *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } - case 3: { - const ConnectRequest *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } - case 4: { - const ConnectResponse *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } - case 5: { - const DisconnectRequest *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } - case 6: { - const DisconnectResponse *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } - case 7: { - const PingRequest *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } - case 8: { - const PingResponse *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } - case 9: { - const DeviceInfoRequest *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } - case 10: { - const AreaInfo *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } - case 11: { - const DeviceInfo *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } - case 12: { - const DeviceInfoResponse *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } - case 13: { - const ListEntitiesRequest *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } - case 14: { - const ListEntitiesDoneResponse *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } - case 15: { - const SubscribeStatesRequest *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#ifdef USE_BINARY_SENSOR - case 16: { - const ListEntitiesBinarySensorResponse *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_BINARY_SENSOR - case 17: { - const BinarySensorStateResponse *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_COVER - case 18: { - const ListEntitiesCoverResponse *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_COVER - case 19: { - const CoverStateResponse *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_COVER - case 20: { - const CoverCommandRequest *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_FAN - case 21: { - const ListEntitiesFanResponse *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_FAN - case 22: { - const FanStateResponse *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_FAN - case 23: { - const FanCommandRequest *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_LIGHT - case 24: { - const ListEntitiesLightResponse *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_LIGHT - case 25: { - const LightStateResponse *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_LIGHT - case 26: { - const LightCommandRequest *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_SENSOR - case 27: { - const ListEntitiesSensorResponse *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_SENSOR - case 28: { - const SensorStateResponse *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_SWITCH - case 29: { - const ListEntitiesSwitchResponse *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_SWITCH - case 30: { - const SwitchStateResponse *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_SWITCH - case 31: { - const SwitchCommandRequest *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_TEXT_SENSOR - case 32: { - const ListEntitiesTextSensorResponse *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_TEXT_SENSOR - case 33: { - const TextSensorStateResponse *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif - case 34: { - const SubscribeLogsRequest *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } - case 35: { - const SubscribeLogsResponse *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#ifdef USE_API_NOISE - case 36: { - const NoiseEncryptionSetKeyRequest *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_API_NOISE - case 37: { - const NoiseEncryptionSetKeyResponse *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif - case 38: { - const SubscribeHomeassistantServicesRequest *msg = - static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } - case 39: { - const HomeassistantServiceMap *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } - case 40: { - const HomeassistantServiceResponse *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } - case 41: { - const SubscribeHomeAssistantStatesRequest *msg = - static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } - case 42: { - const SubscribeHomeAssistantStateResponse *msg = - static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } - case 43: { - const HomeAssistantStateResponse *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } - case 44: { - const GetTimeRequest *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } - case 45: { - const GetTimeResponse *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } - case 46: { - const ListEntitiesServicesArgument *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } - case 47: { - const ListEntitiesServicesResponse *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } - case 48: { - const ExecuteServiceArgument *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } - case 49: { - const ExecuteServiceRequest *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#ifdef USE_CAMERA - case 50: { - const ListEntitiesCameraResponse *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_CAMERA - case 51: { - const CameraImageResponse *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_CAMERA - case 52: { - const CameraImageRequest *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_CLIMATE - case 53: { - const ListEntitiesClimateResponse *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_CLIMATE - case 54: { - const ClimateStateResponse *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_CLIMATE - case 55: { - const ClimateCommandRequest *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_NUMBER - case 56: { - const ListEntitiesNumberResponse *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_NUMBER - case 57: { - const NumberStateResponse *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_NUMBER - case 58: { - const NumberCommandRequest *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_SELECT - case 59: { - const ListEntitiesSelectResponse *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_SELECT - case 60: { - const SelectStateResponse *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_SELECT - case 61: { - const SelectCommandRequest *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_SIREN - case 62: { - const ListEntitiesSirenResponse *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_SIREN - case 63: { - const SirenStateResponse *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_SIREN - case 64: { - const SirenCommandRequest *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_LOCK - case 65: { - const ListEntitiesLockResponse *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_LOCK - case 66: { - const LockStateResponse *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_LOCK - case 67: { - const LockCommandRequest *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_BUTTON - case 68: { - const ListEntitiesButtonResponse *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_BUTTON - case 69: { - const ButtonCommandRequest *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_MEDIA_PLAYER - case 70: { - const MediaPlayerSupportedFormat *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_MEDIA_PLAYER - case 71: { - const ListEntitiesMediaPlayerResponse *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_MEDIA_PLAYER - case 72: { - const MediaPlayerStateResponse *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_MEDIA_PLAYER - case 73: { - const MediaPlayerCommandRequest *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 74: { - const SubscribeBluetoothLEAdvertisementsRequest *msg = - static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 75: { - const BluetoothServiceData *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 76: { - const BluetoothLEAdvertisementResponse *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 77: { - const BluetoothLERawAdvertisement *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 78: { - const BluetoothLERawAdvertisementsResponse *msg = - static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 79: { - const BluetoothDeviceRequest *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 80: { - const BluetoothDeviceConnectionResponse *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 81: { - const BluetoothGATTGetServicesRequest *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 82: { - const BluetoothGATTDescriptor *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 83: { - const BluetoothGATTCharacteristic *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 84: { - const BluetoothGATTService *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 85: { - const BluetoothGATTGetServicesResponse *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 86: { - const BluetoothGATTGetServicesDoneResponse *msg = - static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 87: { - const BluetoothGATTReadRequest *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 88: { - const BluetoothGATTReadResponse *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 89: { - const BluetoothGATTWriteRequest *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 90: { - const BluetoothGATTReadDescriptorRequest *msg = - static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 91: { - const BluetoothGATTWriteDescriptorRequest *msg = - static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 92: { - const BluetoothGATTNotifyRequest *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 93: { - const BluetoothGATTNotifyDataResponse *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 94: { - const SubscribeBluetoothConnectionsFreeRequest *msg = - static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 95: { - const BluetoothConnectionsFreeResponse *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 96: { - const BluetoothGATTErrorResponse *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 97: { - const BluetoothGATTWriteResponse *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 98: { - const BluetoothGATTNotifyResponse *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 99: { - const BluetoothDevicePairingResponse *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 100: { - const BluetoothDeviceUnpairingResponse *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 101: { - const UnsubscribeBluetoothLEAdvertisementsRequest *msg = - static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 102: { - const BluetoothDeviceClearCacheResponse *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 103: { - const BluetoothScannerStateResponse *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 104: { - const BluetoothScannerSetModeRequest *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_VOICE_ASSISTANT - case 105: { - const SubscribeVoiceAssistantRequest *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_VOICE_ASSISTANT - case 106: { - const VoiceAssistantAudioSettings *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_VOICE_ASSISTANT - case 107: { - const VoiceAssistantRequest *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_VOICE_ASSISTANT - case 108: { - const VoiceAssistantResponse *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_VOICE_ASSISTANT - case 109: { - const VoiceAssistantEventData *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_VOICE_ASSISTANT - case 110: { - const VoiceAssistantEventResponse *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_VOICE_ASSISTANT - case 111: { - const VoiceAssistantAudio *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_VOICE_ASSISTANT - case 112: { - const VoiceAssistantTimerEventResponse *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_VOICE_ASSISTANT - case 113: { - const VoiceAssistantAnnounceRequest *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_VOICE_ASSISTANT - case 114: { - const VoiceAssistantAnnounceFinished *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_VOICE_ASSISTANT - case 115: { - const VoiceAssistantWakeWord *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_VOICE_ASSISTANT - case 116: { - const VoiceAssistantConfigurationRequest *msg = - static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_VOICE_ASSISTANT - case 117: { - const VoiceAssistantConfigurationResponse *msg = - static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_VOICE_ASSISTANT - case 118: { - const VoiceAssistantSetConfiguration *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_ALARM_CONTROL_PANEL - case 119: { - const ListEntitiesAlarmControlPanelResponse *msg = - static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_ALARM_CONTROL_PANEL - case 120: { - const AlarmControlPanelStateResponse *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_ALARM_CONTROL_PANEL - case 121: { - const AlarmControlPanelCommandRequest *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_TEXT - case 122: { - const ListEntitiesTextResponse *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_TEXT - case 123: { - const TextStateResponse *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_TEXT - case 124: { - const TextCommandRequest *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_DATETIME_DATE - case 125: { - const ListEntitiesDateResponse *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_DATETIME_DATE - case 126: { - const DateStateResponse *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_DATETIME_DATE - case 127: { - const DateCommandRequest *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_DATETIME_TIME - case 128: { - const ListEntitiesTimeResponse *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_DATETIME_TIME - case 129: { - const TimeStateResponse *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_DATETIME_TIME - case 130: { - const TimeCommandRequest *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_EVENT - case 131: { - const ListEntitiesEventResponse *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_EVENT - case 132: { - const EventResponse *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_VALVE - case 133: { - const ListEntitiesValveResponse *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_VALVE - case 134: { - const ValveStateResponse *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_VALVE - case 135: { - const ValveCommandRequest *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_DATETIME_DATETIME - case 136: { - const ListEntitiesDateTimeResponse *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_DATETIME_DATETIME - case 137: { - const DateTimeStateResponse *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_DATETIME_DATETIME - case 138: { - const DateTimeCommandRequest *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_UPDATE - case 139: { - const ListEntitiesUpdateResponse *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_UPDATE - case 140: { - const UpdateStateResponse *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif -#ifdef USE_UPDATE - case 141: { - const UpdateCommandRequest *msg = static_cast(field_ptr); - buffer.encode_message(field_num, *msg); - break; - } -#endif - default: - break; - } -} - -void decode_message_field_by_type(void *field_ptr, ProtoLengthDelimited value, uint8_t message_type_id) { - switch (message_type_id) { - case 1: { - HelloRequest *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } - case 2: { - HelloResponse *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } - case 3: { - ConnectRequest *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } - case 4: { - ConnectResponse *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } - case 5: { - DisconnectRequest *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } - case 6: { - DisconnectResponse *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } - case 7: { - PingRequest *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } - case 8: { - PingResponse *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } - case 9: { - DeviceInfoRequest *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } - case 10: { - AreaInfo *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } - case 11: { - DeviceInfo *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } - case 12: { - DeviceInfoResponse *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } - case 13: { - ListEntitiesRequest *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } - case 14: { - ListEntitiesDoneResponse *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } - case 15: { - SubscribeStatesRequest *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#ifdef USE_BINARY_SENSOR - case 16: { - ListEntitiesBinarySensorResponse *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_BINARY_SENSOR - case 17: { - BinarySensorStateResponse *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_COVER - case 18: { - ListEntitiesCoverResponse *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_COVER - case 19: { - CoverStateResponse *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_COVER - case 20: { - CoverCommandRequest *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_FAN - case 21: { - ListEntitiesFanResponse *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_FAN - case 22: { - FanStateResponse *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_FAN - case 23: { - FanCommandRequest *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_LIGHT - case 24: { - ListEntitiesLightResponse *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_LIGHT - case 25: { - LightStateResponse *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_LIGHT - case 26: { - LightCommandRequest *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_SENSOR - case 27: { - ListEntitiesSensorResponse *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_SENSOR - case 28: { - SensorStateResponse *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_SWITCH - case 29: { - ListEntitiesSwitchResponse *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_SWITCH - case 30: { - SwitchStateResponse *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_SWITCH - case 31: { - SwitchCommandRequest *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_TEXT_SENSOR - case 32: { - ListEntitiesTextSensorResponse *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_TEXT_SENSOR - case 33: { - TextSensorStateResponse *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif - case 34: { - SubscribeLogsRequest *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } - case 35: { - SubscribeLogsResponse *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#ifdef USE_API_NOISE - case 36: { - NoiseEncryptionSetKeyRequest *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_API_NOISE - case 37: { - NoiseEncryptionSetKeyResponse *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif - case 38: { - SubscribeHomeassistantServicesRequest *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } - case 39: { - HomeassistantServiceMap *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } - case 40: { - HomeassistantServiceResponse *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } - case 41: { - SubscribeHomeAssistantStatesRequest *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } - case 42: { - SubscribeHomeAssistantStateResponse *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } - case 43: { - HomeAssistantStateResponse *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } - case 44: { - GetTimeRequest *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } - case 45: { - GetTimeResponse *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } - case 46: { - ListEntitiesServicesArgument *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } - case 47: { - ListEntitiesServicesResponse *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } - case 48: { - ExecuteServiceArgument *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } - case 49: { - ExecuteServiceRequest *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#ifdef USE_CAMERA - case 50: { - ListEntitiesCameraResponse *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_CAMERA - case 51: { - CameraImageResponse *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_CAMERA - case 52: { - CameraImageRequest *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_CLIMATE - case 53: { - ListEntitiesClimateResponse *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_CLIMATE - case 54: { - ClimateStateResponse *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_CLIMATE - case 55: { - ClimateCommandRequest *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_NUMBER - case 56: { - ListEntitiesNumberResponse *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_NUMBER - case 57: { - NumberStateResponse *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_NUMBER - case 58: { - NumberCommandRequest *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_SELECT - case 59: { - ListEntitiesSelectResponse *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_SELECT - case 60: { - SelectStateResponse *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_SELECT - case 61: { - SelectCommandRequest *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_SIREN - case 62: { - ListEntitiesSirenResponse *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_SIREN - case 63: { - SirenStateResponse *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_SIREN - case 64: { - SirenCommandRequest *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_LOCK - case 65: { - ListEntitiesLockResponse *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_LOCK - case 66: { - LockStateResponse *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_LOCK - case 67: { - LockCommandRequest *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_BUTTON - case 68: { - ListEntitiesButtonResponse *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_BUTTON - case 69: { - ButtonCommandRequest *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_MEDIA_PLAYER - case 70: { - MediaPlayerSupportedFormat *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_MEDIA_PLAYER - case 71: { - ListEntitiesMediaPlayerResponse *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_MEDIA_PLAYER - case 72: { - MediaPlayerStateResponse *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_MEDIA_PLAYER - case 73: { - MediaPlayerCommandRequest *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 74: { - SubscribeBluetoothLEAdvertisementsRequest *msg = - static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 75: { - BluetoothServiceData *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 76: { - BluetoothLEAdvertisementResponse *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 77: { - BluetoothLERawAdvertisement *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 78: { - BluetoothLERawAdvertisementsResponse *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 79: { - BluetoothDeviceRequest *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 80: { - BluetoothDeviceConnectionResponse *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 81: { - BluetoothGATTGetServicesRequest *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 82: { - BluetoothGATTDescriptor *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 83: { - BluetoothGATTCharacteristic *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 84: { - BluetoothGATTService *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 85: { - BluetoothGATTGetServicesResponse *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 86: { - BluetoothGATTGetServicesDoneResponse *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 87: { - BluetoothGATTReadRequest *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 88: { - BluetoothGATTReadResponse *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 89: { - BluetoothGATTWriteRequest *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 90: { - BluetoothGATTReadDescriptorRequest *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 91: { - BluetoothGATTWriteDescriptorRequest *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 92: { - BluetoothGATTNotifyRequest *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 93: { - BluetoothGATTNotifyDataResponse *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 94: { - SubscribeBluetoothConnectionsFreeRequest *msg = - static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 95: { - BluetoothConnectionsFreeResponse *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 96: { - BluetoothGATTErrorResponse *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 97: { - BluetoothGATTWriteResponse *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 98: { - BluetoothGATTNotifyResponse *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 99: { - BluetoothDevicePairingResponse *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 100: { - BluetoothDeviceUnpairingResponse *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 101: { - UnsubscribeBluetoothLEAdvertisementsRequest *msg = - static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 102: { - BluetoothDeviceClearCacheResponse *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 103: { - BluetoothScannerStateResponse *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 104: { - BluetoothScannerSetModeRequest *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_VOICE_ASSISTANT - case 105: { - SubscribeVoiceAssistantRequest *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_VOICE_ASSISTANT - case 106: { - VoiceAssistantAudioSettings *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_VOICE_ASSISTANT - case 107: { - VoiceAssistantRequest *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_VOICE_ASSISTANT - case 108: { - VoiceAssistantResponse *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_VOICE_ASSISTANT - case 109: { - VoiceAssistantEventData *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_VOICE_ASSISTANT - case 110: { - VoiceAssistantEventResponse *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_VOICE_ASSISTANT - case 111: { - VoiceAssistantAudio *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_VOICE_ASSISTANT - case 112: { - VoiceAssistantTimerEventResponse *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_VOICE_ASSISTANT - case 113: { - VoiceAssistantAnnounceRequest *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_VOICE_ASSISTANT - case 114: { - VoiceAssistantAnnounceFinished *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_VOICE_ASSISTANT - case 115: { - VoiceAssistantWakeWord *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_VOICE_ASSISTANT - case 116: { - VoiceAssistantConfigurationRequest *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_VOICE_ASSISTANT - case 117: { - VoiceAssistantConfigurationResponse *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_VOICE_ASSISTANT - case 118: { - VoiceAssistantSetConfiguration *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_ALARM_CONTROL_PANEL - case 119: { - ListEntitiesAlarmControlPanelResponse *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_ALARM_CONTROL_PANEL - case 120: { - AlarmControlPanelStateResponse *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_ALARM_CONTROL_PANEL - case 121: { - AlarmControlPanelCommandRequest *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_TEXT - case 122: { - ListEntitiesTextResponse *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_TEXT - case 123: { - TextStateResponse *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_TEXT - case 124: { - TextCommandRequest *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_DATETIME_DATE - case 125: { - ListEntitiesDateResponse *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_DATETIME_DATE - case 126: { - DateStateResponse *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_DATETIME_DATE - case 127: { - DateCommandRequest *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_DATETIME_TIME - case 128: { - ListEntitiesTimeResponse *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_DATETIME_TIME - case 129: { - TimeStateResponse *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_DATETIME_TIME - case 130: { - TimeCommandRequest *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_EVENT - case 131: { - ListEntitiesEventResponse *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_EVENT - case 132: { - EventResponse *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_VALVE - case 133: { - ListEntitiesValveResponse *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_VALVE - case 134: { - ValveStateResponse *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_VALVE - case 135: { - ValveCommandRequest *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_DATETIME_DATETIME - case 136: { - ListEntitiesDateTimeResponse *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_DATETIME_DATETIME - case 137: { - DateTimeStateResponse *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_DATETIME_DATETIME - case 138: { - DateTimeCommandRequest *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_UPDATE - case 139: { - ListEntitiesUpdateResponse *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_UPDATE - case 140: { - UpdateStateResponse *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif -#ifdef USE_UPDATE - case 141: { - UpdateCommandRequest *msg = static_cast(field_ptr); - *msg = value.as_message(); - break; - } -#endif - default: - break; - } -} - -void size_message_field_by_type(uint32_t &total_size, uint8_t precalced_field_id_size, const void *field_ptr, - uint8_t message_type_id, bool force) { - switch (message_type_id) { - case 1: { - const HelloRequest *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } - case 2: { - const HelloResponse *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } - case 3: { - const ConnectRequest *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } - case 4: { - const ConnectResponse *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } - case 5: { - const DisconnectRequest *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } - case 6: { - const DisconnectResponse *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } - case 7: { - const PingRequest *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } - case 8: { - const PingResponse *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } - case 9: { - const DeviceInfoRequest *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } - case 10: { - const AreaInfo *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } - case 11: { - const DeviceInfo *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } - case 12: { - const DeviceInfoResponse *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } - case 13: { - const ListEntitiesRequest *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } - case 14: { - const ListEntitiesDoneResponse *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } - case 15: { - const SubscribeStatesRequest *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#ifdef USE_BINARY_SENSOR - case 16: { - const ListEntitiesBinarySensorResponse *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_BINARY_SENSOR - case 17: { - const BinarySensorStateResponse *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_COVER - case 18: { - const ListEntitiesCoverResponse *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_COVER - case 19: { - const CoverStateResponse *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_COVER - case 20: { - const CoverCommandRequest *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_FAN - case 21: { - const ListEntitiesFanResponse *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_FAN - case 22: { - const FanStateResponse *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_FAN - case 23: { - const FanCommandRequest *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_LIGHT - case 24: { - const ListEntitiesLightResponse *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_LIGHT - case 25: { - const LightStateResponse *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_LIGHT - case 26: { - const LightCommandRequest *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_SENSOR - case 27: { - const ListEntitiesSensorResponse *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_SENSOR - case 28: { - const SensorStateResponse *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_SWITCH - case 29: { - const ListEntitiesSwitchResponse *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_SWITCH - case 30: { - const SwitchStateResponse *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_SWITCH - case 31: { - const SwitchCommandRequest *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_TEXT_SENSOR - case 32: { - const ListEntitiesTextSensorResponse *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_TEXT_SENSOR - case 33: { - const TextSensorStateResponse *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif - case 34: { - const SubscribeLogsRequest *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } - case 35: { - const SubscribeLogsResponse *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#ifdef USE_API_NOISE - case 36: { - const NoiseEncryptionSetKeyRequest *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_API_NOISE - case 37: { - const NoiseEncryptionSetKeyResponse *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif - case 38: { - const SubscribeHomeassistantServicesRequest *msg = - static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } - case 39: { - const HomeassistantServiceMap *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } - case 40: { - const HomeassistantServiceResponse *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } - case 41: { - const SubscribeHomeAssistantStatesRequest *msg = - static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } - case 42: { - const SubscribeHomeAssistantStateResponse *msg = - static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } - case 43: { - const HomeAssistantStateResponse *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } - case 44: { - const GetTimeRequest *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } - case 45: { - const GetTimeResponse *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } - case 46: { - const ListEntitiesServicesArgument *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } - case 47: { - const ListEntitiesServicesResponse *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } - case 48: { - const ExecuteServiceArgument *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } - case 49: { - const ExecuteServiceRequest *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#ifdef USE_CAMERA - case 50: { - const ListEntitiesCameraResponse *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_CAMERA - case 51: { - const CameraImageResponse *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_CAMERA - case 52: { - const CameraImageRequest *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_CLIMATE - case 53: { - const ListEntitiesClimateResponse *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_CLIMATE - case 54: { - const ClimateStateResponse *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_CLIMATE - case 55: { - const ClimateCommandRequest *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_NUMBER - case 56: { - const ListEntitiesNumberResponse *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_NUMBER - case 57: { - const NumberStateResponse *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_NUMBER - case 58: { - const NumberCommandRequest *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_SELECT - case 59: { - const ListEntitiesSelectResponse *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_SELECT - case 60: { - const SelectStateResponse *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_SELECT - case 61: { - const SelectCommandRequest *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_SIREN - case 62: { - const ListEntitiesSirenResponse *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_SIREN - case 63: { - const SirenStateResponse *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_SIREN - case 64: { - const SirenCommandRequest *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_LOCK - case 65: { - const ListEntitiesLockResponse *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_LOCK - case 66: { - const LockStateResponse *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_LOCK - case 67: { - const LockCommandRequest *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_BUTTON - case 68: { - const ListEntitiesButtonResponse *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_BUTTON - case 69: { - const ButtonCommandRequest *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_MEDIA_PLAYER - case 70: { - const MediaPlayerSupportedFormat *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_MEDIA_PLAYER - case 71: { - const ListEntitiesMediaPlayerResponse *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_MEDIA_PLAYER - case 72: { - const MediaPlayerStateResponse *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_MEDIA_PLAYER - case 73: { - const MediaPlayerCommandRequest *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 74: { - const SubscribeBluetoothLEAdvertisementsRequest *msg = - static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 75: { - const BluetoothServiceData *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 76: { - const BluetoothLEAdvertisementResponse *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 77: { - const BluetoothLERawAdvertisement *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 78: { - const BluetoothLERawAdvertisementsResponse *msg = - static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 79: { - const BluetoothDeviceRequest *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 80: { - const BluetoothDeviceConnectionResponse *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 81: { - const BluetoothGATTGetServicesRequest *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 82: { - const BluetoothGATTDescriptor *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 83: { - const BluetoothGATTCharacteristic *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 84: { - const BluetoothGATTService *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 85: { - const BluetoothGATTGetServicesResponse *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 86: { - const BluetoothGATTGetServicesDoneResponse *msg = - static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 87: { - const BluetoothGATTReadRequest *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 88: { - const BluetoothGATTReadResponse *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 89: { - const BluetoothGATTWriteRequest *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 90: { - const BluetoothGATTReadDescriptorRequest *msg = - static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 91: { - const BluetoothGATTWriteDescriptorRequest *msg = - static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 92: { - const BluetoothGATTNotifyRequest *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 93: { - const BluetoothGATTNotifyDataResponse *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 94: { - const SubscribeBluetoothConnectionsFreeRequest *msg = - static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 95: { - const BluetoothConnectionsFreeResponse *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 96: { - const BluetoothGATTErrorResponse *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 97: { - const BluetoothGATTWriteResponse *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 98: { - const BluetoothGATTNotifyResponse *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 99: { - const BluetoothDevicePairingResponse *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 100: { - const BluetoothDeviceUnpairingResponse *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 101: { - const UnsubscribeBluetoothLEAdvertisementsRequest *msg = - static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 102: { - const BluetoothDeviceClearCacheResponse *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 103: { - const BluetoothScannerStateResponse *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 104: { - const BluetoothScannerSetModeRequest *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_VOICE_ASSISTANT - case 105: { - const SubscribeVoiceAssistantRequest *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_VOICE_ASSISTANT - case 106: { - const VoiceAssistantAudioSettings *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_VOICE_ASSISTANT - case 107: { - const VoiceAssistantRequest *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_VOICE_ASSISTANT - case 108: { - const VoiceAssistantResponse *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_VOICE_ASSISTANT - case 109: { - const VoiceAssistantEventData *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_VOICE_ASSISTANT - case 110: { - const VoiceAssistantEventResponse *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_VOICE_ASSISTANT - case 111: { - const VoiceAssistantAudio *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_VOICE_ASSISTANT - case 112: { - const VoiceAssistantTimerEventResponse *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_VOICE_ASSISTANT - case 113: { - const VoiceAssistantAnnounceRequest *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_VOICE_ASSISTANT - case 114: { - const VoiceAssistantAnnounceFinished *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_VOICE_ASSISTANT - case 115: { - const VoiceAssistantWakeWord *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_VOICE_ASSISTANT - case 116: { - const VoiceAssistantConfigurationRequest *msg = - static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_VOICE_ASSISTANT - case 117: { - const VoiceAssistantConfigurationResponse *msg = - static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_VOICE_ASSISTANT - case 118: { - const VoiceAssistantSetConfiguration *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_ALARM_CONTROL_PANEL - case 119: { - const ListEntitiesAlarmControlPanelResponse *msg = - static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_ALARM_CONTROL_PANEL - case 120: { - const AlarmControlPanelStateResponse *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_ALARM_CONTROL_PANEL - case 121: { - const AlarmControlPanelCommandRequest *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_TEXT - case 122: { - const ListEntitiesTextResponse *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_TEXT - case 123: { - const TextStateResponse *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_TEXT - case 124: { - const TextCommandRequest *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_DATETIME_DATE - case 125: { - const ListEntitiesDateResponse *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_DATETIME_DATE - case 126: { - const DateStateResponse *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_DATETIME_DATE - case 127: { - const DateCommandRequest *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_DATETIME_TIME - case 128: { - const ListEntitiesTimeResponse *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_DATETIME_TIME - case 129: { - const TimeStateResponse *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_DATETIME_TIME - case 130: { - const TimeCommandRequest *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_EVENT - case 131: { - const ListEntitiesEventResponse *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_EVENT - case 132: { - const EventResponse *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_VALVE - case 133: { - const ListEntitiesValveResponse *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_VALVE - case 134: { - const ValveStateResponse *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_VALVE - case 135: { - const ValveCommandRequest *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_DATETIME_DATETIME - case 136: { - const ListEntitiesDateTimeResponse *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_DATETIME_DATETIME - case 137: { - const DateTimeStateResponse *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_DATETIME_DATETIME - case 138: { - const DateTimeCommandRequest *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_UPDATE - case 139: { - const ListEntitiesUpdateResponse *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_UPDATE - case 140: { - const UpdateStateResponse *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif -#ifdef USE_UPDATE - case 141: { - const UpdateCommandRequest *msg = static_cast(field_ptr); - ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); - break; - } -#endif - default: - break; - } -} - -void encode_repeated_message_field_by_type(ProtoWriteBuffer &buffer, uint8_t field_num, const void *field_ptr, - uint8_t message_type_id) { - switch (message_type_id) { - case 1: { - const std::vector *vec = static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } - case 2: { - const std::vector *vec = static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } - case 3: { - const std::vector *vec = static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } - case 4: { - const std::vector *vec = static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } - case 5: { - const std::vector *vec = static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } - case 6: { - const std::vector *vec = static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } - case 7: { - const std::vector *vec = static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } - case 8: { - const std::vector *vec = static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } - case 9: { - const std::vector *vec = static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } - case 10: { - const std::vector *vec = static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } - case 11: { - const std::vector *vec = static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } - case 12: { - const std::vector *vec = static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } - case 13: { - const std::vector *vec = static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } - case 14: { - const std::vector *vec = - static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } - case 15: { - const std::vector *vec = - static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#ifdef USE_BINARY_SENSOR - case 16: { - const std::vector *vec = - static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_BINARY_SENSOR - case 17: { - const std::vector *vec = - static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_COVER - case 18: { - const std::vector *vec = - static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_COVER - case 19: { - const std::vector *vec = static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_COVER - case 20: { - const std::vector *vec = static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_FAN - case 21: { - const std::vector *vec = - static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_FAN - case 22: { - const std::vector *vec = static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_FAN - case 23: { - const std::vector *vec = static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_LIGHT - case 24: { - const std::vector *vec = - static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_LIGHT - case 25: { - const std::vector *vec = static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_LIGHT - case 26: { - const std::vector *vec = static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_SENSOR - case 27: { - const std::vector *vec = - static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_SENSOR - case 28: { - const std::vector *vec = static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_SWITCH - case 29: { - const std::vector *vec = - static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_SWITCH - case 30: { - const std::vector *vec = static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_SWITCH - case 31: { - const std::vector *vec = static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_TEXT_SENSOR - case 32: { - const std::vector *vec = - static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_TEXT_SENSOR - case 33: { - const std::vector *vec = - static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif - case 34: { - const std::vector *vec = static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } - case 35: { - const std::vector *vec = - static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#ifdef USE_API_NOISE - case 36: { - const std::vector *vec = - static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_API_NOISE - case 37: { - const std::vector *vec = - static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif - case 38: { - const std::vector *vec = - static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } - case 39: { - const std::vector *vec = - static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } - case 40: { - const std::vector *vec = - static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } - case 41: { - const std::vector *vec = - static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } - case 42: { - const std::vector *vec = - static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } - case 43: { - const std::vector *vec = - static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } - case 44: { - const std::vector *vec = static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } - case 45: { - const std::vector *vec = static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } - case 46: { - const std::vector *vec = - static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } - case 47: { - const std::vector *vec = - static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } - case 48: { - const std::vector *vec = - static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } - case 49: { - const std::vector *vec = - static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#ifdef USE_CAMERA - case 50: { - const std::vector *vec = - static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_CAMERA - case 51: { - const std::vector *vec = static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_CAMERA - case 52: { - const std::vector *vec = static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_CLIMATE - case 53: { - const std::vector *vec = - static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_CLIMATE - case 54: { - const std::vector *vec = static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_CLIMATE - case 55: { - const std::vector *vec = - static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_NUMBER - case 56: { - const std::vector *vec = - static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_NUMBER - case 57: { - const std::vector *vec = static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_NUMBER - case 58: { - const std::vector *vec = static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_SELECT - case 59: { - const std::vector *vec = - static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_SELECT - case 60: { - const std::vector *vec = static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_SELECT - case 61: { - const std::vector *vec = static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_SIREN - case 62: { - const std::vector *vec = - static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_SIREN - case 63: { - const std::vector *vec = static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_SIREN - case 64: { - const std::vector *vec = static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_LOCK - case 65: { - const std::vector *vec = - static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_LOCK - case 66: { - const std::vector *vec = static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_LOCK - case 67: { - const std::vector *vec = static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_BUTTON - case 68: { - const std::vector *vec = - static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_BUTTON - case 69: { - const std::vector *vec = static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_MEDIA_PLAYER - case 70: { - const std::vector *vec = - static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_MEDIA_PLAYER - case 71: { - const std::vector *vec = - static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_MEDIA_PLAYER - case 72: { - const std::vector *vec = - static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_MEDIA_PLAYER - case 73: { - const std::vector *vec = - static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 74: { - const std::vector *vec = - static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 75: { - const std::vector *vec = static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 76: { - const std::vector *vec = - static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 77: { - const std::vector *vec = - static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 78: { - const std::vector *vec = - static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 79: { - const std::vector *vec = - static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 80: { - const std::vector *vec = - static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 81: { - const std::vector *vec = - static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 82: { - const std::vector *vec = - static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 83: { - const std::vector *vec = - static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 84: { - const std::vector *vec = static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 85: { - const std::vector *vec = - static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 86: { - const std::vector *vec = - static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 87: { - const std::vector *vec = - static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 88: { - const std::vector *vec = - static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 89: { - const std::vector *vec = - static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 90: { - const std::vector *vec = - static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 91: { - const std::vector *vec = - static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 92: { - const std::vector *vec = - static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 93: { - const std::vector *vec = - static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 94: { - const std::vector *vec = - static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 95: { - const std::vector *vec = - static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 96: { - const std::vector *vec = - static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 97: { - const std::vector *vec = - static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 98: { - const std::vector *vec = - static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 99: { - const std::vector *vec = - static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 100: { - const std::vector *vec = - static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 101: { - const std::vector *vec = - static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 102: { - const std::vector *vec = - static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 103: { - const std::vector *vec = - static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 104: { - const std::vector *vec = - static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_VOICE_ASSISTANT - case 105: { - const std::vector *vec = - static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_VOICE_ASSISTANT - case 106: { - const std::vector *vec = - static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_VOICE_ASSISTANT - case 107: { - const std::vector *vec = - static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_VOICE_ASSISTANT - case 108: { - const std::vector *vec = - static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_VOICE_ASSISTANT - case 109: { - const std::vector *vec = - static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_VOICE_ASSISTANT - case 110: { - const std::vector *vec = - static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_VOICE_ASSISTANT - case 111: { - const std::vector *vec = static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_VOICE_ASSISTANT - case 112: { - const std::vector *vec = - static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_VOICE_ASSISTANT - case 113: { - const std::vector *vec = - static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_VOICE_ASSISTANT - case 114: { - const std::vector *vec = - static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_VOICE_ASSISTANT - case 115: { - const std::vector *vec = - static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_VOICE_ASSISTANT - case 116: { - const std::vector *vec = - static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_VOICE_ASSISTANT - case 117: { - const std::vector *vec = - static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_VOICE_ASSISTANT - case 118: { - const std::vector *vec = - static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_ALARM_CONTROL_PANEL - case 119: { - const std::vector *vec = - static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_ALARM_CONTROL_PANEL - case 120: { - const std::vector *vec = - static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_ALARM_CONTROL_PANEL - case 121: { - const std::vector *vec = - static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_TEXT - case 122: { - const std::vector *vec = - static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_TEXT - case 123: { - const std::vector *vec = static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_TEXT - case 124: { - const std::vector *vec = static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_DATETIME_DATE - case 125: { - const std::vector *vec = - static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_DATETIME_DATE - case 126: { - const std::vector *vec = static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_DATETIME_DATE - case 127: { - const std::vector *vec = static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_DATETIME_TIME - case 128: { - const std::vector *vec = - static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_DATETIME_TIME - case 129: { - const std::vector *vec = static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_DATETIME_TIME - case 130: { - const std::vector *vec = static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_EVENT - case 131: { - const std::vector *vec = - static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_EVENT - case 132: { - const std::vector *vec = static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_VALVE - case 133: { - const std::vector *vec = - static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_VALVE - case 134: { - const std::vector *vec = static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_VALVE - case 135: { - const std::vector *vec = static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_DATETIME_DATETIME - case 136: { - const std::vector *vec = - static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_DATETIME_DATETIME - case 137: { - const std::vector *vec = - static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_DATETIME_DATETIME - case 138: { - const std::vector *vec = - static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_UPDATE - case 139: { - const std::vector *vec = - static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_UPDATE - case 140: { - const std::vector *vec = static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif -#ifdef USE_UPDATE - case 141: { - const std::vector *vec = static_cast *>(field_ptr); - for (const auto &msg : *vec) { - buffer.encode_message(field_num, msg, true); - } - break; - } -#endif - default: - break; - } -} - -void decode_repeated_message_field_by_type(void *field_ptr, ProtoLengthDelimited value, uint8_t message_type_id) { - switch (message_type_id) { - case 1: { - std::vector *vec = static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } - case 2: { - std::vector *vec = static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } - case 3: { - std::vector *vec = static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } - case 4: { - std::vector *vec = static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } - case 5: { - std::vector *vec = static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } - case 6: { - std::vector *vec = static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } - case 7: { - std::vector *vec = static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } - case 8: { - std::vector *vec = static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } - case 9: { - std::vector *vec = static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } - case 10: { - std::vector *vec = static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } - case 11: { - std::vector *vec = static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } - case 12: { - std::vector *vec = static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } - case 13: { - std::vector *vec = static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } - case 14: { - std::vector *vec = static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } - case 15: { - std::vector *vec = static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#ifdef USE_BINARY_SENSOR - case 16: { - std::vector *vec = - static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_BINARY_SENSOR - case 17: { - std::vector *vec = static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_COVER - case 18: { - std::vector *vec = static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_COVER - case 19: { - std::vector *vec = static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_COVER - case 20: { - std::vector *vec = static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_FAN - case 21: { - std::vector *vec = static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_FAN - case 22: { - std::vector *vec = static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_FAN - case 23: { - std::vector *vec = static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_LIGHT - case 24: { - std::vector *vec = static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_LIGHT - case 25: { - std::vector *vec = static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_LIGHT - case 26: { - std::vector *vec = static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_SENSOR - case 27: { - std::vector *vec = static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_SENSOR - case 28: { - std::vector *vec = static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_SWITCH - case 29: { - std::vector *vec = static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_SWITCH - case 30: { - std::vector *vec = static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_SWITCH - case 31: { - std::vector *vec = static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_TEXT_SENSOR - case 32: { - std::vector *vec = - static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_TEXT_SENSOR - case 33: { - std::vector *vec = static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif - case 34: { - std::vector *vec = static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } - case 35: { - std::vector *vec = static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#ifdef USE_API_NOISE - case 36: { - std::vector *vec = - static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_API_NOISE - case 37: { - std::vector *vec = - static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif - case 38: { - std::vector *vec = - static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } - case 39: { - std::vector *vec = static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } - case 40: { - std::vector *vec = - static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } - case 41: { - std::vector *vec = - static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } - case 42: { - std::vector *vec = - static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } - case 43: { - std::vector *vec = static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } - case 44: { - std::vector *vec = static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } - case 45: { - std::vector *vec = static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } - case 46: { - std::vector *vec = - static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } - case 47: { - std::vector *vec = - static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } - case 48: { - std::vector *vec = static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } - case 49: { - std::vector *vec = static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#ifdef USE_CAMERA - case 50: { - std::vector *vec = static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_CAMERA - case 51: { - std::vector *vec = static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_CAMERA - case 52: { - std::vector *vec = static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_CLIMATE - case 53: { - std::vector *vec = - static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_CLIMATE - case 54: { - std::vector *vec = static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_CLIMATE - case 55: { - std::vector *vec = static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_NUMBER - case 56: { - std::vector *vec = static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_NUMBER - case 57: { - std::vector *vec = static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_NUMBER - case 58: { - std::vector *vec = static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_SELECT - case 59: { - std::vector *vec = static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_SELECT - case 60: { - std::vector *vec = static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_SELECT - case 61: { - std::vector *vec = static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_SIREN - case 62: { - std::vector *vec = static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_SIREN - case 63: { - std::vector *vec = static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_SIREN - case 64: { - std::vector *vec = static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_LOCK - case 65: { - std::vector *vec = static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_LOCK - case 66: { - std::vector *vec = static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_LOCK - case 67: { - std::vector *vec = static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_BUTTON - case 68: { - std::vector *vec = static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_BUTTON - case 69: { - std::vector *vec = static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_MEDIA_PLAYER - case 70: { - std::vector *vec = static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_MEDIA_PLAYER - case 71: { - std::vector *vec = - static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_MEDIA_PLAYER - case 72: { - std::vector *vec = static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_MEDIA_PLAYER - case 73: { - std::vector *vec = static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 74: { - std::vector *vec = - static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 75: { - std::vector *vec = static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 76: { - std::vector *vec = - static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 77: { - std::vector *vec = - static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 78: { - std::vector *vec = - static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 79: { - std::vector *vec = static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 80: { - std::vector *vec = - static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 81: { - std::vector *vec = - static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 82: { - std::vector *vec = static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 83: { - std::vector *vec = - static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 84: { - std::vector *vec = static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 85: { - std::vector *vec = - static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 86: { - std::vector *vec = - static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 87: { - std::vector *vec = static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 88: { - std::vector *vec = static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 89: { - std::vector *vec = static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 90: { - std::vector *vec = - static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 91: { - std::vector *vec = - static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 92: { - std::vector *vec = static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 93: { - std::vector *vec = - static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 94: { - std::vector *vec = - static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 95: { - std::vector *vec = - static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 96: { - std::vector *vec = static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 97: { - std::vector *vec = static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 98: { - std::vector *vec = - static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 99: { - std::vector *vec = - static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 100: { - std::vector *vec = - static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 101: { - std::vector *vec = - static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 102: { - std::vector *vec = - static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 103: { - std::vector *vec = - static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 104: { - std::vector *vec = - static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_VOICE_ASSISTANT - case 105: { - std::vector *vec = - static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_VOICE_ASSISTANT - case 106: { - std::vector *vec = - static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_VOICE_ASSISTANT - case 107: { - std::vector *vec = static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_VOICE_ASSISTANT - case 108: { - std::vector *vec = static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_VOICE_ASSISTANT - case 109: { - std::vector *vec = static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_VOICE_ASSISTANT - case 110: { - std::vector *vec = - static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_VOICE_ASSISTANT - case 111: { - std::vector *vec = static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_VOICE_ASSISTANT - case 112: { - std::vector *vec = - static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_VOICE_ASSISTANT - case 113: { - std::vector *vec = - static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_VOICE_ASSISTANT - case 114: { - std::vector *vec = - static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_VOICE_ASSISTANT - case 115: { - std::vector *vec = static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_VOICE_ASSISTANT - case 116: { - std::vector *vec = - static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_VOICE_ASSISTANT - case 117: { - std::vector *vec = - static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_VOICE_ASSISTANT - case 118: { - std::vector *vec = - static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_ALARM_CONTROL_PANEL - case 119: { - std::vector *vec = - static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_ALARM_CONTROL_PANEL - case 120: { - std::vector *vec = - static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_ALARM_CONTROL_PANEL - case 121: { - std::vector *vec = - static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_TEXT - case 122: { - std::vector *vec = static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_TEXT - case 123: { - std::vector *vec = static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_TEXT - case 124: { - std::vector *vec = static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_DATETIME_DATE - case 125: { - std::vector *vec = static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_DATETIME_DATE - case 126: { - std::vector *vec = static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_DATETIME_DATE - case 127: { - std::vector *vec = static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_DATETIME_TIME - case 128: { - std::vector *vec = static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_DATETIME_TIME - case 129: { - std::vector *vec = static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_DATETIME_TIME - case 130: { - std::vector *vec = static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_EVENT - case 131: { - std::vector *vec = static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_EVENT - case 132: { - std::vector *vec = static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_VALVE - case 133: { - std::vector *vec = static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_VALVE - case 134: { - std::vector *vec = static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_VALVE - case 135: { - std::vector *vec = static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_DATETIME_DATETIME - case 136: { - std::vector *vec = - static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_DATETIME_DATETIME - case 137: { - std::vector *vec = static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_DATETIME_DATETIME - case 138: { - std::vector *vec = static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_UPDATE - case 139: { - std::vector *vec = static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_UPDATE - case 140: { - std::vector *vec = static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif -#ifdef USE_UPDATE - case 141: { - std::vector *vec = static_cast *>(field_ptr); - vec->push_back(value.as_message()); - break; - } -#endif - default: - break; - } -} - -void size_repeated_message_field_by_type(uint32_t &total_size, uint8_t precalced_field_id_size, const void *field_ptr, - uint8_t message_type_id) { - switch (message_type_id) { - case 1: { - const std::vector *vec = static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } - case 2: { - const std::vector *vec = static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } - case 3: { - const std::vector *vec = static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } - case 4: { - const std::vector *vec = static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } - case 5: { - const std::vector *vec = static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } - case 6: { - const std::vector *vec = static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } - case 7: { - const std::vector *vec = static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } - case 8: { - const std::vector *vec = static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } - case 9: { - const std::vector *vec = static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } - case 10: { - const std::vector *vec = static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } - case 11: { - const std::vector *vec = static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } - case 12: { - const std::vector *vec = static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } - case 13: { - const std::vector *vec = static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } - case 14: { - const std::vector *vec = - static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } - case 15: { - const std::vector *vec = - static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#ifdef USE_BINARY_SENSOR - case 16: { - const std::vector *vec = - static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_BINARY_SENSOR - case 17: { - const std::vector *vec = - static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_COVER - case 18: { - const std::vector *vec = - static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_COVER - case 19: { - const std::vector *vec = static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_COVER - case 20: { - const std::vector *vec = static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_FAN - case 21: { - const std::vector *vec = - static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_FAN - case 22: { - const std::vector *vec = static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_FAN - case 23: { - const std::vector *vec = static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_LIGHT - case 24: { - const std::vector *vec = - static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_LIGHT - case 25: { - const std::vector *vec = static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_LIGHT - case 26: { - const std::vector *vec = static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_SENSOR - case 27: { - const std::vector *vec = - static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_SENSOR - case 28: { - const std::vector *vec = static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_SWITCH - case 29: { - const std::vector *vec = - static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_SWITCH - case 30: { - const std::vector *vec = static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_SWITCH - case 31: { - const std::vector *vec = static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_TEXT_SENSOR - case 32: { - const std::vector *vec = - static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_TEXT_SENSOR - case 33: { - const std::vector *vec = - static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif - case 34: { - const std::vector *vec = static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } - case 35: { - const std::vector *vec = - static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#ifdef USE_API_NOISE - case 36: { - const std::vector *vec = - static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_API_NOISE - case 37: { - const std::vector *vec = - static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif - case 38: { - const std::vector *vec = - static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } - case 39: { - const std::vector *vec = - static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } - case 40: { - const std::vector *vec = - static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } - case 41: { - const std::vector *vec = - static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } - case 42: { - const std::vector *vec = - static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } - case 43: { - const std::vector *vec = - static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } - case 44: { - const std::vector *vec = static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } - case 45: { - const std::vector *vec = static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } - case 46: { - const std::vector *vec = - static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } - case 47: { - const std::vector *vec = - static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } - case 48: { - const std::vector *vec = - static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } - case 49: { - const std::vector *vec = - static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#ifdef USE_CAMERA - case 50: { - const std::vector *vec = - static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_CAMERA - case 51: { - const std::vector *vec = static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_CAMERA - case 52: { - const std::vector *vec = static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_CLIMATE - case 53: { - const std::vector *vec = - static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_CLIMATE - case 54: { - const std::vector *vec = static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_CLIMATE - case 55: { - const std::vector *vec = - static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_NUMBER - case 56: { - const std::vector *vec = - static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_NUMBER - case 57: { - const std::vector *vec = static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_NUMBER - case 58: { - const std::vector *vec = static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_SELECT - case 59: { - const std::vector *vec = - static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_SELECT - case 60: { - const std::vector *vec = static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_SELECT - case 61: { - const std::vector *vec = static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_SIREN - case 62: { - const std::vector *vec = - static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_SIREN - case 63: { - const std::vector *vec = static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_SIREN - case 64: { - const std::vector *vec = static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_LOCK - case 65: { - const std::vector *vec = - static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_LOCK - case 66: { - const std::vector *vec = static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_LOCK - case 67: { - const std::vector *vec = static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_BUTTON - case 68: { - const std::vector *vec = - static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_BUTTON - case 69: { - const std::vector *vec = static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_MEDIA_PLAYER - case 70: { - const std::vector *vec = - static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_MEDIA_PLAYER - case 71: { - const std::vector *vec = - static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_MEDIA_PLAYER - case 72: { - const std::vector *vec = - static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_MEDIA_PLAYER - case 73: { - const std::vector *vec = - static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 74: { - const std::vector *vec = - static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, - *vec); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 75: { - const std::vector *vec = static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 76: { - const std::vector *vec = - static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 77: { - const std::vector *vec = - static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 78: { - const std::vector *vec = - static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 79: { - const std::vector *vec = - static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 80: { - const std::vector *vec = - static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 81: { - const std::vector *vec = - static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 82: { - const std::vector *vec = - static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 83: { - const std::vector *vec = - static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 84: { - const std::vector *vec = static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 85: { - const std::vector *vec = - static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 86: { - const std::vector *vec = - static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 87: { - const std::vector *vec = - static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 88: { - const std::vector *vec = - static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 89: { - const std::vector *vec = - static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 90: { - const std::vector *vec = - static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 91: { - const std::vector *vec = - static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 92: { - const std::vector *vec = - static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 93: { - const std::vector *vec = - static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 94: { - const std::vector *vec = - static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, - *vec); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 95: { - const std::vector *vec = - static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 96: { - const std::vector *vec = - static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 97: { - const std::vector *vec = - static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 98: { - const std::vector *vec = - static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 99: { - const std::vector *vec = - static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 100: { - const std::vector *vec = - static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 101: { - const std::vector *vec = - static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, - *vec); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 102: { - const std::vector *vec = - static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 103: { - const std::vector *vec = - static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_BLUETOOTH_PROXY - case 104: { - const std::vector *vec = - static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_VOICE_ASSISTANT - case 105: { - const std::vector *vec = - static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_VOICE_ASSISTANT - case 106: { - const std::vector *vec = - static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_VOICE_ASSISTANT - case 107: { - const std::vector *vec = - static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_VOICE_ASSISTANT - case 108: { - const std::vector *vec = - static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_VOICE_ASSISTANT - case 109: { - const std::vector *vec = - static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_VOICE_ASSISTANT - case 110: { - const std::vector *vec = - static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_VOICE_ASSISTANT - case 111: { - const std::vector *vec = static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_VOICE_ASSISTANT - case 112: { - const std::vector *vec = - static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_VOICE_ASSISTANT - case 113: { - const std::vector *vec = - static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_VOICE_ASSISTANT - case 114: { - const std::vector *vec = - static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_VOICE_ASSISTANT - case 115: { - const std::vector *vec = - static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_VOICE_ASSISTANT - case 116: { - const std::vector *vec = - static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_VOICE_ASSISTANT - case 117: { - const std::vector *vec = - static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_VOICE_ASSISTANT - case 118: { - const std::vector *vec = - static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_ALARM_CONTROL_PANEL - case 119: { - const std::vector *vec = - static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_ALARM_CONTROL_PANEL - case 120: { - const std::vector *vec = - static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_ALARM_CONTROL_PANEL - case 121: { - const std::vector *vec = - static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_TEXT - case 122: { - const std::vector *vec = - static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_TEXT - case 123: { - const std::vector *vec = static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_TEXT - case 124: { - const std::vector *vec = static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_DATETIME_DATE - case 125: { - const std::vector *vec = - static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_DATETIME_DATE - case 126: { - const std::vector *vec = static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_DATETIME_DATE - case 127: { - const std::vector *vec = static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_DATETIME_TIME - case 128: { - const std::vector *vec = - static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_DATETIME_TIME - case 129: { - const std::vector *vec = static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_DATETIME_TIME - case 130: { - const std::vector *vec = static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_EVENT - case 131: { - const std::vector *vec = - static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_EVENT - case 132: { - const std::vector *vec = static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_VALVE - case 133: { - const std::vector *vec = - static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_VALVE - case 134: { - const std::vector *vec = static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_VALVE - case 135: { - const std::vector *vec = static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_DATETIME_DATETIME - case 136: { - const std::vector *vec = - static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_DATETIME_DATETIME - case 137: { - const std::vector *vec = - static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_DATETIME_DATETIME - case 138: { - const std::vector *vec = - static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_UPDATE - case 139: { - const std::vector *vec = - static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_UPDATE - case 140: { - const std::vector *vec = static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif -#ifdef USE_UPDATE - case 141: { - const std::vector *vec = static_cast *>(field_ptr); - ProtoSize::add_repeated_message(total_size, precalced_field_id_size, *vec); - break; - } -#endif - default: - break; - } -} - } // namespace api } // namespace esphome diff --git a/esphome/components/api/proto.cpp b/esphome/components/api/proto.cpp index 60f37c1661..1ee32fbd9b 100644 --- a/esphome/components/api/proto.cpp +++ b/esphome/components/api/proto.cpp @@ -889,9 +889,10 @@ void ProtoMessage::decode_v2(const uint8_t *buffer, size_t length) { break; } case ProtoFieldType::TYPE_MESSAGE: { - // Use message type ID to call the appropriate handler - decode_message_field_by_type(field_addr, value, fields[j].message_type_id); - decoded = true; + // Use function pointer from metadata + if (fields[j].handler.message.decode) { + decoded = fields[j].handler.message.decode(field_addr, value); + } break; } default: @@ -921,9 +922,10 @@ void ProtoMessage::decode_v2(const uint8_t *buffer, size_t length) { break; } case ProtoFieldType::TYPE_MESSAGE: { - // Use message type ID to call the appropriate handler - decode_repeated_message_field_by_type(field_addr, value, repeated_fields[j].message_type_id); - decoded = true; + // Use function pointer from metadata + if (repeated_fields[j].handler.message.decode) { + decoded = repeated_fields[j].handler.message.decode(field_addr, value); + } break; } default: @@ -1202,8 +1204,10 @@ void ProtoMessage::encode_v2(ProtoWriteBuffer buffer) const { break; } case ProtoFieldType::TYPE_MESSAGE: { - // Use message type ID to call the appropriate handler - encode_message_field_by_type(buffer, fields[i].field_num, field_addr, fields[i].message_type_id); + // Use function pointer from metadata + if (fields[i].handler.message.encode) { + fields[i].handler.message.encode(buffer, field_addr, fields[i].field_num); + } break; } } @@ -1337,9 +1341,10 @@ void ProtoMessage::encode_v2(ProtoWriteBuffer buffer) const { break; } case ProtoFieldType::TYPE_MESSAGE: { - // Use message type ID to call the appropriate handler - encode_repeated_message_field_by_type(buffer, repeated_fields[i].field_num, field_addr, - repeated_fields[i].message_type_id); + // Use function pointer from metadata + if (repeated_fields[i].handler.message.encode) { + repeated_fields[i].handler.message.encode(buffer, field_addr, repeated_fields[i].field_num); + } break; } } @@ -1447,9 +1452,11 @@ void ProtoMessage::calculate_size_v2(uint32_t &total_size) const { break; } case ProtoFieldType::TYPE_MESSAGE: { - // Use message type ID to call the appropriate handler - size_message_field_by_type(total_size, fields[i].precalced_field_id_size, field_addr, fields[i].message_type_id, - fields[i].force_encode); + // Use function pointer from metadata + if (fields[i].handler.message.size) { + fields[i].handler.message.size(total_size, field_addr, fields[i].precalced_field_id_size, + fields[i].force_encode); + } break; } } @@ -1577,9 +1584,10 @@ void ProtoMessage::calculate_size_v2(uint32_t &total_size) const { break; } case ProtoFieldType::TYPE_MESSAGE: { - // Use message type ID to call the appropriate handler - size_repeated_message_field_by_type(total_size, repeated_fields[i].precalced_field_id_size, field_addr, - repeated_fields[i].message_type_id); + // Use function pointer from metadata + if (repeated_fields[i].handler.message.size) { + repeated_fields[i].handler.message.size(total_size, field_addr, repeated_fields[i].precalced_field_id_size); + } break; } } diff --git a/esphome/components/api/proto.h b/esphome/components/api/proto.h index 2d1469f374..68e7ef79a7 100644 --- a/esphome/components/api/proto.h +++ b/esphome/components/api/proto.h @@ -292,7 +292,16 @@ struct FieldMetaV2 { ProtoFieldType type; // Field type enum bool force_encode; // If true, encode even if value is default/empty uint8_t precalced_field_id_size; // Pre-calculated size of field tag in bytes - uint8_t message_type_id; // For TYPE_MESSAGE/TYPE_ENUM: identifies which type (0 for non-message/enum) + union { + // For TYPE_MESSAGE: function pointers (12 bytes on ESP32) + struct { + EncodeFunc encode; + SizeFunc size; + DecodeLengthFunc decode; + } message; + // For TYPE_ENUM: enum ID (1 byte) + uint8_t enum_id; + } handler; }; class ProtoWriteBuffer { @@ -483,7 +492,16 @@ struct RepeatedFieldMetaV2 { uint16_t offset; ProtoFieldType type; // Element type uint8_t precalced_field_id_size; // Pre-calculated size of field tag in bytes - uint8_t message_type_id; // For TYPE_MESSAGE/TYPE_ENUM: identifies which type (0 for non-message/enum) + union { + // For TYPE_MESSAGE: function pointers + struct { + RepeatedEncodeFunc encode; + RepeatedSizeFunc size; + RepeatedDecodeLengthFunc decode; + } message; + // For TYPE_ENUM: enum ID + uint8_t enum_id; + } handler; }; class ProtoMessage { @@ -688,6 +706,21 @@ template bool decode_repeated_enum_field(void *field_ptr, Pro template bool decode_repeated_message_field(void *field_ptr, ProtoLengthDelimited value); +// Forward declarations for message field template functions +template +void encode_message_field(ProtoWriteBuffer &buffer, const void *field_ptr, uint8_t field_num); + +template +void size_message_field(uint32_t &total_size, const void *field_ptr, uint8_t precalced_field_id_size, bool force); + +template bool decode_message_field(void *field_ptr, ProtoLengthDelimited value); + +template +void encode_repeated_message_field(ProtoWriteBuffer &buffer, const void *field_ptr, uint8_t field_num); + +template +void size_repeated_message_field(uint32_t &total_size, const void *field_ptr, uint8_t precalced_field_id_size); + // Core shared functions void encode_from_metadata(ProtoWriteBuffer buffer, const void *obj, const FieldMeta *fields, size_t field_count, const RepeatedFieldMeta *repeated_fields = nullptr, size_t repeated_count = 0); @@ -695,18 +728,5 @@ void encode_from_metadata(ProtoWriteBuffer buffer, const void *obj, const FieldM void calculate_size_from_metadata(uint32_t &total_size, const void *obj, const FieldMeta *fields, size_t field_count, const RepeatedFieldMeta *repeated_fields = nullptr, size_t repeated_count = 0); -// Message type handlers for V2 system -void encode_message_field_by_type(ProtoWriteBuffer &buffer, uint8_t field_num, const void *field_ptr, - uint8_t message_type_id); -void decode_message_field_by_type(void *field_ptr, ProtoLengthDelimited value, uint8_t message_type_id); -void size_message_field_by_type(uint32_t &total_size, uint8_t precalced_field_id_size, const void *field_ptr, - uint8_t message_type_id, bool force); - -void encode_repeated_message_field_by_type(ProtoWriteBuffer &buffer, uint8_t field_num, const void *field_ptr, - uint8_t message_type_id); -void decode_repeated_message_field_by_type(void *field_ptr, ProtoLengthDelimited value, uint8_t message_type_id); -void size_repeated_message_field_by_type(uint32_t &total_size, uint8_t precalced_field_id_size, const void *field_ptr, - uint8_t message_type_id); - } // namespace api } // namespace esphome diff --git a/esphome/components/api/proto_templates.h b/esphome/components/api/proto_templates.h index 9bfd375569..7453dd89de 100644 --- a/esphome/components/api/proto_templates.h +++ b/esphome/components/api/proto_templates.h @@ -25,6 +25,26 @@ template inline bool decode_enum_field(void *field_ptr, Proto return true; } +// Template functions for message field handling (regular fields) +template +inline void encode_message_field(ProtoWriteBuffer &buffer, const void *field_ptr, uint8_t field_num) { + const MessageType *msg = static_cast(field_ptr); + buffer.encode_message(field_num, *msg); +} + +template +inline void size_message_field(uint32_t &total_size, const void *field_ptr, uint8_t precalced_field_id_size, + bool force) { + const MessageType *msg = static_cast(field_ptr); + ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force); +} + +template inline bool decode_message_field(void *field_ptr, ProtoLengthDelimited value) { + MessageType *msg = static_cast(field_ptr); + *msg = value.as_message(); + return true; +} + // Template repeated field functions (must be in header for instantiation) template inline void encode_repeated_enum_field(ProtoWriteBuffer &buffer, const void *field_ptr, uint8_t field_num) { diff --git a/script/api_protobuf/api_protobuf.py b/script/api_protobuf/api_protobuf.py index ff9d02b1be..8bceab1f11 100755 --- a/script/api_protobuf/api_protobuf.py +++ b/script/api_protobuf/api_protobuf.py @@ -1385,25 +1385,33 @@ def build_message_type( if field_type: field_tag_size = ti.calculate_field_id_size() if field.type == descriptor.FieldDescriptorProto.TYPE_MESSAGE: - # For messages, get the type ID - message_type_id = get_message_type_id(ti._ti.type_name) + # For messages, generate function pointers + repeated_fields_v2.append( + f"{{{field.number}, PROTO_FIELD_OFFSET({desc.name}, {ti.field_name}), " + f"{field_type}, {field_tag_size}, " + f"{{.message = {{&encode_repeated_message_field<{ti._ti.type_name}>, " + f"&size_repeated_message_field<{ti._ti.type_name}>, " + f"&decode_repeated_message_field<{ti._ti.type_name}>}}}}}}" + ) else: - message_type_id = 0 # Non-message types have ID 0 - repeated_fields_v2.append( - f"{{{field.number}, PROTO_FIELD_OFFSET({desc.name}, {ti.field_name}), " - f"{field_type}, {field_tag_size}, {message_type_id}}}" - ) + # Non-message types don't need handler info + repeated_fields_v2.append( + f"{{{field.number}, PROTO_FIELD_OFFSET({desc.name}, {ti.field_name}), " + f"{field_type}, {field_tag_size}, {{}}}}" + ) elif isinstance(ti._ti, EnumType): enum_type_id = get_message_type_id(ti._ti.type_name) repeated_fields_v2.append( f"{{{field.number}, PROTO_FIELD_OFFSET({desc.name}, {ti.field_name}), " - f"ProtoFieldType::TYPE_ENUM, {ti.calculate_field_id_size()}, {enum_type_id}}}" + f"ProtoFieldType::TYPE_ENUM, {ti.calculate_field_id_size()}, {{.enum_id = {enum_type_id}}}}}" ) elif isinstance(ti._ti, MessageType): - message_type_id = get_message_type_id(ti._ti.type_name) repeated_fields_v2.append( f"{{{field.number}, PROTO_FIELD_OFFSET({desc.name}, {ti.field_name}), " - f"ProtoFieldType::TYPE_MESSAGE, {ti.calculate_field_id_size()}, {message_type_id}}}" + f"ProtoFieldType::TYPE_MESSAGE, {ti.calculate_field_id_size()}, " + f"{{.message = {{&encode_repeated_message_field<{ti._ti.type_name}>, " + f"&size_repeated_message_field<{ti._ti.type_name}>, " + f"&decode_repeated_message_field<{ti._ti.type_name}>}}}}}}" ) else: ti = TYPE_INFO[field.type](field) @@ -1413,29 +1421,37 @@ def build_message_type( if field_type: field_tag_size = ti.calculate_field_id_size() if field.type == descriptor.FieldDescriptorProto.TYPE_MESSAGE: - # For messages, get the type ID - message_type_id = get_message_type_id(ti.type_name) + # For messages, generate function pointers + regular_fields_v2.append( + f"{{{field.number}, PROTO_FIELD_OFFSET({desc.name}, {ti.field_name}), " + f"{field_type}, {force}, {field_tag_size}, " + f"{{.message = {{&encode_message_field<{ti.type_name}>, " + f"&size_message_field<{ti.type_name}>, " + f"&decode_message_field<{ti.type_name}>}}}}}}" + ) else: - message_type_id = 0 # Non-message types have ID 0 - regular_fields_v2.append( - f"{{{field.number}, PROTO_FIELD_OFFSET({desc.name}, {ti.field_name}), " - f"{field_type}, {force}, {field_tag_size}, {message_type_id}}}" - ) + # Non-message types don't need handler info + regular_fields_v2.append( + f"{{{field.number}, PROTO_FIELD_OFFSET({desc.name}, {ti.field_name}), " + f"{field_type}, {force}, {field_tag_size}, {{}}}}" + ) elif isinstance(ti, EnumType): field_tag_size = ti.calculate_field_id_size() # For enums, use the enum name as type ID enum_type_id = get_message_type_id(ti.type_name) regular_fields_v2.append( f"{{{field.number}, PROTO_FIELD_OFFSET({desc.name}, {ti.field_name}), " - f"ProtoFieldType::TYPE_ENUM, {force}, {field_tag_size}, {enum_type_id}}}" + f"ProtoFieldType::TYPE_ENUM, {force}, {field_tag_size}, {{.enum_id = {enum_type_id}}}}}" ) elif isinstance(ti, MessageType): field_tag_size = ti.calculate_field_id_size() - # For messages, use the message type name as type ID - message_type_id = get_message_type_id(ti.type_name) + # For messages, generate function pointers regular_fields_v2.append( f"{{{field.number}, PROTO_FIELD_OFFSET({desc.name}, {ti.field_name}), " - f"ProtoFieldType::TYPE_MESSAGE, {force}, {field_tag_size}, {message_type_id}}}" + f"ProtoFieldType::TYPE_MESSAGE, {force}, {field_tag_size}, " + f"{{.message = {{&encode_message_field<{ti.type_name}>, " + f"&size_message_field<{ti.type_name}>, " + f"&decode_message_field<{ti.type_name}>}}}}}}" ) metadata_info["regular_fields_v2"] = regular_fields_v2 @@ -2085,130 +2101,6 @@ namespace api { if current_ifdef is not None: cpp += "#endif\n" - # Generate message type handler functions - cpp += "\n// Message type handler implementations\n" - - # Sort by type ID for consistent output - sorted_types = sorted(MESSAGE_TYPE_REGISTRY.items(), key=lambda x: x[1]) - - # Generate encode handler - cpp += "void encode_message_field_by_type(ProtoWriteBuffer &buffer, uint8_t field_num, const void *field_ptr, uint8_t message_type_id) {\n" - cpp += " switch (message_type_id) {\n" - for message_name, type_id in sorted_types: - ifdef = message_ifdef_map.get(message_name) - if ifdef: - cpp += f"#ifdef {ifdef}\n" - cpp += f" case {type_id}: {{\n" - cpp += f" const {message_name} *msg = static_cast(field_ptr);\n" - cpp += f" buffer.encode_message<{message_name}>(field_num, *msg);\n" - cpp += " break;\n" - cpp += " }\n" - if ifdef: - cpp += "#endif\n" - cpp += " default:\n" - cpp += " break;\n" - cpp += " }\n" - cpp += "}\n\n" - - # Generate decode handler - cpp += "void decode_message_field_by_type(void *field_ptr, ProtoLengthDelimited value, uint8_t message_type_id) {\n" - cpp += " switch (message_type_id) {\n" - for message_name, type_id in sorted_types: - ifdef = message_ifdef_map.get(message_name) - if ifdef: - cpp += f"#ifdef {ifdef}\n" - cpp += f" case {type_id}: {{\n" - cpp += ( - f" {message_name} *msg = static_cast<{message_name} *>(field_ptr);\n" - ) - cpp += f" *msg = value.as_message<{message_name}>();\n" - cpp += " break;\n" - cpp += " }\n" - if ifdef: - cpp += "#endif\n" - cpp += " default:\n" - cpp += " break;\n" - cpp += " }\n" - cpp += "}\n\n" - - # Generate size handler - cpp += "void size_message_field_by_type(uint32_t &total_size, uint8_t precalced_field_id_size, const void *field_ptr, uint8_t message_type_id, bool force) {\n" - cpp += " switch (message_type_id) {\n" - for message_name, type_id in sorted_types: - ifdef = message_ifdef_map.get(message_name) - if ifdef: - cpp += f"#ifdef {ifdef}\n" - cpp += f" case {type_id}: {{\n" - cpp += f" const {message_name} *msg = static_cast(field_ptr);\n" - cpp += " ProtoSize::add_message_object(total_size, precalced_field_id_size, *msg, force);\n" - cpp += " break;\n" - cpp += " }\n" - if ifdef: - cpp += "#endif\n" - cpp += " default:\n" - cpp += " break;\n" - cpp += " }\n" - cpp += "}\n\n" - - # Generate repeated encode handler - cpp += "void encode_repeated_message_field_by_type(ProtoWriteBuffer &buffer, uint8_t field_num, const void *field_ptr, uint8_t message_type_id) {\n" - cpp += " switch (message_type_id) {\n" - for message_name, type_id in sorted_types: - ifdef = message_ifdef_map.get(message_name) - if ifdef: - cpp += f"#ifdef {ifdef}\n" - cpp += f" case {type_id}: {{\n" - cpp += f" const std::vector<{message_name}> *vec = static_cast *>(field_ptr);\n" - cpp += " for (const auto &msg : *vec) {\n" - cpp += f" buffer.encode_message<{message_name}>(field_num, msg, true);\n" - cpp += " }\n" - cpp += " break;\n" - cpp += " }\n" - if ifdef: - cpp += "#endif\n" - cpp += " default:\n" - cpp += " break;\n" - cpp += " }\n" - cpp += "}\n\n" - - # Generate repeated decode handler - cpp += "void decode_repeated_message_field_by_type(void *field_ptr, ProtoLengthDelimited value, uint8_t message_type_id) {\n" - cpp += " switch (message_type_id) {\n" - for message_name, type_id in sorted_types: - ifdef = message_ifdef_map.get(message_name) - if ifdef: - cpp += f"#ifdef {ifdef}\n" - cpp += f" case {type_id}: {{\n" - cpp += f" std::vector<{message_name}> *vec = static_cast *>(field_ptr);\n" - cpp += f" vec->push_back(value.as_message<{message_name}>());\n" - cpp += " break;\n" - cpp += " }\n" - if ifdef: - cpp += "#endif\n" - cpp += " default:\n" - cpp += " break;\n" - cpp += " }\n" - cpp += "}\n\n" - - # Generate repeated size handler - cpp += "void size_repeated_message_field_by_type(uint32_t &total_size, uint8_t precalced_field_id_size, const void *field_ptr, uint8_t message_type_id) {\n" - cpp += " switch (message_type_id) {\n" - for message_name, type_id in sorted_types: - ifdef = message_ifdef_map.get(message_name) - if ifdef: - cpp += f"#ifdef {ifdef}\n" - cpp += f" case {type_id}: {{\n" - cpp += f" const std::vector<{message_name}> *vec = static_cast *>(field_ptr);\n" - cpp += f" ProtoSize::add_repeated_message<{message_name}>(total_size, precalced_field_id_size, *vec);\n" - cpp += " break;\n" - cpp += " }\n" - if ifdef: - cpp += "#endif\n" - cpp += " default:\n" - cpp += " break;\n" - cpp += " }\n" - cpp += "}\n" - cpp += """\ } // namespace api