Newer
Older
#pragma once
#include <DNSServer.h>
#include <ESPUI.h> // https://github.com/s00500/ESPUI
#include "common.h"
#include "syringe.h"
#include "syringefilled.h"
#include <EEPROM.h>
Malaurie Bernard
committed
class Web
{
private :
Malaurie Bernard
committed
static uint16_t configurations, new_syringe, features;
//***ABOVE***//
Malaurie Bernard
committed
static int status_syringe_pump;
static uint16_t stop_syringe_pump;
Malaurie Bernard
committed
static int status_syringe_filled_placement;
static uint16_t syringe_filled_placement;
Malaurie Bernard
committed
static int status_limit_switch;
Malaurie Bernard
committed
Malaurie Bernard
committed
static uint16_t calibration, fast_backward, fast_forward, slow_backward, slow_forward, confirm_initialisation;
Malaurie Bernard
committed
static uint16_t volume_exchange_mL_label, volume_exchange_mL, exchange_throughtput_uL_per_sec_label, exchange_throughtput_uL_per_sec, label_push_pull_choice, switch_push_pull_choice, start_exchange;
Malaurie Bernard
committed
static uint16_t label_remaining_volume_mL, label_remaining_time_sec;
static uint16_t remaining_volume_mL, remaining_time_sec;
Malaurie Bernard
committed
static uint16_t syringe_selection, syringe_ref, syringe_brand, syringe_volume_mL, syringe_diameter_mm, initial_volume_mL_label, initial_volume_mL, choose_syringe;
Malaurie Bernard
committed
static float syringe_volume_mL_value, syringe_diameter_mm_value;
Malaurie Bernard
committed
static std::string syringe_volume_mL_string, syringe_diameter_mm_string;
Malaurie Bernard
committed
static uint16_t name_new_syringe, name_new_syringe_label, internal_diameter_mm_new_syringe, internal_diameter_mm_new_syringe_label, total_volume_mL_new_syringe, total_volume_mL_new_syringe_label, add_syringe, add_syringe_label;
static String name_new_syringe_value, total_volume_mL_new_syringe_value, internal_diameter_mm_new_syringe_value;
Malaurie Bernard
committed
Malaurie Bernard
committed
static uint16_t syringe_pump_length_mm_value;
static uint16_t lead_screw_pitch_mm, clockwise_equals_push_label, clockwise_equals_push, microstep_configuration, motor_steps;
Malaurie Bernard
committed
Malaurie Bernard
committed
static String select_value;
Malaurie Bernard
committed
static char couleur1[30], couleur2[30], couleur3[30], couleur4[30], couleur5[30], couleur6[30], couleur7[30], couleur8[30], couleur9[30], couleur10[30];
Malaurie Bernard
committed
static long unsigned last_time;
Malaurie Bernard
committed
static const char* couleurs[10];
Malaurie Bernard
committed
public :
static void web_setup();
static void web_loop();
/************CALLBACK_METHODS****************/
//GENERAL CALLBACKS//
Malaurie Bernard
committed
static void number_callback(Control* sender, int type);
//SPECIFIC CALLBACKS//
//***ABOVE***//
Malaurie Bernard
committed
static void stop_syringe_pump_callback (Control* sender, int value, void* param);
static void syringe_filled_placement_callback (Control* sender, int value, void* param);
static void calibration_callback(Control* sender, int type);
static void fast_backward_callback (Control *sender, int type);
static void fast_forward_callback (Control *sender, int type);
static void slow_backward_callback (Control *sender, int type);
static void slow_forward_callback (Control *sender, int type);
static void confirm_initialisation_callback (Control *sender, int type);
static void volume_exchange_mL_callback (Control* sender, int value, void* param);
static void exchange_throughtput_uL_per_sec_callback (Control* sender, int value, void* param);
static void switch_push_pull_choice_callback (Control* sender, int value, void* param);
static void remaining_volume_mL_callback (Control* sender, int value, void* param);
static void remaining_time_sec_callback (Control* sender, int value, void* param);
static void start_exchange_callback (Control* sender, int value, void* param);
Malaurie Bernard
committed
static void choose_syringe_callback (Control* sender, int value, void* param);
static void initial_volume_mL_callback (Control* sender, int value, void* param);
Malaurie Bernard
committed
Malaurie Bernard
committed
static void name_new_syringe_callback(Control* sender, int type);
static void total_volume_mL_new_syringe_callback(Control* sender, int type);
static void internal_diameter_mm_new_syringe_callback(Control* sender, int type);
static void add_syringe_callback (Control* sender, int value, void* param);
//features : Configurations avancées
Malaurie Bernard
committed
static void syringe_pump_length_mm_callback(Control* sender, int type);
static void clockwise_equals_push_callback(Control* sender, int value);
static void microstep_configuration_callback(Control* sender, int type);
static void motor_steps_callback(Control* sender, int type);
Malaurie Bernard
committed
static void syringe_selection_callback(Control* sender, int value);
//ON_OFF METHODS
Malaurie Bernard
committed
static void syringe_pump_on_off();
Malaurie Bernard
committed
static void style (uint16_t id, int style);
static void set_initial_style();
static void set_theme(int theme);
static void style_syringe_pump_on();
static void style_syringe_pump_off();
static void style_syringe_filled_placement_on();
static void style_syringe_filled_placement_off();
static void style_initialisation(int style_choice);
static void style_exchange_configuration(int style_choice);
//OTHER_METHODS
Malaurie Bernard
committed
static void select_syringe_maj(uint16_t tab);
static void number_max_min(int min, int max, uint16_t control);
static void serial_print (String name, Control* sender);
};