Zephyr API Documentation  3.7.0
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
10#include <zephyr/types.h>
11
36};
37
49int navigation_distance(uint64_t *distance, const struct navigation_data *p1,
50 const struct navigation_data *p2);
51
62int navigation_bearing(uint32_t *bearing, const struct navigation_data *from,
63 const struct navigation_data *to);
64
69#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:25
int64_t latitude
Latitudal position in nanodegrees (0 to +-180E9)
Definition: navigation.h:27
int64_t longitude
Longitudal position in nanodegrees (0 to +-180E9)
Definition: navigation.h:29
uint32_t speed
Speed in millimeters per second.
Definition: navigation.h:33
int32_t altitude
Altitude in millimeters.
Definition: navigation.h:35
uint32_t bearing
Bearing angle in millidegrees (0 to 360E3)
Definition: navigation.h:31