/**
 * @author Rémi Heredero (remi@heredero.ch)
 * @version 1.0.0
 * @date 2023-06-17
 */
#ifndef APP_H
#define	APP_H

#include "../xf/xf.h"

typedef enum {
    STAP_INIT,
    STAP_WAIT,
    STAP_BLINKER_L,
    STAP_BLINKER_R,
    STAP_BLINKER_LR,
    STAP_BLINKER_W
} APP_STATES;

typedef enum {
    evAPinit = 150,
    evAPclickL,
    evAPclickLn,
    evAPclickR,
    evAPclickRn,
    evAPendL,
    evAPendR,
    evAPlongClick
} APP_EVENTS;

typedef struct {
    APP_STATES state; // Actual state
} APP;

void APP_init(APP* me);
void APP_startBehaviour(APP* me);
bool APP_processEvent(Event* ev);

#endif	/* APP_H */

