// structures.h
#ifndef STRUCTURES_H
#define STRUCTURES_H

struct TimerStep {
    uint8_t startHour;
    uint8_t startMin;
    uint8_t endHour;
    uint8_t endMin;
    bool active;
};

struct Settings {
    // Numero di controllo
    uint32_t numero_magico;

    // Impostazioni Luci
    bool lightManualMode;    
    bool lightManualState;   
    TimerStep lightTimer;  
    bool currentLightState;  

    // Impostazioni Aspiratore
    bool aspiratorManualMode;    
    bool aspiratorManualState;   
    bool aspiratorTempMode;      
    bool aspiratorHumidityMode;  
    float tempMaxAspirator;      
    float maxHumidity;           
    bool currentAspiratorState; 

    // Impostazioni Riscaldamento
    bool heaterManualMode;       
    bool heaterManualState;  
    bool heaterTempMode;    
    float tempMinHeater;         
    bool currentHeaterState;  

    // Impostazioni Pompa 1
    bool pump1ManualMode;        
    bool pump1ManualState;
    bool pump1SoilMode;
    float pump1SoilThreshold;
    TimerStep pump1Timer[MAX_TIMER_STEPS];       
    bool currentPump1State;  

    // Impostazioni Pompa 2
    bool pump2ManualMode;        
    bool pump2ManualState;
    bool pump2SoilMode;
    float pump2SoilThreshold;
    TimerStep pump2Timer[MAX_TIMER_STEPS];
    bool currentPump2State;
};



struct SensorData {
    float temperature;
    float humidity;
    int soilMoisture;
};

#endif

