123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051 |
- #include "framework_compat.h"
- #include "esp_log.h"
- #include <stdio.h>
- static void *g_event_monitor = NULL;
- int iotx_event_regist_cb(void (*monitor_cb)(int event))
- {
- g_event_monitor = (void *)monitor_cb;
- return 0;
- }
- int iotx_event_post(int event)
- {
- if (g_event_monitor == NULL)
- {
- return -1;
- }
- ((void (*)(int))g_event_monitor)(event);
- return 0;
- }
- typedef struct
- {
- int eventid;
- void *callback;
- } impl_event_map_t;
- static impl_event_map_t g_impl_event_map[] = {
- {IOT_CONNECT_CLOUD_FAILT, NULL},
- {IOT_CONNECT_CLOUD_SUCCESS, NULL},
- {IOT_LOGIN_FAILT, NULL},
- {IOT_LOGIN_SUCCESS, NULL},
- {IOT_REGISTER_FAILT, NULL},
- {IOT_REGISTER_SUCCESS, NULL}};
- void *iotx_event_callback(int evt)
- {
- if (evt < 0 || evt >= sizeof(g_impl_event_map) / sizeof(impl_event_map_t))
- {
- return NULL;
- }
- return g_impl_event_map[evt].callback;
- }
- DEFINE_EVENT_CALLBACK(IOT_CONNECT_CLOUD_FAILT, void(*callback)(void));
- DEFINE_EVENT_CALLBACK(IOT_CONNECT_CLOUD_SUCCESS, void(*callback)(void));
- DEFINE_EVENT_CALLBACK(IOT_LOGIN_FAILT, void(*callback)(void));
- DEFINE_EVENT_CALLBACK(IOT_LOGIN_SUCCESS, void(*callback)(void));
- DEFINE_EVENT_CALLBACK(IOT_REGISTER_FAILT, void(*callback)(void));
- DEFINE_EVENT_CALLBACK(IOT_REGISTER_SUCCESS, void(*callback)(void));
|