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

#ifndef PB_READER_V1_READER_V1_CREATE_PB_H_INCLUDED
#define PB_READER_V1_READER_V1_CREATE_PB_H_INCLUDED
#include <pb.h>
#include "buf/validate/validate.pb.h"
#include "reader/v1/reader.pb.h"
#include "util/uuid.pb.h"

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

/* Struct definitions */
typedef struct _reader_v1_CreateReaderRequest {
    bool has_id;
    util_UUID id;
    uint32_t manufacturer;
    uint32_t model;
    pb_callback_t firmware;
    uint32_t gpis; /* max uint8 */
    uint32_t gpos; /* max uint8 */
    pb_callback_t ip;
} reader_v1_CreateReaderRequest;

typedef struct _reader_v1_CreateReaderResponse {
    bool has_reader;
    reader_v1_Reader reader;
} reader_v1_CreateReaderResponse;


#ifdef __cplusplus
extern "C" {
#endif

/* Initializer values for message structs */
#define reader_v1_CreateReaderRequest_init_default {false, util_UUID_init_default, 0, 0, {{NULL}, NULL}, 0, 0, {{NULL}, NULL}}
#define reader_v1_CreateReaderResponse_init_default {false, reader_v1_Reader_init_default}
#define reader_v1_CreateReaderRequest_init_zero  {false, util_UUID_init_zero, 0, 0, {{NULL}, NULL}, 0, 0, {{NULL}, NULL}}
#define reader_v1_CreateReaderResponse_init_zero {false, reader_v1_Reader_init_zero}

/* Field tags (for use in manual encoding/decoding) */
#define reader_v1_CreateReaderRequest_id_tag     1
#define reader_v1_CreateReaderRequest_manufacturer_tag 2
#define reader_v1_CreateReaderRequest_model_tag  3
#define reader_v1_CreateReaderRequest_firmware_tag 4
#define reader_v1_CreateReaderRequest_gpis_tag   6
#define reader_v1_CreateReaderRequest_gpos_tag   7
#define reader_v1_CreateReaderRequest_ip_tag     8
#define reader_v1_CreateReaderResponse_reader_tag 1

/* Struct field encoding specification for nanopb */
#define reader_v1_CreateReaderRequest_FIELDLIST(X, a) \
X(a, STATIC,   OPTIONAL, MESSAGE,  id,                1) \
X(a, STATIC,   SINGULAR, UINT32,   manufacturer,      2) \
X(a, STATIC,   SINGULAR, UINT32,   model,             3) \
X(a, CALLBACK, SINGULAR, STRING,   firmware,          4) \
X(a, STATIC,   SINGULAR, UINT32,   gpis,              6) \
X(a, STATIC,   SINGULAR, UINT32,   gpos,              7) \
X(a, CALLBACK, SINGULAR, STRING,   ip,                8)
#define reader_v1_CreateReaderRequest_CALLBACK pb_default_field_callback
#define reader_v1_CreateReaderRequest_DEFAULT NULL
#define reader_v1_CreateReaderRequest_id_MSGTYPE util_UUID

#define reader_v1_CreateReaderResponse_FIELDLIST(X, a) \
X(a, STATIC,   OPTIONAL, MESSAGE,  reader,            1)
#define reader_v1_CreateReaderResponse_CALLBACK NULL
#define reader_v1_CreateReaderResponse_DEFAULT NULL
#define reader_v1_CreateReaderResponse_reader_MSGTYPE reader_v1_Reader

extern const pb_msgdesc_t reader_v1_CreateReaderRequest_msg;
extern const pb_msgdesc_t reader_v1_CreateReaderResponse_msg;

/* Defines for backwards compatibility with code written before nanopb-0.4.0 */
#define reader_v1_CreateReaderRequest_fields &reader_v1_CreateReaderRequest_msg
#define reader_v1_CreateReaderResponse_fields &reader_v1_CreateReaderResponse_msg

/* Maximum encoded size of messages (where known) */
/* reader_v1_CreateReaderRequest_size depends on runtime parameters */
#if defined(reader_v1_Reader_size)
#define READER_V1_READER_V1_CREATE_PB_H_MAX_SIZE reader_v1_CreateReaderResponse_size
#define reader_v1_CreateReaderResponse_size      (6 + reader_v1_Reader_size)
#endif

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

#endif
