Infuse-IoT SDK API 0.0.1
A Scalable Open Source RTOS
Loading...
Searching...
No Matches
tdf_logger.h
Go to the documentation of this file.
1
10#ifndef INFUSE_SDK_INCLUDE_INFUSE_TASK_RUNNER_TASKS_TDF_LOGGER_H_
11#define INFUSE_SDK_INCLUDE_INFUSE_TASK_RUNNER_TASKS_TDF_LOGGER_H_
12
15
18
19#ifdef __cplusplus
20extern "C" {
21#endif
22
29typedef void (*tdf_logger_custom_log_t)(uint8_t tdf_loggers, uint64_t timestamp);
30
36void task_tdf_logger_fn(struct k_work *work);
37
46void task_tdf_logger_manual_run(uint8_t tdf_loggers, uint64_t timestamp, uint16_t tdfs,
47 tdf_logger_custom_log_t custom_logger);
48
52#define _TDF_LOGGER_TASK_INSTANCE(_name, _task_id, define_mem, define_config, custom_logger) \
53 IF_ENABLED(define_config, ({.name = _name, \
54 .task_id = _task_id, \
55 .exec_type = TASK_EXECUTOR_WORKQUEUE, \
56 .task_arg.const_arg = custom_logger, \
57 .executor.workqueue = { \
58 .worker_fn = task_tdf_logger_fn, \
59 }}))
60
69#define TDF_LOGGER_TASK(define_mem, define_config, custom_logger) \
70 _TDF_LOGGER_TASK_INSTANCE("tdfl", TASK_ID_TDF_LOGGER, define_mem, define_config, \
71 custom_logger)
72
84#define TDF_LOGGER_ALT1_TASK(define_mem, define_config, custom_logger) \
85 _TDF_LOGGER_TASK_INSTANCE("tdfl1", TASK_ID_TDF_LOGGER_ALT1, define_mem, define_config, \
86 custom_logger)
87
99#define TDF_LOGGER_ALT2_TASK(define_mem, define_config, custom_logger) \
100 _TDF_LOGGER_TASK_INSTANCE("tdfl2", TASK_ID_TDF_LOGGER_ALT2, define_mem, define_config, \
101 custom_logger)
102
103#ifdef __cplusplus
104}
105#endif
106
107#endif /* INFUSE_SDK_INCLUDE_INFUSE_TASK_RUNNER_TASKS_TDF_LOGGER_H_ */
Task Runner task scheduling.
Task Runner Task API.
TDF logger task.
void task_tdf_logger_fn(struct k_work *work)
TDF logger runner function.
void task_tdf_logger_manual_run(uint8_t tdf_loggers, uint64_t timestamp, uint16_t tdfs, tdf_logger_custom_log_t custom_logger)
Manually run the core TDF logging logic.
void(* tdf_logger_custom_log_t)(uint8_t tdf_loggers, uint64_t timestamp)
Application callback for custom TDF logging.
Definition tdf_logger.h:29