9 #ifndef _FUND_EVENT_QUEUE_H_ 10 #define _FUND_EVENT_QUEUE_H_ 28 #define FUND_EVENT_QUEUE_HEADER_SIZE sizeof(event_header_t) 30 #define FUND_EVENT_QUEUE_BUF_SIZE(EVENT_SIZE, QUEUE_SIZE) \ 31 (((EVENT_SIZE) + FUND_EVENT_QUEUE_HEADER_SIZE) * ((QUEUE_SIZE) + 1)) 33 #define CEIL_DIV(A, B) \ 34 (((A) + (B) - 1) / (B)) 36 #define FUND_EVENT_QUEUE_INIT(EVENT_SIZE, QUEUE_SIZE) \ 39 static uint32_t FUND_EVENT_QUEUE_BUF[CEIL_DIV(FUND_EVENT_QUEUE_BUF_SIZE((EVENT_SIZE), (QUEUE_SIZE)), \ 41 fund_event_queue_init((EVENT_SIZE), (QUEUE_SIZE), FUND_EVENT_QUEUE_BUF); \ 49 uint16_t event_data_size,
58 #endif //_FUND_EVENT_QUEUE_H_ void(* fund_event_queue_handler_t)(void *p_event_data, uint16_t event_size)
Definition: fund_event_queue.h:20
uint16_t fund_event_queue_space_get(void)
uint32_t fund_event_queue_put(void const *p_event_data, uint16_t event_data_size, fund_event_queue_handler_t handler)
int32_t fund_event_queue_init(uint16_t event_size, uint16_t queue_size, void *p_evt_buffer)
void fund_event_queue_execute(void)