16#define LOG_PIN(prefix, pin) log_pin(TAG, F(prefix), pin)
18#define LOG_PIN(prefix, pin) log_pin(TAG, prefix, pin)
43 return static_cast<Flags>(
static_cast<uint8_t
>(lhs) &
static_cast<uint8_t
>(rhs));
46 return static_cast<Flags>(
static_cast<uint8_t
>(lhs) |
static_cast<uint8_t
>(rhs));
85 ESPDEPRECATED(
"Override dump_summary(char*, size_t) instead. Will be removed in 2026.7.0.",
"2026.1.0")
132#pragma GCC diagnostic push
133#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
135#pragma GCC diagnostic pop
136 size_t copy_len = std::min(s.size(),
len - 1);
137 memcpy(buffer, s.c_str(), copy_len);
138 buffer[copy_len] =
'\0';
151 len = std::min(
len,
sizeof(buffer) - 1);
152 esp_log_printf_(ESPHOME_LOG_LEVEL_CONFIG, tag, __LINE__,
"%s%.*s", prefix, (
int)
len, buffer);
157void log_pin(
const char *tag,
const __FlashStringHelper *prefix, GPIOPin *pin);
159void log_pin(
const char *tag,
const char *prefix, GPIOPin *pin);
virtual void pin_mode(gpio::Flags flags)=0
virtual void digital_write(bool value)=0
virtual ESPDEPRECATED("Override dump_summary(char*, size_t) instead. Will be removed in 2026.7.0.", "2026.1.0") virtual std boo is_internal)()
Get a summary of this pin as a string.
virtual gpio::Flags get_flags() const =0
Retrieve GPIO pin flags.
virtual bool digital_read()=0
virtual size_t dump_summary(char *buffer, size_t len) const
Write a summary of this pin to the provided buffer.
Copy of GPIOPin that is safe to use from ISRs (with no virtual functions)
ISRInternalGPIOPin(void *arg)
void digital_write(bool value)
void pin_mode(gpio::Flags flags)
ISRInternalGPIOPin()=default
virtual uint8_t get_pin() const =0
bool is_internal() override
virtual void detach_interrupt() const =0
void attach_interrupt(void(*func)(T *), T *arg, gpio::InterruptType type) const
virtual bool is_inverted() const =0
virtual ISRInternalGPIOPin to_isr() const =0
virtual void attach_interrupt(void(*func)(void *), void *arg, gpio::InterruptType type) const =0
constexpr FlagsHelper(Flags val)
constexpr FlagsHelper operator|(Flags lhs, Flags rhs)
constexpr FlagsHelper operator&(Flags lhs, Flags rhs)
Providing packet encoding functions for exchanging data with a remote host.
void HOT esp_log_printf_(int level, const char *tag, int line, const char *format,...)
void log_pin_with_prefix(const char *tag, const char *prefix, GPIOPin *pin)
constexpr size_t GPIO_SUMMARY_MAX_LEN
Maximum buffer size for dump_summary output.
struct ESPDEPRECATED("Use std::index_sequence instead. Removed in 2026.6.0", "2025.12.0") seq
void log_pin(const char *tag, const __FlashStringHelper *prefix, GPIOPin *pin)