Zephyr API Documentation 4.3.99
A Scalable Open Source RTOS
Loading...
Searching...
No Matches
rtk.h
Go to the documentation of this file.
1/*
2 * Copyright (c) 2023 Trackunit Corporation
3 * Copyright (c) 2025 Croxel Inc.
4 * Copyright (c) 2025 CogniPilot Foundation
5 *
6 * SPDX-License-Identifier: Apache-2.0
7 */
8
9#ifndef ZEPHYR_INCLUDE_GNSS_RTK_RTK_H_
10#define ZEPHYR_INCLUDE_GNSS_RTK_RTK_H_
11
12#ifdef __cplusplus
13extern "C" {
14#endif
15
16#include <stdint.h>
17#include <stddef.h>
18
20 const uint8_t *data;
21 size_t len;
22};
23
24typedef void (*gnss_rtk_data_callback_t)(const struct device *dev,
25 const struct gnss_rtk_data *data);
26
31
32#if CONFIG_GNSS_RTK
33#define GNSS_RTK_DATA_CALLBACK_DEFINE(_dev, _callback) \
34 static const STRUCT_SECTION_ITERABLE(gnss_rtk_data_callback, \
35 _gnss_rtk_data_callback__##_callback) = { \
36 .dev = _dev, \
37 .callback = _callback, \
38 }
39
40#define GNSS_DT_RTK_DATA_CALLBACK_DEFINE(_node_id, _callback) \
41 static const STRUCT_SECTION_ITERABLE( \
42 gnss_rtk_data_callback, \
43 _CONCAT_4(_gnss_rtk_data_callback_, DT_DEP_ORD(_node_id), _, _callback)) = { \
44 .dev = DEVICE_DT_GET(_node_id), \
45 .callback = _callback, \
46 }
47#else
48#define GNSS_RTK_DATA_CALLBACK_DEFINE(_dev, _callback)
49#define GNSS_DT_RTK_DATA_CALLBACK_DEFINE(_node_id, _callback)
50#endif
51
52#ifdef __cplusplus
53}
54#endif
55
56#endif /* ZEPHYR_INCLUDE_GNSS_RTK_RTK_H_ */
void(* gnss_rtk_data_callback_t)(const struct device *dev, const struct gnss_rtk_data *data)
Definition rtk.h:24
__UINT8_TYPE__ uint8_t
Definition stdint.h:88
Runtime device structure (in ROM) per driver instance.
Definition device.h:513
Definition rtk.h:27
gnss_rtk_data_callback_t callback
Definition rtk.h:29
const struct device * dev
Definition rtk.h:28
Definition rtk.h:19
size_t len
Definition rtk.h:21
const uint8_t * data
Definition rtk.h:20