LCOV - code coverage report
Current view: top level - zephyr/logging - log_frontend.h Hit Total Coverage
Test: new.info Lines: 6 7 85.7 %
Date: 2024-12-22 00:14:23

          Line data    Source code
       1           0 : /*
       2             :  * Copyright (c) 2019 Nordic Semiconductor ASA
       3             :  *
       4             :  * SPDX-License-Identifier: Apache-2.0
       5             :  */
       6             : #ifndef LOG_FRONTEND_H_
       7             : #define LOG_FRONTEND_H_
       8             : 
       9             : #include <zephyr/logging/log_core.h>
      10             : 
      11             : /** @brief Initialize frontend.
      12             :  */
      13           1 : void log_frontend_init(void);
      14             : 
      15             : /** @brief Log generic message.
      16             :  *
      17             :  * Message details does not contain timestamp. Since function is called in the
      18             :  * context of log message call, implementation can use its own timestamping scheme.
      19             :  *
      20             :  * @param source Pointer to a structure associated with given source. It points to
      21             :  * static structure or dynamic structure if runtime filtering is enabled.
      22             :  * @ref log_const_source_id or @ref log_dynamic_source_id can be used to determine
      23             :  * source id.
      24             :  *
      25             :  * @param desc Message descriptor.
      26             :  *
      27             :  * @param package Cbprintf package containing logging formatted string. Length s in @p desc.
      28             :  *
      29             :  * @param data Hexdump data. Length is in @p desc.
      30             :  */
      31           1 : void log_frontend_msg(const void *source,
      32             :                       const struct log_msg_desc desc,
      33             :                       uint8_t *package, const void *data);
      34             : 
      35             : /** @brief Log message with 0 arguments.
      36             :  *
      37             :  * Optimized version for log message which does not have arguments (only string).
      38             :  * This API is optional and is used only if optimizing common log messages is enabled.
      39             :  *
      40             :  * @param source Pointer to a structure associated with given source. It points to
      41             :  * static structure or dynamic structure if runtime filtering is enabled.
      42             :  * @ref log_const_source_id or @ref log_dynamic_source_id can be used to determine
      43             :  * source id.
      44             :  * @param level Severity level.
      45             :  * @param fmt  String.
      46             :  */
      47           1 : void log_frontend_simple_0(const void *source, uint32_t level, const char *fmt);
      48             : 
      49             : /** @brief Log message with 1 argument.
      50             :  *
      51             :  * Optimized version for log message which has one argument that fits in a 32 bit word.
      52             :  * This API is optional and is used only if optimizing common log messages is enabled.
      53             :  *
      54             :  * @param source Pointer to a structure associated with given source. It points to
      55             :  * static structure or dynamic structure if runtime filtering is enabled.
      56             :  * @ref log_const_source_id or @ref log_dynamic_source_id can be used to determine
      57             :  * source id.
      58             :  * @param level Severity level.
      59             :  * @param fmt  String.
      60             :  * @param arg  Argument passed to the string.
      61             :  */
      62           1 : void log_frontend_simple_1(const void *source, uint32_t level, const char *fmt, uint32_t arg);
      63             : 
      64             : /** @brief Log message with 2 arguments.
      65             :  *
      66             :  * Optimized version for log message which has two arguments that fit in a 32 bit word.
      67             :  * This API is optional and is used only if optimizing common log messages is enabled.
      68             :  *
      69             :  * @param source Pointer to a structure associated with given source. It points to
      70             :  * static structure or dynamic structure if runtime filtering is enabled.
      71             :  * @ref log_const_source_id or @ref log_dynamic_source_id can be used to determine
      72             :  * source id.
      73             :  * @param level Severity level.
      74             :  * @param fmt   String.
      75             :  * @param arg0  First argument passed to the string.
      76             :  * @param arg1  Second argument passed to the string.
      77             :  */
      78           1 : void log_frontend_simple_2(const void *source, uint32_t level,
      79             :                            const char *fmt, uint32_t arg0, uint32_t arg1);
      80             : 
      81             : /** @brief Panic state notification. */
      82           1 : void log_frontend_panic(void);
      83             : 
      84             : #endif /* LOG_FRONTEND_H_ */

Generated by: LCOV version 1.14