common.c
Go to the documentation of this file.
1 
2 #include "common.h"
3 
4 #include "../utils/serialization.h"
5 
6 
8 {
9  insert_u8(serializer, self->descriptor);
10  insert_u16(serializer, self->decimation);
11 }
12 
14 {
15  extract_u8(serializer, &self->descriptor);
16  extract_u16(serializer, &self->decimation);
17 }
18 
19 #define IMPLEMENT_MIP_VECTOR_FUNCTIONS(n,type,name) \
20 void insert_##name(mip_serializer* serializer, const name self) \
21 { \
22  for(unsigned int i=0; i<n; i++) \
23  insert_##type(serializer, self[i]); \
24 } \
25 void extract_##name(mip_serializer* serializer, name self) \
26 { \
27  for(unsigned int i=0; i<n; i++) \
28  extract_##type(serializer, &self[i]); \
29 }
30 
31 IMPLEMENT_MIP_VECTOR_FUNCTIONS(3, float, mip_vector3f)
32 IMPLEMENT_MIP_VECTOR_FUNCTIONS(4, float, mip_vector4f)
33 IMPLEMENT_MIP_VECTOR_FUNCTIONS(9, float, mip_matrix3f)
34 IMPLEMENT_MIP_VECTOR_FUNCTIONS(3, double, mip_vector3d)
35 IMPLEMENT_MIP_VECTOR_FUNCTIONS(4, double, mip_vector4d)
36 IMPLEMENT_MIP_VECTOR_FUNCTIONS(9, double, mip_matrix3d)
37 IMPLEMENT_MIP_VECTOR_FUNCTIONS(4, float, mip_quatf)
38 
39 #undef IMPLEMENT_MIP_VECTOR_FUNCTIONS
extract_u16
void extract_u16(mip_serializer *serializer, uint16_t *value)
insert_mip_descriptor_rate
void insert_mip_descriptor_rate(mip_serializer *serializer, const mip_descriptor_rate *self)
Definition: common.c:7
mip_serializer
Structure used for serialization.
Definition: serialization.h:45
insert_u8
void insert_u8(mip_serializer *serializer, uint8_t value)
extract_u8
void extract_u8(mip_serializer *serializer, uint8_t *value)
insert_u16
void insert_u16(mip_serializer *serializer, uint16_t value)
common.h
mip_descriptor_rate
Definition: common.h:20
IMPLEMENT_MIP_VECTOR_FUNCTIONS
#define IMPLEMENT_MIP_VECTOR_FUNCTIONS(n, type, name)
Definition: common.c:19
extract_mip_descriptor_rate
void extract_mip_descriptor_rate(mip_serializer *serializer, mip_descriptor_rate *self)
Definition: common.c:13


microstrain_inertial_driver
Author(s): Brian Bingham, Parker Hannifin Corp
autogenerated on Fri Sep 6 2024 02:51:39