PebbleOS v4.44.0-79-gafcb109f5
Loading...
Searching...
No Matches
backend.h File Reference
#include <stdbool.h>
#include <stdint.h>
#include <pbl/kernel/compiler.h>
#include <pbl/kernel/section.h>

Data Structures

struct  pbl_log_msg
 Log message. More...
 
struct  pbl_log_backend_api
 Backend operations. More...
 
struct  pbl_log_backend_state
 Runtime state of a backend. More...
 
struct  pbl_log_backend
 Backend. More...
 

Macros

#define PBL_LOG_MSG_ASYNC   (1U << 0)
 The message may be written after pbl_log_backend_api::process returns.
 
#define PBL_LOG_MSG_FAULT   (1U << 1)
 The message comes from a fault handler, where OS services are unavailable.
 
#define PBL_LOG_BACKEND_DEFINE(_name, _api, _level, _autostart)
 Define a backend.
 
#define PBL_LOG_BACKEND_GET(_name)
 Get a backend defined with PBL_LOG_BACKEND_DEFINE.
 

Functions

void pbl_log_backend_enable (const struct pbl_log_backend *backend)
 Start passing messages to backend.
 
void pbl_log_backend_disable (const struct pbl_log_backend *backend)
 Stop passing messages to backend.
 
bool pbl_log_backend_is_enabled (const struct pbl_log_backend *backend)
 Whether messages are passed to backend.
 
void pbl_log_backend_set_level (const struct pbl_log_backend *backend, int level)
 Set the highest LOG_LEVEL_* level written by backend.
 
const struct pbl_log_backend * pbl_log_backend_get_by_name (const char *name)
 Find a backend by name.
 
void pbl_log_init (void)
 Initialize the backends.
 
void pbl_log_panic (void)
 Have every backend write out its pending messages, the system is about to stop.