ENTS-tock
Environmental NeTworked Sensor firmware on Tock OS
Loading...
Searching...
No Matches
sensor.h
Go to the documentation of this file.
1
10#ifndef PROTO_C_INCLUDE_SENSOR_H_
11#define PROTO_C_INCLUDE_SENSOR_H_
12
13#include <stddef.h>
14#include <stdint.h>
15
16#include "sensor.pb.h"
17
18#ifdef __cplusplus
19extern "C" {
20#endif
21
49
51static const Metadata METADATA_NONE = Metadata_init_zero;
52
65SensorStatus EncodeSensorMeasurement(const SensorMeasurement* meas,
66 uint8_t* buffer, size_t* size);
67
84 const SensorMeasurement meas[],
85 size_t count, uint8_t* buffer,
86 size_t size, size_t* length);
87
100SensorStatus EncodeUint32Measurement(Metadata meta, uint32_t value,
101 SensorType type, uint8_t* buffer,
102 size_t* size);
103
116SensorStatus EncodeInt32Measurement(Metadata meta, int32_t value,
117 SensorType type, uint8_t* buffer,
118 size_t* size);
119
132SensorStatus EncodeDoubleMeasurement(Metadata meta, double value,
133 SensorType type, uint8_t* buffer,
134 size_t* size);
135
145SensorStatus DecodeSensorMeasurement(const uint8_t* data, const size_t len,
146 SensorMeasurement* meas);
147
159 const SensorMeasurement meas[],
160 size_t count, size_t* size);
161
172 const size_t len,
173 RepeatedSensorMeasurements* meas);
174
189 const RepeatedSensorResponses responses, uint8_t* buffer, size_t* size);
190
200SensorStatus DecodeRepeatedSensorReponses(const uint8_t* data, const size_t len,
201 RepeatedSensorResponses* resp);
202
222SensorStatus CheckSensorResponse(const SensorResponse* resp);
223
224void PrintSensorMeasurement(const SensorMeasurement* m);
225
226void PrintRepeatedSensorMeasurements(const RepeatedSensorMeasurements* msg);
227
232#ifdef __cplusplus
233}
234#endif
235
236#endif // PROTO_C_INCLUDE_SENSOR_H_
const char data[]
uint8_t buffer[32]
SensorStatus DecodeSensorMeasurement(const uint8_t *data, const size_t len, SensorMeasurement *meas)
Decodes a sensor measurement from a buffer.
Definition sensor.c:259
void PrintRepeatedSensorMeasurements(const RepeatedSensorMeasurements *msg)
Definition sensor.c:369
SensorStatus EncodeSensorMeasurement(const SensorMeasurement *meas, uint8_t *buffer, size_t *size)
Encodes a single sensor measurement into a buffer.
Definition sensor.c:151
SensorStatus RepeatedSensorMeasurementsSize(Metadata meta, const SensorMeasurement meas[], size_t count, size_t *size)
Gets the size of multiple repeated sensor measurements when encoded.
Definition sensor.c:191
SensorStatus EncodeInt32Measurement(Metadata meta, int32_t value, SensorType type, uint8_t *buffer, size_t *size)
Encodes an int64_t sensor measurement into a buffer.
Definition sensor.c:229
_SensorStatus
Definition sensor.h:40
SensorStatus CheckSensorResponse(const SensorResponse *resp)
Checks a single sensor response for errors.
Definition sensor.c:306
SensorStatus EncodeRepeatedSensorMeasurements(Metadata meta, const SensorMeasurement meas[], size_t count, uint8_t *buffer, size_t size, size_t *length)
Encodes multiple sensor measurements into a buffer.
Definition sensor.c:166
SensorStatus EncodeDoubleMeasurement(Metadata meta, double value, SensorType type, uint8_t *buffer, size_t *size)
Encodes a double sensor measurement into a buffer.
Definition sensor.c:244
SensorStatus DecodeRepeatedSensorReponses(const uint8_t *data, const size_t len, RepeatedSensorResponses *resp)
Decodes multiple sensor responses from a buffer.
Definition sensor.c:295
SensorStatus EncodeRepeatedSensorResponses(const RepeatedSensorResponses responses, uint8_t *buffer, size_t *size)
Encodes multiple sensor responses into a buffer.
Definition sensor.c:283
enum _SensorStatus SensorStatus
SensorStatus DecodeRepeatedSensorMeasurements(const uint8_t *data, const size_t len, RepeatedSensorMeasurements *meas)
Decodes multiple sensor measurements from a buffer.
Definition sensor.c:270
SensorStatus EncodeUint32Measurement(Metadata meta, uint32_t value, SensorType type, uint8_t *buffer, size_t *size)
Encodes a uint64_t sensor measurement into a buffer.
Definition sensor.c:213
void PrintSensorMeasurement(const SensorMeasurement *m)
Definition sensor.c:338
@ SENSOR_FORMAT
Definition sensor.h:47
@ SENSOR_ERROR
Definition sensor.h:42
@ SENSOR_REUPLOAD
Definition sensor.h:45
@ SENSOR_OK
Definition sensor.h:41
@ SENSOR_OUT_OF_BOUNDS
Definition sensor.h:43