ESPHome 2026.11.0-dev
Loading...
Searching...
No Matches
esphome::gpio_expander::ExpanderGPIOPin< Parent > Class Template Referencefinal

Pin of a GPIO expander. More...

#include <expander_gpio_pin.h>

Inheritance diagram for esphome::gpio_expander::ExpanderGPIOPin< Parent >:
esphome::GPIOPin esphome::Parented< Parent >

Public Member Functions

 ExpanderGPIOPin ()
 
void setup () override
 
void pin_mode (gpio::Flags flags) override
 
bool digital_read () override
 
void digital_write (bool value) override
 
size_t dump_summary (char *buffer, size_t len) const override
 
void set_pin (uint8_t pin)
 
void set_inverted (bool inverted)
 
void set_flags (gpio::Flags flags)
 
gpio::Flags get_flags () const override
 
- Public Member Functions inherited from esphome::GPIOPin
virtual bool is_internal ()
 Only the platform pin class behind the InternalGPIOPin alias may return true: callers static_cast to InternalGPIOPin on it.
 
bool get_hold () const
 
virtual bool is_held () const
 
bool get_hold () const
 
bool is_held () const
 
- Public Member Functions inherited from esphome::Parented< Parent >
 Parented ()
 
 Parented (Parent *parent)
 
Parent * get_parent () const
 Get the parent of this object.
 
void set_parent (Parent *parent)
 Set the parent of this object.
 

Protected Attributes

uint8_t pin_ {0}
 
bool inverted_ {false}
 
gpio::Flags flags_ {}
 
- Protected Attributes inherited from esphome::Parented< Parent >
Parent * parent_
 

Detailed Description

template<typename Parent>
class esphome::gpio_expander::ExpanderGPIOPin< Parent >

Pin of a GPIO expander.

Parent provides pin_mode(pin, flags), digital_read(pin) and digital_write(pin, value). dump_summary() is specialized per expander with the macros below, outside the template so that its format string stays in flash on ESP8266; a missing macro is an undefined reference to ExpanderGPIOPin<X>::dump_summary. Built by pins.new_parented_pin().

Definition at line 12 of file expander_gpio_pin.h.

Constructor & Destructor Documentation

◆ ExpanderGPIOPin()

template<typename Parent >
esphome::gpio_expander::ExpanderGPIOPin< Parent >::ExpanderGPIOPin ( )
inline

Definition at line 15 of file expander_gpio_pin.h.

Member Function Documentation

◆ digital_read()

template<typename Parent >
bool esphome::gpio_expander::ExpanderGPIOPin< Parent >::digital_read ( )
inlineoverridevirtual

Implements esphome::GPIOPin.

Definition at line 19 of file expander_gpio_pin.h.

◆ digital_write()

template<typename Parent >
void esphome::gpio_expander::ExpanderGPIOPin< Parent >::digital_write ( bool value)
inlineoverridevirtual

Implements esphome::GPIOPin.

Definition at line 20 of file expander_gpio_pin.h.

◆ dump_summary()

template<typename Parent >
size_t esphome::gpio_expander::ExpanderGPIOPin< Parent >::dump_summary ( char * buffer,
size_t len ) const
overridevirtual

Reimplemented from esphome::GPIOPin.

◆ get_flags()

template<typename Parent >
gpio::Flags esphome::gpio_expander::ExpanderGPIOPin< Parent >::get_flags ( ) const
inlineoverridevirtual

Implements esphome::GPIOPin.

Definition at line 27 of file expander_gpio_pin.h.

◆ pin_mode()

template<typename Parent >
void esphome::gpio_expander::ExpanderGPIOPin< Parent >::pin_mode ( gpio::Flags flags)
inlineoverridevirtual

Implements esphome::GPIOPin.

Definition at line 18 of file expander_gpio_pin.h.

◆ set_flags()

template<typename Parent >
void esphome::gpio_expander::ExpanderGPIOPin< Parent >::set_flags ( gpio::Flags flags)
inline

Definition at line 25 of file expander_gpio_pin.h.

◆ set_inverted()

template<typename Parent >
void esphome::gpio_expander::ExpanderGPIOPin< Parent >::set_inverted ( bool inverted)
inline

Definition at line 24 of file expander_gpio_pin.h.

◆ set_pin()

template<typename Parent >
void esphome::gpio_expander::ExpanderGPIOPin< Parent >::set_pin ( uint8_t pin)
inline

Definition at line 23 of file expander_gpio_pin.h.

◆ setup()

template<typename Parent >
void esphome::gpio_expander::ExpanderGPIOPin< Parent >::setup ( )
inlineoverridevirtual

Implements esphome::GPIOPin.

Definition at line 17 of file expander_gpio_pin.h.

Field Documentation

◆ flags_

template<typename Parent >
gpio::Flags esphome::gpio_expander::ExpanderGPIOPin< Parent >::flags_ {}
protected

Definition at line 32 of file expander_gpio_pin.h.

◆ inverted_

template<typename Parent >
bool esphome::gpio_expander::ExpanderGPIOPin< Parent >::inverted_ {false}
protected

Definition at line 31 of file expander_gpio_pin.h.

◆ pin_

template<typename Parent >
uint8_t esphome::gpio_expander::ExpanderGPIOPin< Parent >::pin_ {0}
protected

Definition at line 30 of file expander_gpio_pin.h.


The documentation for this class was generated from the following file: