Jetson Linux API 参考文档

32.7.4 版本
NvLogging.h
前往此文件的文档。
1 /*
2  * 版权所有 (c) 2016, NVIDIA CORPORATION。保留所有权利。
3  *
4  * 只要满足以下条件,允许以源代码和二进制形式再分发和使用,无论是否修改:
5  *
6  * 条件:
7  * * 源代码的再分发必须保留上述版权声明、此条件列表和以下免责声明。
8  *
9  * * 二进制形式的再分发必须在随发行版提供的文档和/或其他材料中复制上述版权声明、此条件列表和以下免责声明。
10  *
11  * * 未经 NVIDIA CORPORATION 或其贡献者的特定事先书面许可,不得使用其名称来认可或推销源自本软件的产品。
12  *
13  *
14  *
15  *
16  * 本软件由版权所有者“按原样”提供,并且不承担任何明示或暗示的保证,包括但不限于对适销性和针对特定用途的适用性的暗示保证。在任何情况下,版权所有者或贡献者均不对任何直接、间接、偶然、特殊、惩戒性或后果性损害(包括但不限于采购替代商品或服务;使用、数据或利润损失;或业务中断),无论因何种原因以及基于何种责任理论(无论是合同、严格责任还是侵权行为,包括疏忽或其他)而引起,即使已被告知此类损害的可能性。
17  *
18  *
19  *
20  *
21  *
22  *
23  *
24  *
25  *
26  *
27  */
28 
36 #ifndef __NV_LOGGING_H_
37 #define __NV_LOGGING_H_
38 
39 #include <iostream>
40 #include <sstream>
41 
57 #define LOG_LEVEL_INFO 0
58 
61 #define LOG_LEVEL_ERROR 1
62 
65 #define LOG_LEVEL_WARN 2
66 
69 #define LOG_LEVEL_DEBUG 3
70 
75 extern int log_level;
76 
80 #define DEFAULT_LOG_LEVEL LOG_LEVEL_ERROR
81 
85 #define stringify(s) #s
86 #define xstringify(s) stringify(s)
87 #define __LINE_NUM_STR__ xstringify(__LINE__)
88 
89 extern const char *log_level_name[];
107 #define PRINT_MSG(level, str1) if(level <= log_level) { \
108  std::ostringstream ostr; \
109  ostr << "[" << log_level_name[level] << "] (" << \
110  __FILE__ << ":" __LINE_NUM_STR__ ") " << \
111  str1 << std::endl; \
112  std::cerr << ostr.str(); \
113  }
114 
118 #define INFO_MSG(str) PRINT_MSG(LOG_LEVEL_INFO, str)
119 
127 #define COMP_INFO_MSG(str) INFO_MSG("<" << comp_name << "> " << str)
128 
136 #define CAT_INFO_MSG(str) INFO_MSG("<" CAT_NAME "> " << str)
137 
141 #define ERROR_MSG(str) PRINT_MSG(LOG_LEVEL_ERROR, str)
142 
150 #define COMP_ERROR_MSG(str) ERROR_MSG("<" << comp_name << "> " << str)
151 
159 #define CAT_ERROR_MSG(str) ERROR_MSG("<" CAT_NAME "> " << str)
160 
165 #define SYS_ERROR_MSG(str) ERROR_MSG(str << ": " << strerror(errno))
166 
174 #define COMP_SYS_ERROR_MSG(str) SYS_ERROR_MSG("<" << comp_name << "> " << str)
175 
183 #define CAT_SYS_ERROR_MSG(str) SYS_ERROR_MSG("<" CAT_NAME "> " << str)
184 
188 #define WARN_MSG(str) PRINT_MSG(LOG_LEVEL_WARN, str)
189 
197 #define COMP_WARN_MSG(str) WARN_MSG("<" << comp_name << "> :" << str)
198 
207 #define CAT_WARN_MSG(str) WARN_MSG("<" CAT_NAME "> " << str)
208 
212 #define DEBUG_MSG(str) PRINT_MSG(LOG_LEVEL_DEBUG, str)
213 
221 #define COMP_DEBUG_MSG(str) DEBUG_MSG("<" << comp_name << "> :" << str)
222 
230 #define CAT_DEBUG_MSG(str) DEBUG_MSG("<" CAT_NAME "> " << str)
231 
232 #endif
233 
log_level
int log_level
通过赋值 LOG_LEVEL_* 值之一,在运行时保存当前的日志级别。
. All rights reserved.