Projet Bee-Honey't  1.0
BTS SN 2019
Connecteurs publics | Signaux | Fonctions membres publiques | Fonctions membres privées | Attributs privés | Liste de tous les membres
Référence de la classe InfosEnsoleillement

La classe InfosEnsoleillement. Plus de détails...

#include <infosEnsoleillement.h>

Graphe de collaboration de InfosEnsoleillement:
Collaboration graph

Connecteurs publics

void traiterNouvelleEnsoleillement (QString ensoleillementString, QString horodatageEnsoleillement)
 slot qui traite l'ensoleillement Plus de détails...
 

Signaux

void ensoleillementEnvoye (double ensoleillement, QString horodatage)
 
void traitementEnsoleillementEnvoye (double ensoleillementMoyen, double ensoleillementMinimum, double ensoleillementMaximum, int heure)
 

Fonctions membres publiques

 InfosEnsoleillement (QObject *parent)
 Constructeur de la classe InfosEnsoleillement. Plus de détails...
 
double getEnsoleillement ()
 getter de l'attribut ensoleillement Plus de détails...
 
void setEnsoleillement (double ensoleillement)
 setter de l'attribut ensoleillement Plus de détails...
 
QString getHorodatageEnsoleillement () const
 getter de l'attibut horodatageEnsoleillement Plus de détails...
 
void setHorodatageEnsoleillement (const QString horodatageEnsoleillement)
 setter de l'attribut horodatageEnsoleillement Plus de détails...
 

Fonctions membres privées

void calculerMoyenneHoraireEnsoleillement ()
 

Attributs privés

double ensoleillement
 valeur courante de l'ensoleillement en w/m² Plus de détails...
 
QString horodatageEnsoleillement
 horodatage de la l'ensoleillement Plus de détails...
 
QVector< double > ensoleillements
 
int heureCouranteEnsoleillement
 

Description détaillée

Auteur
Florentin Mellah, Enzo Rossi
Version
0.1

Documentation des constructeurs et destructeur

◆ InfosEnsoleillement()

InfosEnsoleillement::InfosEnsoleillement ( QObject parent)

Définition des attributs ensoleillement à 0 et l'attribut horodatageEnsoleillement à ""

25 {
26 }
QString horodatageEnsoleillement
horodatage de la l&#39;ensoleillement
Definition: infosEnsoleillement.h:37
int heureCouranteEnsoleillement
Definition: infosEnsoleillement.h:39
double ensoleillement
valeur courante de l&#39;ensoleillement en w/m²
Definition: infosEnsoleillement.h:36

Documentation des fonctions membres

◆ calculerMoyenneHoraireEnsoleillement()

void InfosEnsoleillement::calculerMoyenneHoraireEnsoleillement ( )
private

Références ensoleillements, heureCouranteEnsoleillement, et traitementEnsoleillementEnvoye().

Référencé par traiterNouvelleEnsoleillement().

104 {
105  double sommeEnsoleillement= 0;
106  double ensoleillementMoyen = 0;
107  double ensoleillementMinimum = 999;
108  double ensoleillementMaximum = -999;
109 
110  // au moins 2 mesures
111  if(ensoleillements.size() >= 2)
112  {
113  ensoleillementMinimum = ensoleillements[0];
114  ensoleillementMaximum = ensoleillements[0];
115  for (int i = 0; i < ensoleillements.size(); i++)
116  {
117  sommeEnsoleillement += ensoleillements[i];
118 
119  if(ensoleillementMinimum > ensoleillements[i])
120  {
121  ensoleillementMinimum = ensoleillements[i];
122  }
123 
124  if(ensoleillementMaximum < ensoleillements[i])
125  {
126  ensoleillementMaximum = ensoleillements[i];
127  }
128  }
129  }
130  qDebug() << Q_FUNC_INFO << ensoleillements;
131  ensoleillementMoyen = sommeEnsoleillement/ double(ensoleillements.size());
132  emit traitementEnsoleillementEnvoye(ensoleillementMoyen, ensoleillementMinimum ,ensoleillementMaximum, heureCouranteEnsoleillement);
133  ensoleillements.clear();
134 }
QVector< double > ensoleillements
Definition: infosEnsoleillement.h:38
int heureCouranteEnsoleillement
Definition: infosEnsoleillement.h:39
void traitementEnsoleillementEnvoye(double ensoleillementMoyen, double ensoleillementMinimum, double ensoleillementMaximum, int heure)

◆ ensoleillementEnvoye

void InfosEnsoleillement::ensoleillementEnvoye ( double  ensoleillement,
QString  horodatage 
)
signal

◆ getEnsoleillement()

double InfosEnsoleillement::getEnsoleillement ( )
Renvoie
un double correspondant à la valeur de l'attibut ensoleillement

Références ensoleillement.

Référencé par Alertes::alertesEnsoleillement().

35 {
36  return ensoleillement;
37 }
double ensoleillement
valeur courante de l&#39;ensoleillement en w/m²
Definition: infosEnsoleillement.h:36

◆ getHorodatageEnsoleillement()

QString InfosEnsoleillement::getHorodatageEnsoleillement ( ) const
Renvoie
un QString correspondant a la valeur de l'attribut horodatageEnsoleillement

Références horodatageEnsoleillement.

Référencé par Ruche::insererDonneesPortEnsoleillement().

57 {
59 }
QString horodatageEnsoleillement
horodatage de la l&#39;ensoleillement
Definition: infosEnsoleillement.h:37

◆ setEnsoleillement()

void InfosEnsoleillement::setEnsoleillement ( double  ensoleillement)
Paramètres
ensoleillement

Références ensoleillement.

46 {
48 }
double ensoleillement
valeur courante de l&#39;ensoleillement en w/m²
Definition: infosEnsoleillement.h:36

◆ setHorodatageEnsoleillement()

void InfosEnsoleillement::setHorodatageEnsoleillement ( const QString  horodatageEnsoleillement)
Paramètres
horodatageEnsoleillement

Références horodatageEnsoleillement.

68 {
70 }
QString horodatageEnsoleillement
horodatage de la l&#39;ensoleillement
Definition: infosEnsoleillement.h:37

◆ traitementEnsoleillementEnvoye

void InfosEnsoleillement::traitementEnsoleillementEnvoye ( double  ensoleillementMoyen,
double  ensoleillementMinimum,
double  ensoleillementMaximum,
int  heure 
)
signal

◆ traiterNouvelleEnsoleillement

void InfosEnsoleillement::traiterNouvelleEnsoleillement ( QString  ensoleillementString,
QString  horodatageEnsoleillement 
)
slot
Paramètres
ensoleillementStringqui corespond a l'ensoleillement envoyé par la Ruche
horodatageEnsoleillementcorrespond a l'horodatage de la mesure de l'ensoleillement

Références calculerMoyenneHoraireEnsoleillement(), ensoleillement, ensoleillementEnvoye(), ensoleillements, heureCouranteEnsoleillement, et horodatageEnsoleillement.

80 {
81  ensoleillement = ensoleillementString.toDouble();
84 
85  QDateTime dateTimeHorodatage = QDateTime::fromString(horodatageEnsoleillement, "dd/MM/yyyy HH:mm:ss");
86  qDebug() << Q_FUNC_INFO << "heureCouranteEnsoleillement" << heureCouranteEnsoleillement << dateTimeHorodatage.time().hour();
88  {
89  heureCouranteEnsoleillement = dateTimeHorodatage.time().hour();
90  }
91  if(heureCouranteEnsoleillement == dateTimeHorodatage.time().hour())
92  {
94  }
95  else if((heureCouranteEnsoleillement+1)%24 == dateTimeHorodatage.time().hour())
96  {
98  heureCouranteEnsoleillement = dateTimeHorodatage.time().hour();
100  }
101 }
QString horodatageEnsoleillement
horodatage de la l&#39;ensoleillement
Definition: infosEnsoleillement.h:37
void calculerMoyenneHoraireEnsoleillement()
Definition: infosEnsoleillement.cpp:103
QVector< double > ensoleillements
Definition: infosEnsoleillement.h:38
void ensoleillementEnvoye(double ensoleillement, QString horodatage)
int heureCouranteEnsoleillement
Definition: infosEnsoleillement.h:39
double ensoleillement
valeur courante de l&#39;ensoleillement en w/m²
Definition: infosEnsoleillement.h:36

Documentation des données membres

◆ ensoleillement

double InfosEnsoleillement::ensoleillement
private

◆ ensoleillements

QVector<double> InfosEnsoleillement::ensoleillements
private

◆ heureCouranteEnsoleillement

int InfosEnsoleillement::heureCouranteEnsoleillement
private

◆ horodatageEnsoleillement

QString InfosEnsoleillement::horodatageEnsoleillement
private

La documentation de cette classe a été générée à partir des fichiers suivants :