|
EX-Display
EX-Display
|
Mock physical input class. More...
#include <MockInput.h>
Public Member Functions | |
| MockInput () | |
| MockInput (int needsDisplay) | |
| MOCK_METHOD (void, begin,(),(override)) | |
| MOCK_METHOD (void, check,(),(override)) | |
| void | setIsCalibrating (bool isCalibrating) |
| void | setNeedsDisplay (int displayId) |
Public Member Functions inherited from InputInterface | |
| virtual void | begin ()=0 |
| Perform any initial once off setup or configuration here and call only once. | |
| virtual void | check ()=0 |
| Call this method at least once per main loop to monitor for input actions Any actions should call the callback set in the _callback attribute. | |
| void | setCallback (CallbackInterface *callback) |
| Set the instance for callbacks when users trigger an input action. | |
| void | setLogger (Logger *logger) |
| Set the logger instance to use for diagnostic logging. | |
| bool | isCalibrating () |
| Test if this InputInterface is undergoing calibration as required by touch screens. | |
| int | needsDisplay () |
| Test if this InputInterface requires a display instance - needed for TFT_eSPI as it shares the instance. | |
| void | setDisplay (DisplayInterface *display) |
| Set the DisplayInterface for this input if required. | |
| void | setDebounceDelay (unsigned long delay) |
| Set the debounce delay. | |
| void | setHoldThreshold (unsigned long threshold) |
| Set the threshold for detecting an input is held. | |
| void | forceCalibration () |
| Force a touch screen into calibration mode, even if existing calibration is valid. | |
| virtual | ~InputInterface ()=default |
| Destructor for an InputInterface. | |
Static Public Member Functions | |
| static MockInput * | create (int needsDisplay) |
Additional Inherited Members | |
Protected Member Functions inherited from InputInterface | |
| InputAction | _debounceOrHeld (InputAction currentAction) |
| Call this from the derived class' check() method to debounce and detect if the input is a hold vs. press. | |
| InputAction | _calculateInputAction (int touchX, int touchY, int displayWidth, int displayHeight) |
| This method is designed to take an input from a touch screen display and determine which "button" has been touched according to the coordinates of the touch. This assumes the touch screen has been calibrated correctly. | |
Protected Attributes inherited from InputInterface | |
| CallbackInterface * | _callback = nullptr |
| Pointer to the instance for callbacks Must implement updateScreen() and onInputAction() methods. | |
| Logger * | _logger = nullptr |
| Pointer to the Logger instance for derived classes to use. | |
| bool | _isCalibrating = false |
| Flag if the input interface is undergoing calibration - needed for touch screens. | |
| int | _needsDisplay = -1 |
| Display ID if this input interface requires a display instance - needed for TFT_eSPI as it shares the instance. | |
| DisplayInterface * | _display = nullptr |
| Pointer to the DisplayInterface if this input requires it. | |
| unsigned long | _lastDebounceTime = 0 |
| Time of the last debounce. | |
| unsigned long | _debounceDelay = 50 |
| Inputs must remain constant for this amount of time to be valid. | |
| unsigned long | _holdThreshold = 500 |
| Inputs constant for longer than this threshold change from PRESS to HOLD. | |
| InputAction | _lastAction = InputAction::PRESS_NONE |
| Set initial InputAction for comparisons in determining debounce or hold. | |
| bool | _isHolding = false |
| Flag to help determining if input is held. | |
| bool | _forceCalibration = false |
| Flag to force calibration for touch screens if it's required. | |
Mock physical input class.
|
inline |
|
inline |
|
inlinestatic |
| MockInput::MOCK_METHOD | ( | void | , |
| begin | , | ||
| () | , | ||
| (override) | |||
| ) |
| MockInput::MOCK_METHOD | ( | void | , |
| check | , | ||
| () | , | ||
| (override) | |||
| ) |
|
inline |
|
inline |