Newer
Older
Malaurie Bernard
committed
#include <ArduinoJson.h>
Malaurie Bernard
committed
#include <interrupts.h> // InterruptLock
using InterruptLock = esp8266::InterruptLock;
#include <iostream>
using namespace std;
Malaurie Bernard
committed
class Syringe
Malaurie Bernard
committed
{
Malaurie Bernard
committed
private :
Malaurie Bernard
committed
float _total_volume_mL;
float _internal_diameter_mm;
Malaurie Bernard
committed
Malaurie Bernard
committed
StaticJsonDocument<200> syringe_json; //200 = RAM allocated to this document
Malaurie Bernard
committed
public :
Malaurie Bernard
committed
Syringe(); //There is no arguments because we add the generic syringe to use
Malaurie Bernard
committed
//SET METHODS
void set_syringe(String name, float total_volume_mL, float internal_diameter_mm);
Malaurie Bernard
committed
Malaurie Bernard
committed
void set_total_volume_mL(String name, float total_volume_mL);
void set_internal_diameter_mm(String name, float internal_diameter_mm);
Malaurie Bernard
committed
//GET METHODS
Malaurie Bernard
committed
float get_total_volume_mL(String name);
float get_internal_diameter_mm(String name);
Malaurie Bernard
committed
const StaticJsonDocument<200>& get_syringe_database();
const JsonObject get_syringe_database_object();
Malaurie Bernard
committed
//CONFIGURATION
bool check_configuration(String name);
Malaurie Bernard
committed
//JSON METHODS
void write_Json ();
void read_Json ();