summaryrefslogtreecommitdiff
path: root/Inc/handshake.pb.h
blob: 67f10e630cf25b743134ef8b957b6eb397b0b546 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
/* Automatically generated nanopb header */
/* Generated by nanopb-0.4.2-dev */

#ifndef PB_HANDSHAKE_PB_H_INCLUDED
#define PB_HANDSHAKE_PB_H_INCLUDED
#include <pb.h>

#if PB_PROTO_HEADER_VERSION != 40
#error Regenerate this file with the current version of nanopb generator.
#endif

#ifdef __cplusplus
extern "C" {
#endif

/* Struct definitions */
typedef struct __subscriptions {
    bool has_module_id;
    uint32_t module_id;
    bool has_entity_id;
    uint32_t entity_id;
    bool has_module_class;
    uint32_t module_class;
    bool has_i2c_address;
    uint32_t i2c_address;
} _subscriptions;

typedef struct _m2s_MDR_request {
    uint32_t record_type;
} m2s_MDR_request;

typedef struct _m2s_MDR_res_CTS {
    uint32_t timeout;
} m2s_MDR_res_CTS;

typedef struct _s2m_MDR_req_ACK {
    uint32_t MDR_res_length;
} s2m_MDR_req_ACK;

typedef struct _s2m_MDR_response {
    float MDR_version;
    uint32_t module_id;
    uint32_t module_class;
    uint32_t entity_id;
    pb_callback_t subscriptions;
} s2m_MDR_response;


/* Initializer values for message structs */
#define m2s_MDR_request_init_default             {0}
#define s2m_MDR_req_ACK_init_default             {0}
#define m2s_MDR_res_CTS_init_default             {0}
#define _subscriptions_init_default              {false, 0u, false, 0u, false, 0u, false, 0u}
#define s2m_MDR_response_init_default            {0, 0, 0, 0, {{NULL}, NULL}}
#define m2s_MDR_request_init_zero                {0}
#define s2m_MDR_req_ACK_init_zero                {0}
#define m2s_MDR_res_CTS_init_zero                {0}
#define _subscriptions_init_zero                 {false, 0, false, 0, false, 0, false, 0}
#define s2m_MDR_response_init_zero               {0, 0, 0, 0, {{NULL}, NULL}}

/* Field tags (for use in manual encoding/decoding) */
#define _subscriptions_module_id_tag             1
#define _subscriptions_entity_id_tag             2
#define _subscriptions_module_class_tag          3
#define _subscriptions_i2c_address_tag           4
#define m2s_MDR_request_record_type_tag          1
#define m2s_MDR_res_CTS_timeout_tag              1
#define s2m_MDR_req_ACK_MDR_res_length_tag       1
#define s2m_MDR_response_MDR_version_tag         1
#define s2m_MDR_response_module_id_tag           2
#define s2m_MDR_response_module_class_tag        3
#define s2m_MDR_response_entity_id_tag           4
#define s2m_MDR_response_subscriptions_tag       5

/* Struct field encoding specification for nanopb */
#define m2s_MDR_request_FIELDLIST(X, a) \
X(a, STATIC,   REQUIRED, UINT32,   record_type,       1)
#define m2s_MDR_request_CALLBACK NULL
#define m2s_MDR_request_DEFAULT NULL

#define s2m_MDR_req_ACK_FIELDLIST(X, a) \
X(a, STATIC,   REQUIRED, UINT32,   MDR_res_length,    1)
#define s2m_MDR_req_ACK_CALLBACK NULL
#define s2m_MDR_req_ACK_DEFAULT NULL

#define m2s_MDR_res_CTS_FIELDLIST(X, a) \
X(a, STATIC,   REQUIRED, UINT32,   timeout,           1)
#define m2s_MDR_res_CTS_CALLBACK NULL
#define m2s_MDR_res_CTS_DEFAULT NULL

#define _subscriptions_FIELDLIST(X, a) \
X(a, STATIC,   OPTIONAL, UINT32,   module_id,         1) \
X(a, STATIC,   OPTIONAL, UINT32,   entity_id,         2) \
X(a, STATIC,   OPTIONAL, UINT32,   module_class,      3) \
X(a, STATIC,   OPTIONAL, UINT32,   i2c_address,       4)
#define _subscriptions_CALLBACK NULL
#define _subscriptions_DEFAULT (const pb_byte_t*)"\x08\x00\x10\x00\x18\x00\x20\x00\x00"

#define s2m_MDR_response_FIELDLIST(X, a) \
X(a, STATIC,   REQUIRED, FLOAT,    MDR_version,       1) \
X(a, STATIC,   REQUIRED, UINT32,   module_id,         2) \
X(a, STATIC,   REQUIRED, UINT32,   module_class,      3) \
X(a, STATIC,   REQUIRED, UINT32,   entity_id,         4) \
X(a, CALLBACK, REPEATED, MESSAGE,  subscriptions,     5)
#define s2m_MDR_response_CALLBACK pb_default_field_callback
#define s2m_MDR_response_DEFAULT NULL
#define s2m_MDR_response_subscriptions_MSGTYPE _subscriptions

extern const pb_msgdesc_t m2s_MDR_request_msg;
extern const pb_msgdesc_t s2m_MDR_req_ACK_msg;
extern const pb_msgdesc_t m2s_MDR_res_CTS_msg;
extern const pb_msgdesc_t _subscriptions_msg;
extern const pb_msgdesc_t s2m_MDR_response_msg;

/* Defines for backwards compatibility with code written before nanopb-0.4.0 */
#define m2s_MDR_request_fields &m2s_MDR_request_msg
#define s2m_MDR_req_ACK_fields &s2m_MDR_req_ACK_msg
#define m2s_MDR_res_CTS_fields &m2s_MDR_res_CTS_msg
#define _subscriptions_fields &_subscriptions_msg
#define s2m_MDR_response_fields &s2m_MDR_response_msg

/* Maximum encoded size of messages (where known) */
#define m2s_MDR_request_size                     6
#define s2m_MDR_req_ACK_size                     6
#define m2s_MDR_res_CTS_size                     6
#define _subscriptions_size                      24
/* s2m_MDR_response_size depends on runtime parameters */

#ifdef __cplusplus
} /* extern "C" */
#endif

#endif