libmetal
Toggle main menu visibility
Loading...
Searching...
No Matches
lib
log.h
Go to the documentation of this file.
1
/*
2
* Copyright (c) 2015, Xilinx Inc. and Contributors. All rights reserved.
3
*
4
* SPDX-License-Identifier: BSD-3-Clause
5
*/
6
7
/*
8
* @file log.h
9
* @brief Logging support for libmetal.
10
*/
11
12
#ifndef __METAL_METAL_LOG__H__
13
#define __METAL_METAL_LOG__H__
14
15
#ifdef __cplusplus
16
extern
"C"
{
17
#endif
18
22
24
enum
metal_log_level
{
25
METAL_LOG_EMERGENCY
,
26
METAL_LOG_ALERT
,
27
METAL_LOG_CRITICAL
,
28
METAL_LOG_ERROR
,
29
METAL_LOG_WARNING
,
30
METAL_LOG_NOTICE
,
31
METAL_LOG_INFO
,
32
METAL_LOG_DEBUG
,
33
};
34
36
typedef
void (*
metal_log_handler
)(
enum
metal_log_level
level,
37
const
char
*format, ...);
38
44
extern
void
metal_set_log_handler
(
metal_log_handler
handler);
45
50
extern
metal_log_handler
metal_get_log_handler
(
void
);
51
56
extern
void
metal_set_log_level
(
enum
metal_log_level
level);
57
62
extern
enum
metal_log_level
metal_get_log_level
(
void
);
63
71
extern
void
metal_default_log_handler
(
enum
metal_log_level
level,
72
const
char
*format, ...);
73
80
#define metal_log(level, ...) \
81
((level <= _metal.common.log_level && _metal.common.log_handler) \
82
? (void)_metal.common.log_handler(level, __VA_ARGS__) \
83
: (void)0)
84
86
87
#ifdef __cplusplus
88
}
89
#endif
90
91
#include <metal/system/@PROJECT_SYSTEM@/log.h>
92
93
#endif
/* __METAL_METAL_LOG__H__ */
metal_default_log_handler
void metal_default_log_handler(enum metal_log_level level, const char *format,...)
Default libmetal log handler. This handler prints libmetal log messages to stderr.
Definition
log.c:13
metal_log_level
metal_log_level
Definition
log.h:24
metal_get_log_handler
metal_log_handler metal_get_log_handler(void)
Get the current libmetal log handler.
Definition
log.c:49
metal_set_log_handler
void metal_set_log_handler(metal_log_handler handler)
Set libmetal log handler.
Definition
log.c:44
metal_log_handler
void(*) metal_log_handler(enum metal_log_level level, const char *format,...)
Definition
log.h:36
metal_set_log_level
void metal_set_log_level(enum metal_log_level level)
Set the level for libmetal logging.
Definition
log.c:54
metal_get_log_level
enum metal_log_level metal_get_log_level(void)
Get the current level for libmetal logging.
Definition
log.c:59
METAL_LOG_NOTICE
@ METAL_LOG_NOTICE
Definition
log.h:30
METAL_LOG_INFO
@ METAL_LOG_INFO
Definition
log.h:31
METAL_LOG_WARNING
@ METAL_LOG_WARNING
Definition
log.h:29
METAL_LOG_EMERGENCY
@ METAL_LOG_EMERGENCY
Definition
log.h:25
METAL_LOG_ALERT
@ METAL_LOG_ALERT
Definition
log.h:26
METAL_LOG_CRITICAL
@ METAL_LOG_CRITICAL
Definition
log.h:27
METAL_LOG_DEBUG
@ METAL_LOG_DEBUG
Definition
log.h:32
METAL_LOG_ERROR
@ METAL_LOG_ERROR
Definition
log.h:28
Generated on
for libmetal by
1.18.0