types.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2017 Kubos Corporation
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 
24 #ifndef TYPES_H
25 #define TYPES_H
26 
27 #include <stdint.h>
28 #include <csp/csp.h>
29 
33 typedef union
34 {
36  int i;
38  float f;
40 
45 typedef enum
46 {
52 
56 typedef struct
57 {
59  uint8_t topic_id;
63  uint8_t subsystem_id;
65 
70 typedef struct
71 {
77  uint16_t timestamp;
79 
80 #endif
81 
82 /* @} */
Definition: types.h:50
telemetry_data_type
Telemetry data types - each enum corresponds to a a member of telemetry_union.
Definition: types.h:45
Basic telemetry packet structure - encapsulating routing information and data.
Definition: types.h:70
Telemetry union for storing data.
Definition: types.h:33
uint8_t topic_id
Definition: types.h:59
Definition: types.h:48
telemetry_union data
Definition: types.h:75
Telemetry source structure.
Definition: types.h:56
uint16_t timestamp
Definition: types.h:77
int i
Definition: types.h:36
telemetry_data_type data_type
Definition: types.h:61
float f
Definition: types.h:38
uint8_t subsystem_id
Definition: types.h:63
telemetry_source source
Definition: types.h:73