HomeWaterLeaksDetection
DailyOverview.h
Go to the documentation of this file.
1 #ifndef UNTITLED_DAILY_OVERVIEW_H
2 #define UNTITLED_DAILY_OVERVIEW_H
3 
4 #include "Arduino.h"
5 #include "IControllable.h"
6 #include "Setup.h"
7 #include "DateTime.h"
8 #include "HighLeakDetection.h"
9 #include "LowLeakDetection.h"
10 #include "TotalLeakDetection.h"
11 #include "Consumption.h"
12 #include "EmailSender.h"
13 #include "LimitsDefinition.h"
14 
15 //===============DailyOverview class====================
16 
24 #ifdef LCD_DISPLAY
25  , public IDisplayable
26 #endif
27 {
28 //====================private data======================
29 private:
33 
36  RTCDateTime initialDateTime;
37 
41 
42 //==================private methods=====================
43 private:
45  void reset();
46 
47 //==================public methods======================
48 public:
64 
70  void update() override;
71 
72 //===================LCD display========================
73 #ifdef LCD_DISPLAY
74  const String getRow(int row) const override;
83 #endif
84 };
85 
86 #endif
DailyOverview
Definition: DailyOverview.h:27
Consumption.h
DateTime.h
LowLeakDetection.h
TotalLeakDetection
Definition: TotalLeakDetection.h:15
HighLeakDetection
Definition: HighLeakDetection.h:23
DailyOverview::maxLowLeakPercentage
float maxLowLeakPercentage
max [%] low-water leak detection within the monitoring period (extreme)
Definition: DailyOverview.h:39
DailyOverview::reset
void reset()
Resets all the variables at the end of the day.
Definition: DailyOverview.cpp:29
DailyOverview::totalLeakDetection
TotalLeakDetection * totalLeakDetection
instance of a total-water leak detection algorithm
Definition: DailyOverview.h:32
EmailSender.h
Setup.h
LimitsDefinition.h
DailyOverview::dailyConsumption
Consumption * dailyConsumption
instance of Consumption (daily water consumption)
Definition: DailyOverview.h:34
TotalLeakDetection.h
HighLeakDetection.h
DailyOverview::lowLeakDetection
LowLeakDetection * lowLeakDetection
instance of a low-water leak detection algorithm
Definition: DailyOverview.h:31
Consumption
Definition: Consumption.h:13
DailyOverview::monthlyConsumption
Consumption * monthlyConsumption
instance of Consumption (monthly water consumption)
Definition: DailyOverview.h:35
DailyOverview::update
void update() override
Updates the class.
Definition: DailyOverview.cpp:35
IDisplayable
Definition: IDisplayable.h:12
IControllable.h
IControllable
Definition: IControllable.h:13
DailyOverview::initialDateTime
RTCDateTime initialDateTime
instance of RTCDateTime (real-time module)
Definition: DailyOverview.h:36
DailyOverview::maxHighLeakPercentage
float maxHighLeakPercentage
max [%] high-water leak detection within the monitoring period (extreme)
Definition: DailyOverview.h:38
DailyOverview::maxTotalLeakPercentage
float maxTotalLeakPercentage
max [%] total-water leak detection within the monitoring period (extreme)
Definition: DailyOverview.h:40
DailyOverview::DailyOverview
DailyOverview(HighLeakDetection *highLeakDetection, LowLeakDetection *lowLeakDetection, TotalLeakDetection *totalLeakDetection, Consumption *dailyConsumption, Consumption *monthlyConsumption)
Constructor of the class.
Definition: DailyOverview.cpp:3
DailyOverview::highLeakDetection
HighLeakDetection * highLeakDetection
instance of a high-water leak detection algorithm
Definition: DailyOverview.h:30
LowLeakDetection
Definition: LowLeakDetection.h:21
DailyOverview::getRow
const String getRow(int row) const override
Returns the content of the row given as a parameter.