Zephyr API Documentation 4.4.99
A Scalable Open Source RTOS
Loading...
Searching...
No Matches
navigation.h
Go to the documentation of this file.
1/*
2 * Copyright (c) 2023 Trackunit Corporation
3 *
4 * SPDX-License-Identifier: Apache-2.0
5 */
6
7#ifndef ZEPHYR_INCLUDE_DATA_NAVIGATION_H_
8#define ZEPHYR_INCLUDE_DATA_NAVIGATION_H_
9
15
16#include <zephyr/types.h>
17
24
43
55int navigation_distance(uint64_t *distance, const struct navigation_data *p1,
56 const struct navigation_data *p2);
57
68int navigation_bearing(uint32_t *bearing, const struct navigation_data *from,
69 const struct navigation_data *to);
70
74
75#endif /* ZEPHYR_INCLUDE_DATA_NAVIGATION_H_ */
int navigation_bearing(uint32_t *bearing, const struct navigation_data *from, const struct navigation_data *to)
Calculate the bearing from one navigation point to another.
int navigation_distance(uint64_t *distance, const struct navigation_data *p1, const struct navigation_data *p2)
Calculate the distance between two navigation points along the surface of the sphere they are relativ...
__UINT32_TYPE__ uint32_t
Definition stdint.h:90
__INT32_TYPE__ int32_t
Definition stdint.h:74
__UINT64_TYPE__ uint64_t
Definition stdint.h:91
__INT64_TYPE__ int64_t
Definition stdint.h:75
Navigation data structure.
Definition navigation.h:31
int64_t latitude
Latitudinal position in nanodegrees (0 to +-180E9).
Definition navigation.h:33
int64_t longitude
Longitudinal position in nanodegrees (0 to +-180E9).
Definition navigation.h:35
uint32_t speed
Speed in millimeters per second.
Definition navigation.h:39
int32_t altitude
Altitude above MSL in millimeters.
Definition navigation.h:41
uint32_t bearing
Bearing angle in millidegrees (0 to 360E3).
Definition navigation.h:37