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