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
9
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
17
18#ifdef __cplusplus
19extern "C" {
20#endif
21
28typedef void (*tdf_logger_custom_log_t)(uint8_t tdf_loggers, uint64_t timestamp);
29
35void task_tdf_logger_fn(struct k_work *work);
36
45void task_tdf_logger_manual_run(uint8_t tdf_loggers, uint64_t timestamp, uint16_t tdfs,
46 tdf_logger_custom_log_t custom_logger);
47
51#define _TDF_LOGGER_TASK_INSTANCE(_name, _task_id, define_mem, define_config, custom_logger) \
52 IF_ENABLED(define_config, ({.name = _name, \
53 .task_id = _task_id, \
54 .exec_type = TASK_EXECUTOR_WORKQUEUE, \
55 .task_arg.const_arg = custom_logger, \
56 .executor.workqueue = { \
57 .worker_fn = task_tdf_logger_fn, \
58 }}))
59
68#define TDF_LOGGER_TASK(define_mem, define_config, custom_logger) \
69 _TDF_LOGGER_TASK_INSTANCE("tdfl", TASK_ID_TDF_LOGGER, define_mem, define_config, \
70 custom_logger)
71
83#define TDF_LOGGER_ALT1_TASK(define_mem, define_config, custom_logger) \
84 _TDF_LOGGER_TASK_INSTANCE("tdfl1", TASK_ID_TDF_LOGGER_ALT1, define_mem, define_config, \
85 custom_logger)
86
98#define TDF_LOGGER_ALT2_TASK(define_mem, define_config, custom_logger) \
99 _TDF_LOGGER_TASK_INSTANCE("tdfl2", TASK_ID_TDF_LOGGER_ALT2, define_mem, define_config, \
100 custom_logger)
101
102#ifdef __cplusplus
103}
104#endif
105
106#endif /* INFUSE_SDK_INCLUDE_INFUSE_TASK_RUNNER_TASKS_TDF_LOGGER_H_ */
Autogenerated task runner task IDs.
Task Runner task scheduling.
Task Runner Task API.
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:28