/* Automatically generated nanopb header */
/* Generated by nanopb-0.3.7 at Fri Dec 16 16:49:49 2016. */

#ifndef PB_API_DEVICEDATA_PB_H_INCLUDED
#define PB_API_DEVICEDATA_PB_H_INCLUDED
#include "pb.h"

/* @@protoc_insertion_point(includes) */
#if PB_PROTO_HEADER_VERSION != 30
#error Regenerate this file with the current version of nanopb generator.
#endif

#ifdef __cplusplus
extern "C" {
#endif

/* Struct definitions */
typedef struct _api_Location {
    bool has_longitude;
    float longitude;
    bool has_latitude;
    float latitude;
    bool has_altitude;
    int32_t altitude;
/* @@protoc_insertion_point(struct:api_Location) */
} api_Location;

typedef struct _api_DeviceData {
    bool has_motion;
    bool motion;
    bool has_water;
    uint32_t water;
    bool has_temperature_celcius;
    float temperature_celcius;
    bool has_temperature_fahrenheit;
    float temperature_fahrenheit;
    bool has_humidity;
    float humidity;
    bool has_location;
    api_Location location;
    bool has_level;
    float level;
    bool has_triggered;
    bool triggered;
    bool has_actuator_active;
    bool actuator_active;
    bool has_actuator_time;
    float actuator_time;
    pb_callback_t analog_readings;
/* @@protoc_insertion_point(struct:api_DeviceData) */
} api_DeviceData;

/* Default values for struct fields */

/* Initializer values for message structs */
#define api_Location_init_default                {false, 0, false, 0, false, 0}
#define api_DeviceData_init_default              {false, 0, false, 0, false, 0, false, 0, false, 0, false, api_Location_init_default, false, 0, false, 0, false, 0, false, 0, {{NULL}, NULL}}
#define api_Location_init_zero                   {false, 0, false, 0, false, 0}
#define api_DeviceData_init_zero                 {false, 0, false, 0, false, 0, false, 0, false, 0, false, api_Location_init_zero, false, 0, false, 0, false, 0, false, 0, {{NULL}, NULL}}

/* Field tags (for use in manual encoding/decoding) */
#define api_Location_longitude_tag               1
#define api_Location_latitude_tag                2
#define api_Location_altitude_tag                3
#define api_DeviceData_motion_tag                1
#define api_DeviceData_water_tag                 2
#define api_DeviceData_temperature_celcius_tag   3
#define api_DeviceData_temperature_fahrenheit_tag 4
#define api_DeviceData_humidity_tag              5
#define api_DeviceData_location_tag              6
#define api_DeviceData_level_tag                 7
#define api_DeviceData_triggered_tag             8
#define api_DeviceData_actuator_active_tag       9
#define api_DeviceData_actuator_time_tag         10
#define api_DeviceData_analog_readings_tag       110

/* Struct field encoding specification for nanopb */
extern const pb_field_t api_Location_fields[4];
extern const pb_field_t api_DeviceData_fields[12];

/* Maximum encoded size of messages (where known) */
#define api_Location_size                        21
/* api_DeviceData_size depends on runtime parameters */

/* Message IDs (where set with "msgid" option) */
#ifdef PB_MSGID

#define DEVICEDATA_MESSAGES \


#endif

#ifdef __cplusplus
} /* extern "C" */
#endif
/* @@protoc_insertion_point(eof) */

#endif
