Appiko
irq_msg_util.h
1 
30 #ifndef CODEBASE_UTIL_IRQ_MSG_UTIL_H_
31 #define CODEBASE_UTIL_IRQ_MSG_UTIL_H_
32 
33 #include "stdint.h"
34 
35 typedef enum {
36  MSG_NEXT_INTERVAL,
37  MSG_STATE_CHANGE,
38 
39  MSG_MAX_SIZE = ((2^32)-1) //To make the enum 32 bit long
40 }irq_msg_types;
41 
42 typedef struct {
43  void (*next_interval_cb)(uint32_t duration);
44  void (*state_change_cb)(uint32_t next_state);
45 }irq_msg_callbacks;
46 
52 void irq_msg_init(irq_msg_callbacks * cb_ptr);
53 
60 void irq_msg_push(irq_msg_types pushed_msg, void * more_data);
61 
66 void irq_msg_process(void);
67 
68 #endif /* CODEBASE_UTIL_IRQ_MSG_UTIL_H_ */
69 
void irq_msg_init(irq_msg_callbacks *cb_ptr)
Definition: irq_msg_util.c:53
void irq_msg_process(void)
Definition: irq_msg_util.c:77
void irq_msg_push(irq_msg_types pushed_msg, void *more_data)
Definition: irq_msg_util.c:64