LEX_Threaded_Programming

Dependencies:   Heater_V2 MODSERIAL Nanopb FastPWM ADS8568_ADC

memspcr.pb.h

Committer:
paullj
Date:
2019-09-24
Revision:
22:f65353f6e935
Parent:
14:39a5eb99fbdb

File content as of revision 22:f65353f6e935:

/* Automatically generated nanopb header */
/* Generated by nanopb-0.3.9.3 at Tue Sep 24 09:50:11 2019. */

#ifndef PB_MEMSPCR_MEMSPCR_PB_H_INCLUDED
#define PB_MEMSPCR_MEMSPCR_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

/* Enum definitions */
typedef enum _memspcr_ExperimentConfiguration_Heater {
    memspcr_ExperimentConfiguration_Heater_HEATER_1 = 0,
    memspcr_ExperimentConfiguration_Heater_HEATER_2 = 1
} memspcr_ExperimentConfiguration_Heater;
#define _memspcr_ExperimentConfiguration_Heater_MIN memspcr_ExperimentConfiguration_Heater_HEATER_1
#define _memspcr_ExperimentConfiguration_Heater_MAX memspcr_ExperimentConfiguration_Heater_HEATER_2
#define _memspcr_ExperimentConfiguration_Heater_ARRAYSIZE ((memspcr_ExperimentConfiguration_Heater)(memspcr_ExperimentConfiguration_Heater_HEATER_2+1))

/* Struct definitions */
typedef struct _memspcr_FluidicConfiguration {
    float pressure_sensor_setpoint_adc;
    float pressure_sensor_hysteresis_adc;
    int32_t pressure_control_loop_interval_ms;
/* @@protoc_insertion_point(struct:memspcr_FluidicConfiguration) */
} memspcr_FluidicConfiguration;

typedef struct _memspcr_OpticsConfiguration {
    int32_t camera_interframe_delay_us;
/* @@protoc_insertion_point(struct:memspcr_OpticsConfiguration) */
} memspcr_OpticsConfiguration;

typedef struct _memspcr_ThermalConfiguration {
    float guard_drive_ratio;
    int32_t settling_time_us;
    float pid_kp_mho;
    float pid_integral_time_ms;
    int32_t thermal_control_loop_interval_ms;
    float pid_wind_up_limit_ohm;
    float pid_pwm_limit;
    int32_t heater_pwm_period_ticks;
/* @@protoc_insertion_point(struct:memspcr_ThermalConfiguration) */
} memspcr_ThermalConfiguration;

typedef struct _memspcr_ThermalStep {
    int32_t elapsed_time_ms;
    int32_t camera_offset_ms;
    int32_t camera_exposure_ms;
    float resistance_set_point;
/* @@protoc_insertion_point(struct:memspcr_ThermalStep) */
} memspcr_ThermalStep;

typedef struct _memspcr_ExperimentConfiguration {
    int32_t logging_interval_ms;
    memspcr_ExperimentConfiguration_Heater selected_heater;
    memspcr_ThermalConfiguration thermal;
    memspcr_FluidicConfiguration fluidics;
    memspcr_OpticsConfiguration optics;
    pb_callback_t profile;
/* @@protoc_insertion_point(struct:memspcr_ExperimentConfiguration) */
} memspcr_ExperimentConfiguration;

/* Default values for struct fields */

/* Initializer values for message structs */
#define memspcr_FluidicConfiguration_init_default {0, 0, 0}
#define memspcr_ThermalConfiguration_init_default {0, 0, 0, 0, 0, 0, 0, 0}
#define memspcr_OpticsConfiguration_init_default {0}
#define memspcr_ThermalStep_init_default         {0, 0, 0, 0}
#define memspcr_ExperimentConfiguration_init_default {0, _memspcr_ExperimentConfiguration_Heater_MIN, memspcr_ThermalConfiguration_init_default, memspcr_FluidicConfiguration_init_default, memspcr_OpticsConfiguration_init_default, {{NULL}, NULL}}
#define memspcr_FluidicConfiguration_init_zero   {0, 0, 0}
#define memspcr_ThermalConfiguration_init_zero   {0, 0, 0, 0, 0, 0, 0, 0}
#define memspcr_OpticsConfiguration_init_zero    {0}
#define memspcr_ThermalStep_init_zero            {0, 0, 0, 0}
#define memspcr_ExperimentConfiguration_init_zero {0, _memspcr_ExperimentConfiguration_Heater_MIN, memspcr_ThermalConfiguration_init_zero, memspcr_FluidicConfiguration_init_zero, memspcr_OpticsConfiguration_init_zero, {{NULL}, NULL}}

/* Field tags (for use in manual encoding/decoding) */
#define memspcr_FluidicConfiguration_pressure_sensor_setpoint_adc_tag 1
#define memspcr_FluidicConfiguration_pressure_sensor_hysteresis_adc_tag 2
#define memspcr_FluidicConfiguration_pressure_control_loop_interval_ms_tag 3
#define memspcr_OpticsConfiguration_camera_interframe_delay_us_tag 1
#define memspcr_ThermalConfiguration_guard_drive_ratio_tag 1
#define memspcr_ThermalConfiguration_settling_time_us_tag 2
#define memspcr_ThermalConfiguration_pid_kp_mho_tag 3
#define memspcr_ThermalConfiguration_pid_integral_time_ms_tag 4
#define memspcr_ThermalConfiguration_thermal_control_loop_interval_ms_tag 5
#define memspcr_ThermalConfiguration_pid_wind_up_limit_ohm_tag 6
#define memspcr_ThermalConfiguration_pid_pwm_limit_tag 7
#define memspcr_ThermalConfiguration_heater_pwm_period_ticks_tag 8
#define memspcr_ThermalStep_elapsed_time_ms_tag  1
#define memspcr_ThermalStep_camera_offset_ms_tag 2
#define memspcr_ThermalStep_camera_exposure_ms_tag 3
#define memspcr_ThermalStep_resistance_set_point_tag 4
#define memspcr_ExperimentConfiguration_logging_interval_ms_tag 1
#define memspcr_ExperimentConfiguration_selected_heater_tag 2
#define memspcr_ExperimentConfiguration_thermal_tag 3
#define memspcr_ExperimentConfiguration_fluidics_tag 4
#define memspcr_ExperimentConfiguration_optics_tag 5
#define memspcr_ExperimentConfiguration_profile_tag 6

/* Struct field encoding specification for nanopb */
extern const pb_field_t memspcr_FluidicConfiguration_fields[4];
extern const pb_field_t memspcr_ThermalConfiguration_fields[9];
extern const pb_field_t memspcr_OpticsConfiguration_fields[2];
extern const pb_field_t memspcr_ThermalStep_fields[5];
extern const pb_field_t memspcr_ExperimentConfiguration_fields[7];

/* Maximum encoded size of messages (where known) */
#define memspcr_FluidicConfiguration_size        21
#define memspcr_ThermalConfiguration_size        58
#define memspcr_OpticsConfiguration_size         11
#define memspcr_ThermalStep_size                 38
/* memspcr_ExperimentConfiguration_size depends on runtime parameters */

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

#define MEMSPCR_MESSAGES \


#endif

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

#endif