typedef struct { /* The application's current state */ APP_STATES state; /* TODO: Define any additional data used by the application. */ /* Handle to the timer object to poll for switch press */ SYS_TMR_HANDLE tmrObj1; /* Handle to the timer object to debounce switch and blink LED. */ SYS_TMR_HANDLE tmrObj2; /* Switch press is detected but not confirmed (not debounced). */ bool pressDetected; /* Switch press or release is confirmed (debounced). */ bool switchIsPressed; /* Counts the number of consecutive successful switch press or switch release reads. */ unsigned int debounceCounter; /* Switch debounce timeout counter puts a limit on how long the switch debounce is attempted. If a press is not confirmed before the timeout, pressDetected is set to false, and the state machine reverts to the previous state. */ unsigned int timeoutCounter; } APP_DATA;