|
ESPHome 2025.12.0-dev
|
#include <proto.h>
Public Member Functions | |
| virtual void | decode (const uint8_t *buffer, size_t length) |
Static Public Member Functions | |
| static uint32_t | count_repeated_field (const uint8_t *buffer, size_t length, uint32_t target_field_id) |
| Count occurrences of a repeated field in a protobuf buffer. | |
Protected Member Functions | |
| virtual bool | decode_varint (uint32_t field_id, ProtoVarInt value) |
| virtual bool | decode_length (uint32_t field_id, ProtoLengthDelimited value) |
| virtual bool | decode_32bit (uint32_t field_id, Proto32Bit value) |
|
static |
Count occurrences of a repeated field in a protobuf buffer.
This is a lightweight scan that only parses tags and skips field data.
| buffer | Pointer to the protobuf buffer |
| length | Length of the buffer in bytes |
| target_field_id | The field ID to count |
|
virtual |
Reimplemented in esphome::api::ExecuteServiceArgument, and esphome::api::ExecuteServiceRequest.
|
inlineprotectedvirtual |
Reimplemented in esphome::api::AlarmControlPanelCommandRequest, esphome::api::ButtonCommandRequest, esphome::api::ClimateCommandRequest, esphome::api::CoverCommandRequest, esphome::api::DateCommandRequest, esphome::api::DateTimeCommandRequest, esphome::api::ExecuteServiceArgument, esphome::api::ExecuteServiceRequest, esphome::api::FanCommandRequest, esphome::api::GetTimeResponse, esphome::api::LightCommandRequest, esphome::api::LockCommandRequest, esphome::api::MediaPlayerCommandRequest, esphome::api::NumberCommandRequest, esphome::api::SelectCommandRequest, esphome::api::SirenCommandRequest, esphome::api::SwitchCommandRequest, esphome::api::TextCommandRequest, esphome::api::TimeCommandRequest, esphome::api::UpdateCommandRequest, and esphome::api::ValveCommandRequest.
|
inlineprotectedvirtual |
Reimplemented in esphome::api::AlarmControlPanelCommandRequest, esphome::api::AuthenticationRequest, esphome::api::BluetoothGATTWriteDescriptorRequest, esphome::api::BluetoothGATTWriteRequest, esphome::api::ClimateCommandRequest, esphome::api::ExecuteServiceArgument, esphome::api::ExecuteServiceRequest, esphome::api::FanCommandRequest, esphome::api::GetTimeResponse, esphome::api::HelloRequest, esphome::api::HomeassistantActionResponse, esphome::api::HomeAssistantStateResponse, esphome::api::LightCommandRequest, esphome::api::LockCommandRequest, esphome::api::MediaPlayerCommandRequest, esphome::api::NoiseEncryptionSetKeyRequest, esphome::api::SelectCommandRequest, esphome::api::SirenCommandRequest, esphome::api::TextCommandRequest, esphome::api::VoiceAssistantAnnounceRequest, esphome::api::VoiceAssistantAudio, esphome::api::VoiceAssistantConfigurationRequest, esphome::api::VoiceAssistantEventData, esphome::api::VoiceAssistantEventResponse, esphome::api::VoiceAssistantExternalWakeWord, esphome::api::VoiceAssistantSetConfiguration, esphome::api::VoiceAssistantTimerEventResponse, esphome::api::ZWaveProxyFrame, and esphome::api::ZWaveProxyRequest.
|
inlineprotectedvirtual |
Reimplemented in esphome::api::AlarmControlPanelCommandRequest, esphome::api::BluetoothDeviceRequest, esphome::api::BluetoothGATTGetServicesRequest, esphome::api::BluetoothGATTNotifyRequest, esphome::api::BluetoothGATTReadDescriptorRequest, esphome::api::BluetoothGATTReadRequest, esphome::api::BluetoothGATTWriteDescriptorRequest, esphome::api::BluetoothGATTWriteRequest, esphome::api::BluetoothScannerSetModeRequest, esphome::api::ButtonCommandRequest, esphome::api::CameraImageRequest, esphome::api::ClimateCommandRequest, esphome::api::CoverCommandRequest, esphome::api::DateCommandRequest, esphome::api::DateTimeCommandRequest, esphome::api::ExecuteServiceArgument, esphome::api::FanCommandRequest, esphome::api::HelloRequest, esphome::api::HomeassistantActionResponse, esphome::api::LightCommandRequest, esphome::api::LockCommandRequest, esphome::api::MediaPlayerCommandRequest, esphome::api::NumberCommandRequest, esphome::api::SelectCommandRequest, esphome::api::SirenCommandRequest, esphome::api::SubscribeBluetoothLEAdvertisementsRequest, esphome::api::SubscribeLogsRequest, esphome::api::SubscribeVoiceAssistantRequest, esphome::api::SwitchCommandRequest, esphome::api::TextCommandRequest, esphome::api::TimeCommandRequest, esphome::api::UpdateCommandRequest, esphome::api::ValveCommandRequest, esphome::api::VoiceAssistantAnnounceRequest, esphome::api::VoiceAssistantAudio, esphome::api::VoiceAssistantEventResponse, esphome::api::VoiceAssistantExternalWakeWord, esphome::api::VoiceAssistantResponse, esphome::api::VoiceAssistantTimerEventResponse, and esphome::api::ZWaveProxyRequest.