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

#ifndef PB_READGROUP_V1_READGROUP_V1_EXPORT_PB_H_INCLUDED
#define PB_READGROUP_V1_READGROUP_V1_EXPORT_PB_H_INCLUDED
#include <pb.h>
#include "readgroup/v1/get.pb.h"

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

/* Enum definitions */
typedef enum _readgroup_v1_ReportType {
    readgroup_v1_ReportType_REPORT_TYPE_UNSPECIFIED = 0,
    readgroup_v1_ReportType_REPORT_TYPE_CSV = 1,
    readgroup_v1_ReportType_REPORT_TYPE_XML = 2,
    readgroup_v1_ReportType_REPORT_TYPE_JSON = 3
} readgroup_v1_ReportType;

/* Struct definitions */
typedef struct _readgroup_v1_ExportReadGroupsRequest {
    readgroup_v1_ReportType type;
    bool has_request;
    readgroup_v1_GetReadGroupsRequest request;
} readgroup_v1_ExportReadGroupsRequest;

typedef struct _readgroup_v1_ExportReadGroupsResponse {
    pb_callback_t file;
} readgroup_v1_ExportReadGroupsResponse;


#ifdef __cplusplus
extern "C" {
#endif

/* Helper constants for enums */
#define _readgroup_v1_ReportType_MIN readgroup_v1_ReportType_REPORT_TYPE_UNSPECIFIED
#define _readgroup_v1_ReportType_MAX readgroup_v1_ReportType_REPORT_TYPE_JSON
#define _readgroup_v1_ReportType_ARRAYSIZE ((readgroup_v1_ReportType)(readgroup_v1_ReportType_REPORT_TYPE_JSON+1))

#define readgroup_v1_ExportReadGroupsRequest_type_ENUMTYPE readgroup_v1_ReportType



/* Initializer values for message structs */
#define readgroup_v1_ExportReadGroupsRequest_init_default {_readgroup_v1_ReportType_MIN, false, readgroup_v1_GetReadGroupsRequest_init_default}
#define readgroup_v1_ExportReadGroupsResponse_init_default {{{NULL}, NULL}}
#define readgroup_v1_ExportReadGroupsRequest_init_zero {_readgroup_v1_ReportType_MIN, false, readgroup_v1_GetReadGroupsRequest_init_zero}
#define readgroup_v1_ExportReadGroupsResponse_init_zero {{{NULL}, NULL}}

/* Field tags (for use in manual encoding/decoding) */
#define readgroup_v1_ExportReadGroupsRequest_type_tag 1
#define readgroup_v1_ExportReadGroupsRequest_request_tag 2
#define readgroup_v1_ExportReadGroupsResponse_file_tag 1

/* Struct field encoding specification for nanopb */
#define readgroup_v1_ExportReadGroupsRequest_FIELDLIST(X, a) \
X(a, STATIC,   SINGULAR, UENUM,    type,              1) \
X(a, STATIC,   OPTIONAL, MESSAGE,  request,           2)
#define readgroup_v1_ExportReadGroupsRequest_CALLBACK NULL
#define readgroup_v1_ExportReadGroupsRequest_DEFAULT NULL
#define readgroup_v1_ExportReadGroupsRequest_request_MSGTYPE readgroup_v1_GetReadGroupsRequest

#define readgroup_v1_ExportReadGroupsResponse_FIELDLIST(X, a) \
X(a, CALLBACK, SINGULAR, STRING,   file,              1)
#define readgroup_v1_ExportReadGroupsResponse_CALLBACK pb_default_field_callback
#define readgroup_v1_ExportReadGroupsResponse_DEFAULT NULL

extern const pb_msgdesc_t readgroup_v1_ExportReadGroupsRequest_msg;
extern const pb_msgdesc_t readgroup_v1_ExportReadGroupsResponse_msg;

/* Defines for backwards compatibility with code written before nanopb-0.4.0 */
#define readgroup_v1_ExportReadGroupsRequest_fields &readgroup_v1_ExportReadGroupsRequest_msg
#define readgroup_v1_ExportReadGroupsResponse_fields &readgroup_v1_ExportReadGroupsResponse_msg

/* Maximum encoded size of messages (where known) */
/* readgroup_v1_ExportReadGroupsResponse_size depends on runtime parameters */
#if defined(readgroup_v1_GetReadGroupsRequest_size)
#define READGROUP_V1_READGROUP_V1_EXPORT_PB_H_MAX_SIZE readgroup_v1_ExportReadGroupsRequest_size
#define readgroup_v1_ExportReadGroupsRequest_size (8 + readgroup_v1_GetReadGroupsRequest_size)
#endif

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

#endif
