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

#ifndef PB_ANTENNA_V1_ANTENNA_V1_SETTINGS_PB_H_INCLUDED
#define PB_ANTENNA_V1_ANTENNA_V1_SETTINGS_PB_H_INCLUDED
#include <pb.h>
#include "buf/validate/validate.pb.h"
#include "util/between.pb.h"

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

/* Struct definitions */
typedef struct _antenna_v1_Settings {
    pb_callback_t epc_prefix;
    bool has_total;
    util_UInt64Between total;
    bool has_peak_rssi;
    util_SInt32Between peak_rssi;
    bool has_skew_rssi;
    util_DoubleBetween skew_rssi;
    bool has_variance_rssi;
    util_DoubleBetween variance_rssi;
    bool has_entropy_rssi;
    util_DoubleBetween entropy_rssi;
    bool has_duration;
    util_DurationBetween duration;
    pb_callback_t signals;
} antenna_v1_Settings;


#ifdef __cplusplus
extern "C" {
#endif

/* Initializer values for message structs */
#define antenna_v1_Settings_init_default         {{{NULL}, NULL}, false, util_UInt64Between_init_default, false, util_SInt32Between_init_default, false, util_DoubleBetween_init_default, false, util_DoubleBetween_init_default, false, util_DoubleBetween_init_default, false, util_DurationBetween_init_default, {{NULL}, NULL}}
#define antenna_v1_Settings_init_zero            {{{NULL}, NULL}, false, util_UInt64Between_init_zero, false, util_SInt32Between_init_zero, false, util_DoubleBetween_init_zero, false, util_DoubleBetween_init_zero, false, util_DoubleBetween_init_zero, false, util_DurationBetween_init_zero, {{NULL}, NULL}}

/* Field tags (for use in manual encoding/decoding) */
#define antenna_v1_Settings_epc_prefix_tag       1
#define antenna_v1_Settings_total_tag            2
#define antenna_v1_Settings_peak_rssi_tag        3
#define antenna_v1_Settings_skew_rssi_tag        4
#define antenna_v1_Settings_variance_rssi_tag    5
#define antenna_v1_Settings_entropy_rssi_tag     6
#define antenna_v1_Settings_duration_tag         7
#define antenna_v1_Settings_signals_tag          8

/* Struct field encoding specification for nanopb */
#define antenna_v1_Settings_FIELDLIST(X, a) \
X(a, CALLBACK, OPTIONAL, STRING,   epc_prefix,        1) \
X(a, STATIC,   OPTIONAL, MESSAGE,  total,             2) \
X(a, STATIC,   OPTIONAL, MESSAGE,  peak_rssi,         3) \
X(a, STATIC,   OPTIONAL, MESSAGE,  skew_rssi,         4) \
X(a, STATIC,   OPTIONAL, MESSAGE,  variance_rssi,     5) \
X(a, STATIC,   OPTIONAL, MESSAGE,  entropy_rssi,      6) \
X(a, STATIC,   OPTIONAL, MESSAGE,  duration,          7) \
X(a, CALLBACK, REPEATED, UINT32,   signals,           8)
#define antenna_v1_Settings_CALLBACK pb_default_field_callback
#define antenna_v1_Settings_DEFAULT NULL
#define antenna_v1_Settings_total_MSGTYPE util_UInt64Between
#define antenna_v1_Settings_peak_rssi_MSGTYPE util_SInt32Between
#define antenna_v1_Settings_skew_rssi_MSGTYPE util_DoubleBetween
#define antenna_v1_Settings_variance_rssi_MSGTYPE util_DoubleBetween
#define antenna_v1_Settings_entropy_rssi_MSGTYPE util_DoubleBetween
#define antenna_v1_Settings_duration_MSGTYPE util_DurationBetween

extern const pb_msgdesc_t antenna_v1_Settings_msg;

/* Defines for backwards compatibility with code written before nanopb-0.4.0 */
#define antenna_v1_Settings_fields &antenna_v1_Settings_msg

/* Maximum encoded size of messages (where known) */
/* antenna_v1_Settings_size depends on runtime parameters */

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

#endif
