diff options
Diffstat (limited to 'code/fe310/eos/event.h')
-rw-r--r-- | code/fe310/eos/event.h | 16 |
1 files changed, 12 insertions, 4 deletions
diff --git a/code/fe310/eos/event.h b/code/fe310/eos/event.h index 21079b4..ce71c0b 100644 --- a/code/fe310/eos/event.h +++ b/code/fe310/eos/event.h @@ -1,9 +1,15 @@ #include <stdint.h> -#define EOS_EVT_MASK_NET 0x80 -#define EOS_EVT_TIMER 0x01 -#define EOS_EVT_UI 0x02 +#define EOS_EVT_FLAG_WRAP 0x1 +#define EOS_EVT_NET 0x10 +#define EOS_EVT_TIMER 0x20 +#define EOS_EVT_AUDIO 0x30 +#define EOS_EVT_UI 0x40 + +#define EOS_EVT_MASK 0xF0 + +#define EOS_EVT_MAX_EVT 4 #define EOS_EVT_SIZE_Q 4 typedef void (*eos_evt_fptr_t) (unsigned char, unsigned char *, uint16_t); @@ -11,6 +17,8 @@ typedef void (*eos_evt_fptr_t) (unsigned char, unsigned char *, uint16_t); void eos_evtq_init(void); int eos_evtq_push(unsigned char cmd, unsigned char *buffer, uint16_t len); void eos_evtq_pop(unsigned char *cmd, unsigned char **buffer, uint16_t *len); +void eos_evtq_bad_handler(unsigned char cmd, unsigned char *buffer, uint16_t len); +void eos_evtq_handler_wrapper(unsigned char cmd, unsigned char *buffer, uint16_t len, uint16_t *flags_acq, uint16_t flag, eos_evt_fptr_t f); void eos_evtq_handle(unsigned char cmd, unsigned char *buffer, uint16_t len); void eos_evtq_loop(void); -void eos_evtq_set_handler(unsigned char cmd, eos_evt_fptr_t handler);
\ No newline at end of file +void eos_evtq_set_handler(unsigned char cmd, eos_evt_fptr_t handler, uint8_t flags); |