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 @@ class Debouncer 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 @@ class Bounce : public Debouncer @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; }; /*!