MIP SDK  0.0.1
MicroStrain Communications Library for embedded systems
mip_types.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include <stdint.h>
4 #include <stddef.h>
5 #include <stdbool.h>
6 
7 #ifdef __cplusplus
8 namespace mip {
9 namespace C {
10 extern "C" {
11 #endif
12 
13 
14 
15 // Used like a signed version of size_t
16 typedef int_least16_t remaining_count;
17 
18 
28 #ifdef MIP_TIMESTAMP_TYPE
29  typedef MIP_TIMESTAMP_TYPE timestamp_type;
30  static_assert( sizeof(timestamp_type) >= 8 || timestamp_type(-1) > 0, "MIP_TIMESTAMP_TYPE must be unsigned unless 64 bits.");
31 #else
32  typedef uint64_t timestamp_type;
33 #endif
34 
36 
37 #ifdef __cplusplus
38 
39 } // extern "C"
40 } // namespace C
41 
45 
46 } // namespace mip
47 
48 #endif
timestamp_type timeout_type
Definition: mip_types.h:35
int_least16_t remaining_count
Definition: mip_types.h:16
uint64_t timestamp_type
Type used for packet timestamps and timeouts.
Definition: mip_types.h:32
A collection of C++ classes and functions covering the full mip api.
Definition: commands_3dm.c:11
C::timestamp_type Timestamp
Definition: mip_types.h:43
C::timeout_type Timeout
Definition: mip_types.h:44
C::remaining_count RemainingCount
Definition: mip_types.h:42