Home IO Control
ESPHome add-on for IO-Homecontrol devices
Loading...
Searching...
No Matches
proto_device_types.cpp File Reference

The IO node-type / subtype table and its lookups. More...

#include "proto_device_types.h"
#include <algorithm>
#include <cstdio>
#include <iterator>
Include dependency graph for proto_device_types.cpp:

Go to the source code of this file.

Namespaces

namespace  esphome
namespace  esphome::home_io_control

Functions

const DeviceTypeInfo * esphome::home_io_control::find_exact_device_type_info (DeviceType type, uint8_t subtype)
 Look up the table row with exactly this (type, subtype), without falling back.
const DeviceTypeInfo * esphome::home_io_control::find_device_model_info (DeviceType type, uint8_t subtype, DeviceModel model)
 Look up the model row with exactly this (type, subtype, model), without falling back.
bool esphome::home_io_control::device_offers_models (DeviceType type, uint8_t subtype)
 Does this exact (type, subtype) have model rows below it?
const DeviceTypeInfo * esphome::home_io_control::find_device_type_info (DeviceType type, uint8_t subtype, DeviceModel model)
 Look up the table row for a (type, subtype, model).
bool esphome::home_io_control::device_has_platform (DeviceType type, uint8_t subtype)
 Can an ESPHome platform drive this (type, subtype) today?
const char * esphome::home_io_control::device_platform_name (DeviceType type, uint8_t subtype)
 Name of the ESPHome platform that drives this (type, subtype).
bool esphome::home_io_control::device_is_experimental (DeviceType type, uint8_t subtype)
 Is this (type, subtype) a kind no capture or report has confirmed on a real device?
DeviceCapabilityClass esphome::home_io_control::device_capability_class (DeviceType type, uint8_t subtype)
 Capability class of a (type, subtype), subtype-aware.
DeviceFeatures esphome::home_io_control::device_features (DeviceType type, uint8_t subtype, DeviceModel model)
 Capability bits of a (type, subtype, model).
DeviceFeatures esphome::home_io_control::undeclared_kind_features (DeviceCapabilityClass entity_class)
 Features of a device kind that has no table row, or that is not declared at all.
std::string esphome::home_io_control::format_device_kind (DeviceType type, uint8_t subtype)
 Human-readable description of a (type, subtype) for logs and reports.
std::string esphome::home_io_control::format_device_ids (DeviceType type, uint8_t subtype)
 Wire values of a (type, subtype), for logs that must stay readable without the table.

Detailed Description

The IO node-type / subtype table and its lookups.

Definition in file proto_device_types.cpp.