/* Automatically generated nanopb header */
/* Generated by nanopb-0.4.9.1 */

#ifndef PB_DONGL_D2H_PB_H_INCLUDED
#define PB_DONGL_D2H_PB_H_INCLUDED
#include "nanopb/pb.h"
#include "protocol/basic.pb.h"
#include "protocol/simpleble.pb.h"

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

/* Struct definitions */
/* Top-level command union across all categories */
typedef struct _dongl_Response {
    pb_size_t which_rsp;
    union {
        basic_Response basic;
        simpleble_Response simpleble;
    } rsp;
} dongl_Response;

typedef struct _dongl_Event {
    pb_size_t which_evt;
    union {
        simpleble_Event simpleble;
    } evt;
} dongl_Event;

typedef struct _dongl_D2H {
    pb_size_t which_type;
    union {
        dongl_Response rsp;
        dongl_Event evt;
    } type;
} dongl_D2H;


#ifdef __cplusplus
extern "C" {
#endif

/* Initializer values for message structs */
#define dongl_Response_init_default              {0, {basic_Response_init_default}}
#define dongl_Event_init_default                 {0, {simpleble_Event_init_default}}
#define dongl_D2H_init_default                   {0, {dongl_Response_init_default}}
#define dongl_Response_init_zero                 {0, {basic_Response_init_zero}}
#define dongl_Event_init_zero                    {0, {simpleble_Event_init_zero}}
#define dongl_D2H_init_zero                      {0, {dongl_Response_init_zero}}

/* Field tags (for use in manual encoding/decoding) */
#define dongl_Response_basic_tag                 1
#define dongl_Response_simpleble_tag             2
#define dongl_Event_simpleble_tag                2
#define dongl_D2H_rsp_tag                        1
#define dongl_D2H_evt_tag                        2

/* Struct field encoding specification for nanopb */
#define dongl_Response_FIELDLIST(X, a) \
X(a, STATIC,   ONEOF,    MESSAGE,  (rsp,basic,rsp.basic),   1) \
X(a, STATIC,   ONEOF,    MESSAGE,  (rsp,simpleble,rsp.simpleble),   2)
#define dongl_Response_CALLBACK NULL
#define dongl_Response_DEFAULT NULL
#define dongl_Response_rsp_basic_MSGTYPE basic_Response
#define dongl_Response_rsp_simpleble_MSGTYPE simpleble_Response

#define dongl_Event_FIELDLIST(X, a) \
X(a, STATIC,   ONEOF,    MESSAGE,  (evt,simpleble,evt.simpleble),   2)
#define dongl_Event_CALLBACK NULL
#define dongl_Event_DEFAULT NULL
#define dongl_Event_evt_simpleble_MSGTYPE simpleble_Event

#define dongl_D2H_FIELDLIST(X, a) \
X(a, STATIC,   ONEOF,    MESSAGE,  (type,rsp,type.rsp),   1) \
X(a, STATIC,   ONEOF,    MESSAGE,  (type,evt,type.evt),   2)
#define dongl_D2H_CALLBACK NULL
#define dongl_D2H_DEFAULT NULL
#define dongl_D2H_type_rsp_MSGTYPE dongl_Response
#define dongl_D2H_type_evt_MSGTYPE dongl_Event

extern const pb_msgdesc_t dongl_Response_msg;
extern const pb_msgdesc_t dongl_Event_msg;
extern const pb_msgdesc_t dongl_D2H_msg;

/* Defines for backwards compatibility with code written before nanopb-0.4.0 */
#define dongl_Response_fields &dongl_Response_msg
#define dongl_Event_fields &dongl_Event_msg
#define dongl_D2H_fields &dongl_D2H_msg

/* Maximum encoded size of messages (where known) */
#define DONGL_D2H_PB_H_MAX_SIZE                  dongl_D2H_size
#define dongl_D2H_size                           534
#define dongl_Event_size                         531
#define dongl_Response_size                      531

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

#endif
