Add isPressed and getPressedState methods

This commit is contained in:
James Myatt
2020-08-25 13:54:33 +01:00
parent 59d3c66c56
commit 878f86bf1c
+18 -6
View File
@@ -267,22 +267,34 @@ protected:
stateForPressed = state;
}
/*!
@brief Get the electrical state (HIGH/LOW) that corresponds to a physical press.
*/
inline bool getPressedState() {
return stateForPressed;
};
/*!
@brief Returns true if the button is currently physically pressed.
*/
inline bool isPressed() {
return read() == getPressedState();
};
/*!
@brief Returns true if the button was physically pressed
*/
bool pressed() {
return changed() && (read() == stateForPressed);
inline bool pressed() {
return changed() && isPressed();
};
/*!
@brief Returns true if the button was physically released
*/
bool released() {
return changed() && (read() != stateForPressed);
inline bool released() {
return changed() && !isPressed();
};
};
#endif