1 #include "core_diag.h"
2
3 static void _core_diag_default_callback(void *diag_handle, uint64_t timestamp, int32_t code, uint8_t *data, uint32_t data_len);
4
5 static void *g_diag_handle = NULL;
6 static core_diag_callback g_diag_cb = _core_diag_default_callback;
7
_core_diag_default_callback(void * diag_handle,uint64_t timestamp,int32_t code,uint8_t * data,uint32_t data_len)8 static void _core_diag_default_callback(void *diag_handle, uint64_t timestamp, int32_t code, uint8_t *data, uint32_t data_len)
9 {
10
11 }
12
core_diag_set_cb(void * diag_handle,core_diag_callback cb)13 void core_diag_set_cb(void *diag_handle, core_diag_callback cb)
14 {
15 if (cb == NULL) {
16 g_diag_cb = _core_diag_default_callback;
17 g_diag_handle = NULL;
18 }else{
19 g_diag_handle = diag_handle;
20 g_diag_cb = cb;
21 }
22 }
23
core_diag(aiot_sysdep_portfile_t * sysdep,int32_t code,uint8_t * data,uint32_t data_len)24 void core_diag(aiot_sysdep_portfile_t *sysdep, int32_t code, uint8_t *data, uint32_t data_len)
25 {
26 g_diag_cb(g_diag_handle, core_log_get_timestamp(sysdep), code, data, data_len);
27 }
28