10#ifndef INFUSE_SDK_INCLUDE_INFUSE_TASK_RUNNER_TASKS_ENVIRONMENTAL_H_
11#define INFUSE_SDK_INCLUDE_INFUSE_TASK_RUNNER_TASKS_ENVIRONMENTAL_H_
13#include <zephyr/kernel.h>
53#define ENVIRONMENTAL_TASK(define_mem, define_config, env_primary, env_secondary) \
54 IF_ENABLED(define_mem, (const struct task_environmental_devices _env_task_devices = { \
55 .primary = env_primary, \
56 .secondary = env_secondary, \
58 IF_ENABLED(define_config, ({.name = "env", \
59 .task_id = TASK_ID_ENVIRONMENTAL, \
60 .exec_type = TASK_EXECUTOR_WORKQUEUE, \
61 .task_arg.const_arg = &_env_task_devices, \
62 .executor.workqueue = { \
63 .worker_fn = environmental_task_fn, \
void environmental_task_fn(struct k_work *work)
Environmental task function.
Autogenerated task runner task IDs.
Task Runner task scheduling.
Configuration struct to hold multiple devices.
Definition environmental.h:31
const struct device * secondary
Secondary environmental sensor, used if a channel doesn't exist on primary.
Definition environmental.h:35
const struct device * primary
Primary environmental sensor, used in preference to secondary.
Definition environmental.h:33