From 83bc18e24592bac9247781ea7bd56702965494c1 Mon Sep 17 00:00:00 2001 From: James Myatt Date: Wed, 26 Aug 2020 13:53:35 +0100 Subject: [PATCH] Revert "Reuse state attribute for pressed state" This reverts commit 9babb4fc3857ca2959d5c88617c0e499f9da6f9c. --- src/Bounce2.h | 19 ++++++------------- 1 file changed, 6 insertions(+), 13 deletions(-) diff --git a/src/Bounce2.h b/src/Bounce2.h index ddd2035..4032a70 100644 --- a/src/Bounce2.h +++ b/src/Bounce2.h @@ -67,7 +67,7 @@ private: static const uint8_t UNSTABLE_STATE = 0b00000010; static const uint8_t CHANGED_STATE = 0b00000100; -protected: +private: inline void changeState(); inline void setStateFlag(const uint8_t flag) {state |= flag;} inline void unsetStateFlag(const uint8_t flag) {state &= ~flag;} @@ -241,9 +241,8 @@ protected: @brief The Debouncer:Bounce:Button class. The Button class matches an electrical state to a physical action. */ class Button : public Bounce{ - private: - // Note : this is private as it might change in the future - static const uint8_t PRESSED_STATE = 0b00001000; +protected: + bool stateForPressed = 1; // public: /*! @brief Create an instance of the Button class. By default, the pressed state is matched to a HIGH electrical level. @@ -255,10 +254,7 @@ class Button : public Bounce{ @endcode */ - Button(){ - // Default to pressed state is HIGH - setStateFlag(PRESSED_STATE); - } + Button(){ } /*! @brief Set the electrical state (HIGH/LOW) that corresponds to a physical press. By default, the pressed state is matched to a HIGH electrical level. @@ -268,17 +264,14 @@ class Button : public Bounce{ */ void setPressedState(bool state){ - if (state) - setStateFlag(PRESSED_STATE); - else - unsetStateFlag(PRESSED_STATE); + stateForPressed = state; } /*! @brief Get the electrical state (HIGH/LOW) that corresponds to a physical press. */ inline bool getPressedState() { - return getStateFlag(PRESSED_STATE); + return stateForPressed; }; /*!