mirror of
https://github.com/esphome/esphome.git
synced 2025-02-12 16:08:19 +00:00
Make get_flags() in GPIOPin mandatory (#8182)
Co-authored-by: Keith Burzinski <kbx81x@gmail.com>
This commit is contained in:
parent
8de5af4eec
commit
5108b9a8b7
@ -57,6 +57,8 @@ class CH422GGPIOPin : public GPIOPin {
|
|||||||
void set_inverted(bool inverted) { inverted_ = inverted; }
|
void set_inverted(bool inverted) { inverted_ = inverted; }
|
||||||
void set_flags(gpio::Flags flags);
|
void set_flags(gpio::Flags flags);
|
||||||
|
|
||||||
|
gpio::Flags get_flags() const override { return this->flags_; }
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
CH422GComponent *parent_{};
|
CH422GComponent *parent_{};
|
||||||
uint8_t pin_{};
|
uint8_t pin_{};
|
||||||
|
@ -83,6 +83,8 @@ class MAX6956GPIOPin : public GPIOPin {
|
|||||||
void set_inverted(bool inverted) { inverted_ = inverted; }
|
void set_inverted(bool inverted) { inverted_ = inverted; }
|
||||||
void set_flags(gpio::Flags flags) { flags_ = flags; }
|
void set_flags(gpio::Flags flags) { flags_ = flags; }
|
||||||
|
|
||||||
|
gpio::Flags get_flags() const override { return this->flags_; }
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
MAX6956 *parent_;
|
MAX6956 *parent_;
|
||||||
uint8_t pin_;
|
uint8_t pin_;
|
||||||
|
@ -61,6 +61,8 @@ class MCP23016GPIOPin : public GPIOPin {
|
|||||||
void set_inverted(bool inverted) { inverted_ = inverted; }
|
void set_inverted(bool inverted) { inverted_ = inverted; }
|
||||||
void set_flags(gpio::Flags flags) { flags_ = flags; }
|
void set_flags(gpio::Flags flags) { flags_ = flags; }
|
||||||
|
|
||||||
|
gpio::Flags get_flags() const override { return this->flags_; }
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
MCP23016 *parent_;
|
MCP23016 *parent_;
|
||||||
uint8_t pin_;
|
uint8_t pin_;
|
||||||
|
@ -43,6 +43,8 @@ class MCP23XXXGPIOPin : public GPIOPin {
|
|||||||
void set_flags(gpio::Flags flags) { flags_ = flags; }
|
void set_flags(gpio::Flags flags) { flags_ = flags; }
|
||||||
void set_interrupt_mode(MCP23XXXInterruptMode interrupt_mode) { interrupt_mode_ = interrupt_mode; }
|
void set_interrupt_mode(MCP23XXXInterruptMode interrupt_mode) { interrupt_mode_ = interrupt_mode; }
|
||||||
|
|
||||||
|
gpio::Flags get_flags() const override { return this->flags_; }
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
MCP23XXXBase *parent_;
|
MCP23XXXBase *parent_;
|
||||||
uint8_t pin_;
|
uint8_t pin_;
|
||||||
|
@ -117,6 +117,8 @@ class MPR121GPIOPin : public GPIOPin {
|
|||||||
void set_inverted(bool inverted) { this->inverted_ = inverted; }
|
void set_inverted(bool inverted) { this->inverted_ = inverted; }
|
||||||
void set_flags(gpio::Flags flags) { this->flags_ = flags; }
|
void set_flags(gpio::Flags flags) { this->flags_ = flags; }
|
||||||
|
|
||||||
|
gpio::Flags get_flags() const override { return this->flags_; }
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
MPR121Component *parent_;
|
MPR121Component *parent_;
|
||||||
uint8_t pin_;
|
uint8_t pin_;
|
||||||
|
@ -52,6 +52,8 @@ class PCA6416AGPIOPin : public GPIOPin {
|
|||||||
void set_inverted(bool inverted) { inverted_ = inverted; }
|
void set_inverted(bool inverted) { inverted_ = inverted; }
|
||||||
void set_flags(gpio::Flags flags) { flags_ = flags; }
|
void set_flags(gpio::Flags flags) { flags_ = flags; }
|
||||||
|
|
||||||
|
gpio::Flags get_flags() const override { return this->flags_; }
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
PCA6416AComponent *parent_;
|
PCA6416AComponent *parent_;
|
||||||
uint8_t pin_;
|
uint8_t pin_;
|
||||||
|
@ -65,6 +65,8 @@ class PCA9554GPIOPin : public GPIOPin {
|
|||||||
void set_inverted(bool inverted) { inverted_ = inverted; }
|
void set_inverted(bool inverted) { inverted_ = inverted; }
|
||||||
void set_flags(gpio::Flags flags) { flags_ = flags; }
|
void set_flags(gpio::Flags flags) { flags_ = flags; }
|
||||||
|
|
||||||
|
gpio::Flags get_flags() const override { return this->flags_; }
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
PCA9554Component *parent_;
|
PCA9554Component *parent_;
|
||||||
uint8_t pin_;
|
uint8_t pin_;
|
||||||
|
@ -54,6 +54,8 @@ class PCF8574GPIOPin : public GPIOPin {
|
|||||||
void set_inverted(bool inverted) { inverted_ = inverted; }
|
void set_inverted(bool inverted) { inverted_ = inverted; }
|
||||||
void set_flags(gpio::Flags flags) { flags_ = flags; }
|
void set_flags(gpio::Flags flags) { flags_ = flags; }
|
||||||
|
|
||||||
|
gpio::Flags get_flags() const override { return this->flags_; }
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
PCF8574Component *parent_;
|
PCF8574Component *parent_;
|
||||||
uint8_t pin_;
|
uint8_t pin_;
|
||||||
|
@ -52,6 +52,9 @@ class SN74HC165GPIOPin : public GPIOPin, public Parented<SN74HC165Component> {
|
|||||||
void set_pin(uint16_t pin) { pin_ = pin; }
|
void set_pin(uint16_t pin) { pin_ = pin; }
|
||||||
void set_inverted(bool inverted) { inverted_ = inverted; }
|
void set_inverted(bool inverted) { inverted_ = inverted; }
|
||||||
|
|
||||||
|
/// Always returns `gpio::Flags::FLAG_INPUT`.
|
||||||
|
gpio::Flags get_flags() const override { return gpio::Flags::FLAG_INPUT; }
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
uint16_t pin_;
|
uint16_t pin_;
|
||||||
bool inverted_;
|
bool inverted_;
|
||||||
|
@ -59,6 +59,9 @@ class SN74HC595GPIOPin : public GPIOPin, public Parented<SN74HC595Component> {
|
|||||||
void set_pin(uint16_t pin) { pin_ = pin; }
|
void set_pin(uint16_t pin) { pin_ = pin; }
|
||||||
void set_inverted(bool inverted) { inverted_ = inverted; }
|
void set_inverted(bool inverted) { inverted_ = inverted; }
|
||||||
|
|
||||||
|
/// Always returns `gpio::Flags::FLAG_OUTPUT`.
|
||||||
|
gpio::Flags get_flags() const override { return gpio::Flags::FLAG_OUTPUT; }
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
uint16_t pin_;
|
uint16_t pin_;
|
||||||
bool inverted_;
|
bool inverted_;
|
||||||
|
@ -114,6 +114,8 @@ class NullPin : public GPIOPin {
|
|||||||
|
|
||||||
void pin_mode(gpio::Flags flags) override {}
|
void pin_mode(gpio::Flags flags) override {}
|
||||||
|
|
||||||
|
gpio::Flags get_flags() const override { return gpio::Flags::FLAG_NONE; }
|
||||||
|
|
||||||
bool digital_read() override { return false; }
|
bool digital_read() override { return false; }
|
||||||
|
|
||||||
void digital_write(bool value) override {}
|
void digital_write(bool value) override {}
|
||||||
|
@ -20,6 +20,8 @@ class SX1509GPIOPin : public GPIOPin {
|
|||||||
void set_inverted(bool inverted) { this->inverted_ = inverted; }
|
void set_inverted(bool inverted) { this->inverted_ = inverted; }
|
||||||
void set_flags(gpio::Flags flags) { this->flags_ = flags; }
|
void set_flags(gpio::Flags flags) { this->flags_ = flags; }
|
||||||
|
|
||||||
|
gpio::Flags get_flags() const override { return this->flags_; }
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
SX1509Component *parent_;
|
SX1509Component *parent_;
|
||||||
uint8_t pin_;
|
uint8_t pin_;
|
||||||
|
@ -54,6 +54,8 @@ class TCA9555GPIOPin : public GPIOPin, public Parented<TCA9555Component> {
|
|||||||
void set_inverted(bool inverted) { this->inverted_ = inverted; }
|
void set_inverted(bool inverted) { this->inverted_ = inverted; }
|
||||||
void set_flags(gpio::Flags flags) { this->flags_ = flags; }
|
void set_flags(gpio::Flags flags) { this->flags_ = flags; }
|
||||||
|
|
||||||
|
gpio::Flags get_flags() const override { return this->flags_; }
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
uint8_t pin_;
|
uint8_t pin_;
|
||||||
bool inverted_;
|
bool inverted_;
|
||||||
|
@ -275,6 +275,8 @@ class WeikaiGPIOPin : public GPIOPin {
|
|||||||
void set_inverted(bool inverted) { this->inverted_ = inverted; }
|
void set_inverted(bool inverted) { this->inverted_ = inverted; }
|
||||||
void set_flags(gpio::Flags flags) { this->flags_ = flags; }
|
void set_flags(gpio::Flags flags) { this->flags_ = flags; }
|
||||||
|
|
||||||
|
gpio::Flags get_flags() const override { return this->flags_; }
|
||||||
|
|
||||||
void setup() override;
|
void setup() override;
|
||||||
std::string dump_summary() const override;
|
std::string dump_summary() const override;
|
||||||
void pin_mode(gpio::Flags flags) override { this->parent_->set_pin_direction_(this->pin_, flags); }
|
void pin_mode(gpio::Flags flags) override { this->parent_->set_pin_direction_(this->pin_, flags); }
|
||||||
|
@ -36,6 +36,8 @@ class XL9535GPIOPin : public GPIOPin {
|
|||||||
void set_inverted(bool inverted) { this->inverted_ = inverted; }
|
void set_inverted(bool inverted) { this->inverted_ = inverted; }
|
||||||
void set_flags(gpio::Flags flags) { this->flags_ = flags; }
|
void set_flags(gpio::Flags flags) { this->flags_ = flags; }
|
||||||
|
|
||||||
|
gpio::Flags get_flags() const override { return this->flags_; }
|
||||||
|
|
||||||
void setup() override;
|
void setup() override;
|
||||||
std::string dump_summary() const override;
|
std::string dump_summary() const override;
|
||||||
void pin_mode(gpio::Flags flags) override;
|
void pin_mode(gpio::Flags flags) override;
|
||||||
|
@ -56,12 +56,9 @@ class GPIOPin {
|
|||||||
/**
|
/**
|
||||||
* @brief Retrieve GPIO pin flags.
|
* @brief Retrieve GPIO pin flags.
|
||||||
*
|
*
|
||||||
* @note This is currently optional to limit changes but will be mandatory in a future update.
|
* @return The GPIO flags describing the pin mode and properties.
|
||||||
* It is primarily applied to internal pins for now.
|
|
||||||
*
|
|
||||||
* @return The GPIO flags describing the pin mode and properties. Returns `gpio::Flags::FLAG_NONE` if not overridden.
|
|
||||||
*/
|
*/
|
||||||
virtual gpio::Flags get_flags() const { return gpio::Flags::FLAG_NONE; }
|
virtual gpio::Flags get_flags() const = 0;
|
||||||
|
|
||||||
virtual bool digital_read() = 0;
|
virtual bool digital_read() = 0;
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user