feat: 新增自定义事件队列的初始化方式

This commit is contained in:
赵天浩
2026-04-21 03:57:54 +08:00
parent e0ca05678a
commit 80e4dd2fc5
2 changed files with 39 additions and 3 deletions

28
fsm.c
View File

@@ -1,4 +1,30 @@
//
// Created by Hydro on 2026/4/21.
//
#include "fsm.h"
#include "fsm.h"
fsm_result_e
fsm_init_with_queue (fsm_handle_t *handle_ptr,
const fsm_event_queue_init event_queue_init,
const fsm_event_queue_put event_queue_put,
const fsm_event_queue_get event_queue_get)
{
fsm_result_e result = FSM_OK;
do
{
if (!(handle_ptr && event_queue_init && event_queue_put
&& event_queue_get))
{
result = FSM_FAIL;
break;
}
handle_ptr->event_queue_get = event_queue_get;
handle_ptr->event_queue_put = event_queue_put;
handle_ptr->event_queue_init = event_queue_init;
result = handle_ptr->event_queue_init(handle_ptr->event_queue_handle,
handle_ptr->event_queue,
EVENT_QUEUE_LEN
* sizeof(fsm_event_t));
} while (0);
return result;
}