#ifndef ACL_DEBUG_INCLUDE_H #define ACL_DEBUG_INCLUDE_H #include "acl_define.h" #include "acl_msg.h" #ifdef __cplusplus extern "C" { #endif #define ACL_DEBUG_INTER_BASE 0 /**< 最小调试标签值 */ #define ACL_DEBUG_WQ (ACL_DEBUG_INTER_BASE + 1) /**< ACL_WORKQ 调试标签 */ #define ACL_DEBUG_PROCTL (ACL_DEBUG_INTER_BASE + 2) /**< ACL_PROCTL 调试标签 */ #define ACL_DEBUG_THR_POOL (ACL_DEBUG_INTER_BASE + 3) /**< ACL_PTHREAD_POOL 调试标签 */ #define ACL_DEBUG_EVENT (ACL_DEBUG_INTER_BASE + 4) /**< ACL_EVENT 调度标签 */ /** * 日志调试宏接口 * @param SECTION {int} 调试标签值 * @param LEVEL {int} 对应于SECTION调试标签的级别 */ #define acl_debug(SECTION, LEVEL) \ !acl_do_debug((SECTION), (LEVEL)) ? (void) 0 : acl_msg_info /** * 释放内部一些内存等资源 */ ACL_API void acl_debug_end(void); /** * 初始化日志调试调用接口 * @param ptr {const char*} 调试标签及级别字符串, * 格式: 1:1, 2:10, 3:8... or 1:1; 2:10; 3:8... */ ACL_API void acl_debug_init(const char *ptr); /** * 初始化日志调试调用接口 * @param ptr {const char*} 调试标签及级别字符串, * 格式: 1:1, 2:10, 3:8... or 1:1; 2:10; 3:8... * @param max_debug_level {int} 最大调试标签值 */ ACL_API void acl_debug_init2(const char *ptr, int max_debug_level); /** * 判断给定标签的级别是否在日志输出条件范围内 * @param section {int} 标签值 * @param level {int} 级别值 */ ACL_API int acl_do_debug(int section, int level); #ifdef __cplusplus } #endif #endif