| /* |
| * Copyright (c) 2019 Nordic Semiconductor ASA |
| * |
| * SPDX-License-Identifier: Apache-2.0 |
| */ |
| #ifndef LOG_FRONTEND_H_ |
| #define LOG_FRONTEND_H_ |
| |
| #include <logging/log_core.h> |
| |
| /** @brief Initialize frontend. |
| */ |
| void log_frontend_init(void); |
| |
| /** @brief Standard log with no arguments. |
| * |
| * @param str String. |
| * @param src_level Log identification. |
| */ |
| void log_frontend_0(const char *str, struct log_msg_ids src_level); |
| |
| /** @brief Standard log with one argument. |
| * |
| * @param str String. |
| * @param arg0 First argument. |
| * @param src_level Log identification. |
| */ |
| void log_frontend_1(const char *str, |
| log_arg_t arg0, |
| struct log_msg_ids src_level); |
| |
| /** @brief Standard log with two arguments. |
| * |
| * @param str String. |
| * @param arg0 First argument. |
| * @param arg1 Second argument. |
| * @param src_level Log identification. |
| */ |
| void log_frontend_2(const char *str, |
| log_arg_t arg0, |
| log_arg_t arg1, |
| struct log_msg_ids src_level); |
| |
| /** @brief Standard log with three arguments. |
| * |
| * @param str String. |
| * @param arg0 First argument. |
| * @param arg1 Second argument. |
| * @param arg2 Third argument. |
| * @param src_level Log identification. |
| */ |
| void log_frontend_3(const char *str, |
| log_arg_t arg0, |
| log_arg_t arg1, |
| log_arg_t arg2, |
| struct log_msg_ids src_level); |
| |
| /** @brief Standard log with arguments list. |
| * |
| * @param str String. |
| * @param args Array with arguments. |
| * @param narg Number of arguments in the array. |
| * @param src_level Log identification. |
| */ |
| void log_frontend_n(const char *str, |
| log_arg_t *args, |
| uint32_t narg, |
| struct log_msg_ids src_level); |
| |
| /** @brief Hexdump log. |
| * |
| * @param str String. |
| * @param data Data. |
| * @param length Data length. |
| * @param src_level Log identification. |
| */ |
| void log_frontend_hexdump(const char *str, |
| const uint8_t *data, |
| uint32_t length, |
| struct log_msg_ids src_level); |
| |
| /** @brief Log message. |
| * |
| * Message details does not contain timestamp. Since function is called in the |
| * context of log message call, implementation can use its own timestamping scheme. |
| * |
| * @param source Pointer to a structure associated with given source. It points to |
| * static structure or dynamic structure if runtime filtering is enabled. |
| * @ref log_const_source_id or @ref log_dynamic_source_id can be used to determine |
| * source id. |
| * |
| * @param desc Message descriptor. |
| * |
| * @param package Cbprintf package containing logging formatted string. Length s in @p desc. |
| * |
| * @param data Hexdump data. Length is in @p desc. |
| */ |
| void log_frontend_msg(const void *source, |
| const struct log_msg2_desc desc, |
| uint8_t *package, const void *data); |
| |
| /** @brief Panic state notification. */ |
| void log_frontend_panic(void); |
| |
| #endif /* LOG_FRONTEND_H_ */ |