|
|
|
/**
|
|
|
|
* TODO file description
|
|
|
|
*/
|
|
|
|
|
|
|
|
#ifndef BLUEPILLTROUBA_APP_GUI_H
|
|
|
|
#define BLUEPILLTROUBA_APP_GUI_H
|
|
|
|
|
|
|
|
#include "cmsis_os2.h"
|
|
|
|
|
|
|
|
extern osThreadId_t guiTskHandle;
|
|
|
|
extern osMessageQueueId_t guiEventQueHandle;
|
|
|
|
|
|
|
|
void app_task_gui(void *argument);
|
|
|
|
|
|
|
|
// sent through the notify queue
|
|
|
|
typedef enum GuiEvent {
|
|
|
|
/// No event, zero; This is a default value.
|
|
|
|
GUI_EVENT_NONE = 0,
|
|
|
|
/// Cause redraw
|
|
|
|
GUI_EVENT_PAINT = 0,
|
|
|
|
/// Used as the argument when initing a screen
|
|
|
|
GUI_EVENT_SCREEN_INIT = 1,
|
|
|
|
/// Time tick, used to carry timing to the screen functions.
|
|
|
|
/// This tick has 10ms interval
|
|
|
|
GUI_EVENT_SCREEN_TICK = 2,
|
|
|
|
/// Knob rotate CW
|
|
|
|
GUI_EVENT_KNOB_PLUS,
|
|
|
|
/// Knob rotate CCW
|
|
|
|
GUI_EVENT_KNOB_MINUS,
|
|
|
|
/// Knob pressed
|
|
|
|
GUI_EVENT_KNOB_PRESS,
|
|
|
|
/// Knob released
|
|
|
|
GUI_EVENT_KNOB_RELEASE,
|
|
|
|
/// Temperature readings changed.
|
|
|
|
/// Not really an input event, but it should trigger a redraw
|
|
|
|
GUI_EVENT_TEMP_CHANGE,
|
|
|
|
} GuiEvent;
|
|
|
|
|
|
|
|
#endif //BLUEPILLTROUBA_APP_GUI_H
|