ROV'NET  0.2
BTS SNIR LaSalle Avignon 2020
Référence de la classe Rov

Classe controlant tout les traitements en provenance et en direction de la communication avec le rov. Plus de détails...

#include "rov.h"

Graphe de collaboration de Rov:
Collaboration graph

Connecteurs publics

void arreterVideo ()
 Arrete le flux vidéo. Plus de détails...
 
void creerTrameCamera (QString axeX, QString axeY)
 Crée les trames de la caméra. Plus de détails...
 
void creerTrameDeplacement (char deplacementAxeX, int puissance, char deplacementAxeY)
 Crée les trames de déplacement. Plus de détails...
 
void creerTrameOrdre (QString ordre)
 Crée les trames d'ordre. Plus de détails...
 
void creerTramePilotage (QString deplacement)
 Crée les trames de pilotage. Plus de détails...
 
void creerTramePince (QString mouvementPince)
 Crée les trames de la pince. Plus de détails...
 
void decoderTrame (QString trame)
 Décode la trame réçue par le port série selon le protocole établie. Plus de détails...
 

Signaux

void donneesTelemetrieDecode (QString donnes)
 signal contenant les nouvelle données de télémetrie (pour l'ihm) Plus de détails...
 
void enregistrerMesures (QString temperature, QString humidite, QString radiation)
 signal contenant les nouvelles mesures recus du robot (pour les enregistrer dans la BDD) Plus de détails...
 
void styleRadar (bool etat)
 signale le style de Radar à afficher Plus de détails...
 

Fonctions membres publiques

void arreterCampagne ()
 Arrête la campagne. Plus de détails...
 
bool demarrerCampagne ()
 Démarre la campagne. Plus de détails...
 
bool demarrerVideo (QString nomCamera, int choixResolution=-1)
 Démarre un nouveau flux vidéo. Plus de détails...
 
CameragetCamera ()
 Retourne l'objet caméra créée par le rov. Plus de détails...
 
bool getCampagneEncours () const
 Retourne l'etat de la campagne. Plus de détails...
 
CapteursgetCapteurs ()
 Retourne l'objet capteurs créée par le rov. Plus de détails...
 
CommunicationRovgetCommunicationRov ()
 Retourne l'objet communicationRov créée par le rov. Plus de détails...
 
QVector< Manette * > getManettes ()
 Retourne le conteneur de manettes créée par le rov. Plus de détails...
 
QString getTempsCampagne ()
 Retourne la durée de la campagne. Plus de détails...
 
void modifierConfiguration (Configuration &configuration)
 Modifie la configuration de la communication. Plus de détails...
 
 Rov (IHMRov *ihmRov, QObject *parent=nullptr)
 Constructeur de la classe Rov. Plus de détails...
 
 ~Rov ()
 Destructeur de la classe Rov. Plus de détails...
 

Fonctions membres privées

void decoderTrameCapteur (QString trameCapteur)
 Décode la trame capteur reçue selon le protocole. Plus de détails...
 
void decoderTrameTelemetrie (QString trameTelemetrie)
 Décode la trame télémetrie reçue selon le protocole. Plus de détails...
 
void detecterManette ()
 detecte les mannettes Plus de détails...
 
void initialiserEvenementManette (Manette *manette)
 Initialise les evenement de la manette. Plus de détails...
 
void initialiserEvenements ()
 Initialise le(s) Evenement(s) Plus de détails...
 
void supprimerManette ()
 Supprime les manettes du conteneur des manettes. Plus de détails...
 

Attributs privés

Cameracamera
 Instance d'un objet camera possedant les informations nécessaire à l'affichage du flux vidéo. Plus de détails...
 
bool campagneEnCours
 Etat de si une campagne est en cour. Plus de détails...
 
Capteurscapteurs
 Instance d'un objet contenant les dernières informations issues des capteurs du rov. Plus de détails...
 
CommunicationRovcommunicationRov
 Instance d'un objet permettant la récupération des trames envoyé par la liaison série. Plus de détails...
 
QTime dureeCampagne
 Timer lancer au début de la campagne. Plus de détails...
 
IHMRovihmRov
 Instance d'un objet ihmRov permettant la connexion entre les autre classe associé aux rov et l'ihm. Plus de détails...
 
QList< int > listeManettes
 Liste des mannettes connecté Plus de détails...
 
QVector< Manette * > manettes
 Conteneur des manettes. Plus de détails...
 
QString trameDeplacement
 Contenu trame déplacement. Plus de détails...
 
QString trameOrdre
 Contenu trame ordre. Plus de détails...
 
QString tramePilotage
 Contenu trame pilotage. Plus de détails...
 
QString tramePince
 Contenu trame pince. Plus de détails...
 
QString tramePinceImmobile
 Contenu trame pince à zéro. Plus de détails...
 
QString tramePrecedenteCamera
 Contenu précédente trame caméra. Plus de détails...
 
QString tramePrecedenteDeplacement
 Contenu précédente trame déplacement. Plus de détails...
 
QString tramePrecedentePilotage
 Contenu précédente trame pilotage. Plus de détails...
 
QString tramePrecedentePince
 Contenu précédente trame pince. Plus de détails...
 

Description détaillée

Classe controlant tout les traitements en provenance et en direction de la communication avec le rov.

Définition à la ligne 91 du fichier rov.h.

Documentation des constructeurs et destructeur

◆ Rov()

Rov::Rov ( IHMRov ihmRov,
QObject parent = nullptr 
)

Constructeur de la classe Rov.

Paramètres
ihmRov
parent

Définition à la ligne 11 du fichier rov.cpp.

Références capteurs, communicationRov, detecterManette(), et initialiserEvenements().

11  : QObject(parent), ihmRov(ihmRov), camera(nullptr), trameDeplacement("$DEP;0;0;0\r\n"), tramePrecedenteDeplacement("$DEP;0;0;0\r\n"), tramePilotage("$BRAS;0\r\n"), tramePrecedentePilotage("$BRAS;0\r\n"), tramePince("$PINCE;0\r\n"), tramePrecedentePince("$PINCE;0\r\n"), tramePrecedenteCamera(TRAME_CAMERA_IMMOBILE),
12 campagneEnCours(false)
13 {
14  qDebug() << Q_FUNC_INFO;
16  capteurs = new Capteurs(this);
17 
20 }
Camera * camera
Instance d&#39;un objet camera possedant les informations nécessaire à l&#39;affichage du flux vidéo...
Definition: rov.h:97
void detecterManette()
detecte les mannettes
Definition: rov.cpp:29
Capteurs * capteurs
Instance d&#39;un objet contenant les dernières informations issues des capteurs du rov.
Definition: rov.h:96
QString tramePrecedenteDeplacement
Contenu précédente trame déplacement.
Definition: rov.h:102
bool campagneEnCours
Etat de si une campagne est en cour.
Definition: rov.h:111
void initialiserEvenements()
Initialise le(s) Evenement(s)
Definition: rov.cpp:115
#define TRAME_CAMERA_IMMOBILE
Constante contenant la trame pour immobiliser la caméra.
Definition: rov.h:77
CommunicationRov * communicationRov
Instance d&#39;un objet permettant la récupération des trames envoyé par la liaison série.
Definition: rov.h:98
QString tramePrecedenteCamera
Contenu précédente trame caméra.
Definition: rov.h:108
IHMRov * ihmRov
Instance d&#39;un objet ihmRov permettant la connexion entre les autre classe associé aux rov et l&#39;ihm...
Definition: rov.h:95
QString tramePilotage
Contenu trame pilotage.
Definition: rov.h:103
Class permettant de mettre en place une communication avec le rov.
QString trameDeplacement
Contenu trame déplacement.
Definition: rov.h:101
QString tramePince
Contenu trame pince.
Definition: rov.h:106
La classe QObject est la classe de base de tous les objets Qt. Elle permet à ces objets Qt de dispose...
Classe contenant les dernières informations issues des capteurs du rov.
Definition: capteurs.h:18
QString tramePrecedentePince
Contenu précédente trame pince.
Definition: rov.h:107
QString tramePrecedentePilotage
Contenu précédente trame pilotage.
Definition: rov.h:104

◆ ~Rov()

Rov::~Rov ( )

Destructeur de la classe Rov.

Définition à la ligne 22 du fichier rov.cpp.

Références arreterCampagne(), et supprimerManette().

23 {
26  qDebug() << Q_FUNC_INFO;
27 }
void supprimerManette()
Supprime les manettes du conteneur des manettes.
Definition: rov.cpp:121
void arreterCampagne()
Arrête la campagne.
Definition: rov.cpp:140

Documentation des fonctions membres

◆ arreterCampagne()

void Rov::arreterCampagne ( )

Arrête la campagne.

Définition à la ligne 140 du fichier rov.cpp.

Références arreterVideo(), campagneEnCours, dureeCampagne, IHMRov::getCampagne(), ihmRov, et Campagne::setDuree().

Référencé par IHMRov::fermer(), et ~Rov().

141 {
142  qDebug() << Q_FUNC_INFO;
143  ihmRov->getCampagne()->setDuree(dureeCampagne.elapsed());
144  arreterVideo();
145  campagneEnCours = false;
146 }
QTime dureeCampagne
Timer lancer au début de la campagne.
Definition: rov.h:110
Campagne * getCampagne()
Retourne l&#39;objet campagne en cours.
Definition: ihmrov.cpp:432
bool campagneEnCours
Etat de si une campagne est en cour.
Definition: rov.h:111
void arreterVideo()
Arrete le flux vidéo.
Definition: rov.cpp:273
IHMRov * ihmRov
Instance d&#39;un objet ihmRov permettant la connexion entre les autre classe associé aux rov et l&#39;ihm...
Definition: rov.h:95
void setDuree(int duree)
Modifie la duree de la campagne.
Definition: campagne.cpp:49

◆ arreterVideo

void Rov::arreterVideo ( )
slot

Arrete le flux vidéo.

Définition à la ligne 273 du fichier rov.cpp.

Références IHMRov::arreterVideo(), camera, ihmRov, et IHMRov::modifieEtatCamera().

Référencé par arreterCampagne(), et IHMReglageVideo::gererVideo().

274 {
275  if(camera != nullptr)
276  {
277  qDebug() << Q_FUNC_INFO << "isRunning" << camera->isRunning();
278  ihmRov->arreterVideo();
279  disconnect(camera, SIGNAL(nouvelleImage(QPixmap)), ihmRov, SLOT(afficherImage(QPixmap)));
280  camera->requestInterruption();
281  camera->wait();
282  delete camera;
283  camera = nullptr;
284  ihmRov->modifieEtatCamera(false, "");
285  }
286 }
Camera * camera
Instance d&#39;un objet camera possedant les informations nécessaire à l&#39;affichage du flux vidéo...
Definition: rov.h:97
void arreterVideo()
Déconnecte les événements liés à la caméra et modifie l&#39;état des boutons de l&#39;IHM.
Definition: ihmrov.cpp:528
IHMRov * ihmRov
Instance d&#39;un objet ihmRov permettant la connexion entre les autre classe associé aux rov et l&#39;ihm...
Definition: rov.h:95
void modifieEtatCamera(bool etat, QString information)
Modifie l&#39;affichage de l&#39;état de la caméra.
Definition: ihmrov.cpp:576

◆ creerTrameCamera

void Rov::creerTrameCamera ( QString  axeX,
QString  axeY 
)
slot

Crée les trames de la caméra.

Paramètres
axeX
axeY

Définition à la ligne 261 du fichier rov.cpp.

Références communicationRov, DEBUT_TRAME_CAMERA, CommunicationRov::emettreTrame(), et tramePrecedenteCamera.

Référencé par initialiserEvenementManette().

262 {
263  QString trameCamera = DEBUT_TRAME_CAMERA ";" + axeX + ";" + axeY + "\r\n";
264 
265  if(tramePrecedenteCamera != trameCamera)
266  {
267  tramePrecedenteCamera = trameCamera;
268  communicationRov->emettreTrame(trameCamera);
269  qDebug() << Q_FUNC_INFO << "trame camera" << trameCamera;
270  }
271 }
CommunicationRov * communicationRov
Instance d&#39;un objet permettant la récupération des trames envoyé par la liaison série.
Definition: rov.h:98
#define DEBUT_TRAME_CAMERA
Constante contenant le début de la trame caméra selon le protocole.
Definition: rov.h:71
QString tramePrecedenteCamera
Contenu précédente trame caméra.
Definition: rov.h:108
int emettreTrame(QString trame)
Emet la trame vers le robot.

◆ creerTrameDeplacement

void Rov::creerTrameDeplacement ( char  deplacementAxeX,
int  puissance,
char  deplacementAxeY 
)
slot

Crée les trames de déplacement.

Définition à la ligne 213 du fichier rov.cpp.

Références communicationRov, DEBUT_TRAME_DEPLACEMENT, CommunicationRov::emettreTrame(), ihmRov, IHMRov::setEtatRadar(), TRAME_DEPLACEMENT_IMMOBILE, trameDeplacement, et tramePrecedenteDeplacement.

Référencé par initialiserEvenementManette().

214 {
215  trameDeplacement = DEBUT_TRAME_DEPLACEMENT ";" + QString(deplacementAxeX) + ";" + QString::number(puissance) + ";" + QString(deplacementAxeY) + "\r\n";
216 
218  {
220  ihmRov->setEtatRadar(true);
221  else
222  ihmRov->setEtatRadar(false);
223  qDebug() << Q_FUNC_INFO << "trameDeplacement :" << trameDeplacement;
225  communicationRov->emettreTrame(trameDeplacement);
226  }
227 }
QString tramePrecedenteDeplacement
Contenu précédente trame déplacement.
Definition: rov.h:102
#define DEBUT_TRAME_DEPLACEMENT
Constante contenant le début de la trame déplacement selon le protocole.
Definition: rov.h:34
void setEtatRadar(bool etatRadar)
Dertermine l&#39;etat de etatRadar.
Definition: ihmrov.cpp:437
CommunicationRov * communicationRov
Instance d&#39;un objet permettant la récupération des trames envoyé par la liaison série.
Definition: rov.h:98
IHMRov * ihmRov
Instance d&#39;un objet ihmRov permettant la connexion entre les autre classe associé aux rov et l&#39;ihm...
Definition: rov.h:95
QString trameDeplacement
Contenu trame déplacement.
Definition: rov.h:101
#define TRAME_DEPLACEMENT_IMMOBILE
Definition: rov.h:53
int emettreTrame(QString trame)
Emet la trame vers le robot.

◆ creerTrameOrdre

void Rov::creerTrameOrdre ( QString  ordre)
slot

Crée les trames d'ordre.

Paramètres
ordre

Définition à la ligne 240 du fichier rov.cpp.

Références communicationRov, DEBUT_TRAME_ORDRE, CommunicationRov::emettreTrame(), TRAME_PILOTAGE_IMMOBILE, TRAME_PINCE_IMMOBILE, trameOrdre, tramePince, et tramePrecedentePilotage.

Référencé par initialiserEvenementManette().

241 {
242  trameOrdre = DEBUT_TRAME_ORDRE ";" + ordre + "\r\n";
244  {
245  qDebug() << Q_FUNC_INFO << "trameOrdre :" << trameOrdre;
246  communicationRov->emettreTrame(trameOrdre);
247  }
248 }
#define DEBUT_TRAME_ORDRE
Constante contenant le début de la trame ordre selon le protocole.
Definition: rov.h:46
QString trameOrdre
Contenu trame ordre.
Definition: rov.h:105
CommunicationRov * communicationRov
Instance d&#39;un objet permettant la récupération des trames envoyé par la liaison série.
Definition: rov.h:98
QString tramePince
Contenu trame pince.
Definition: rov.h:106
#define TRAME_PINCE_IMMOBILE
Constante contenant la trame pince à zéro selon le protocole.
Definition: rov.h:65
int emettreTrame(QString trame)
Emet la trame vers le robot.
#define TRAME_PILOTAGE_IMMOBILE
Constante contenant la trame pilotage à zéro selon le protocole.
Definition: rov.h:59
QString tramePrecedentePilotage
Contenu précédente trame pilotage.
Definition: rov.h:104

◆ creerTramePilotage

void Rov::creerTramePilotage ( QString  deplacement)
slot

Crée les trames de pilotage.

Paramètres
deplacement

Définition à la ligne 229 du fichier rov.cpp.

Références communicationRov, DEBUT_TRAME_PILOTAGE, CommunicationRov::emettreTrame(), TRAME_PINCE_IMMOBILE, tramePilotage, tramePince, et tramePrecedentePilotage.

Référencé par initialiserEvenementManette().

230 {
231  tramePilotage = DEBUT_TRAME_PILOTAGE ";" + deplacement + "\r\n";
233  {
234  qDebug() << Q_FUNC_INFO << "tramePilotage :" << tramePilotage;
236  communicationRov->emettreTrame(tramePilotage);
237  }
238 }
CommunicationRov * communicationRov
Instance d&#39;un objet permettant la récupération des trames envoyé par la liaison série.
Definition: rov.h:98
QString tramePilotage
Contenu trame pilotage.
Definition: rov.h:103
QString tramePince
Contenu trame pince.
Definition: rov.h:106
#define TRAME_PINCE_IMMOBILE
Constante contenant la trame pince à zéro selon le protocole.
Definition: rov.h:65
int emettreTrame(QString trame)
Emet la trame vers le robot.
QString tramePrecedentePilotage
Contenu précédente trame pilotage.
Definition: rov.h:104
#define DEBUT_TRAME_PILOTAGE
Constante contenant le début de la trame pilotage selon le protocole.
Definition: rov.h:40

◆ creerTramePince

void Rov::creerTramePince ( QString  mouvementPince)
slot

Crée les trames de la pince.

Paramètres
mouvementPince

Définition à la ligne 250 du fichier rov.cpp.

Références communicationRov, DEBUT_TRAME_PINCE, CommunicationRov::emettreTrame(), TRAME_PILOTAGE_IMMOBILE, tramePince, tramePrecedentePilotage, et tramePrecedentePince.

Référencé par initialiserEvenementManette().

251 {
252  tramePince = DEBUT_TRAME_PINCE ";" + mouvementPince + "\r\n";
254  {
255  qDebug() << Q_FUNC_INFO << "tramePince :" << tramePince;
257  communicationRov->emettreTrame(tramePince);
258  }
259 }
CommunicationRov * communicationRov
Instance d&#39;un objet permettant la récupération des trames envoyé par la liaison série.
Definition: rov.h:98
#define DEBUT_TRAME_PINCE
Constante contenant le début de la trame pince selon le protocole.
Definition: rov.h:52
QString tramePince
Contenu trame pince.
Definition: rov.h:106
int emettreTrame(QString trame)
Emet la trame vers le robot.
QString tramePrecedentePince
Contenu précédente trame pince.
Definition: rov.h:107
#define TRAME_PILOTAGE_IMMOBILE
Constante contenant la trame pilotage à zéro selon le protocole.
Definition: rov.h:59
QString tramePrecedentePilotage
Contenu précédente trame pilotage.
Definition: rov.h:104

◆ decoderTrame

void Rov::decoderTrame ( QString  trame)
slot

Décode la trame réçue par le port série selon le protocole établie.

Paramètres
trame

Définition à la ligne 185 du fichier rov.cpp.

Références DEBUT_TRAME_CAPTEUR, DEBUT_TRAME_TELEMETRIE, decoderTrameCapteur(), et decoderTrameTelemetrie().

Référencé par initialiserEvenements().

186 {
187  QString trameTelemetrie, trameCapteur;
188 
189  QStringList trames = trame.split("\r\n");
190  qDebug() << Q_FUNC_INFO << "trame" << trames.size();
191  for(int i = 0; i < trames.size(); i++)
192  {
193  if(!trames[i].isEmpty())
194  {
195  if(trames[i].startsWith(DEBUT_TRAME_TELEMETRIE))
196  {
197  trameTelemetrie = trames[i];
198  decoderTrameTelemetrie(trameTelemetrie);
199  }
200  else if(trames[i].startsWith(DEBUT_TRAME_CAPTEUR))
201  {
202  trameCapteur = trames[i];
203  decoderTrameCapteur(trameCapteur);
204  }
205  }
206  else
207  {
208  qDebug() << Q_FUNC_INFO << "Trame inconnue !";
209  }
210  }
211 }
void decoderTrameCapteur(QString trameCapteur)
Décode la trame capteur reçue selon le protocole.
Definition: rov.cpp:88
#define DEBUT_TRAME_CAPTEUR
Constante contenant le début de la trame capteur selon le protocole.
Definition: rov.h:28
#define DEBUT_TRAME_TELEMETRIE
Constante contenant le début de la trame telemetrie selon le protocole.
Definition: rov.h:22
void decoderTrameTelemetrie(QString trameTelemetrie)
Décode la trame télémetrie reçue selon le protocole.
Definition: rov.cpp:82

◆ decoderTrameCapteur()

void Rov::decoderTrameCapteur ( QString  trameCapteur)
private

Décode la trame capteur reçue selon le protocole.

Paramètres
trameCapteur

Définition à la ligne 88 du fichier rov.cpp.

Références IHMRov::actualiserInformationsSeuils(), Campagne::ajouterMesure(), capteurs, Mesure::dateheure, enregistrerMesures(), IHMRov::getCampagne(), Mesure::humidite, ihmRov, Mesure::radiation, Capteurs::setHumidite(), Capteurs::setRadiation(), Capteurs::setTemperature(), et Mesure::temperature.

Référencé par decoderTrame().

89 {
90  QString temperature, humidite, radiation;
91 
92  temperature = QString::number(trameCapteur.section(";",1,1).toDouble()/10);
93  humidite = trameCapteur.section(";",2,2);
94  radiation = trameCapteur.section(";",3,3);
95 
96  capteurs->setTemperature(temperature);
97  capteurs->setHumidite(humidite);
98  capteurs->setRadiation(radiation);
99 
100  Mesure mesure;
101  mesure.dateheure = QDateTime::currentDateTime();
102  mesure.temperature = temperature;
103  mesure.humidite = humidite;
104  mesure.radiation = radiation;
105 
106  QDateTime date;
107 
108  ihmRov->getCampagne()->ajouterMesure(mesure);
110 
111  emit enregistrerMesures(temperature, humidite, radiation);
112 
113 }
QString temperature
Donnée temperature.
Definition: campagne.h:25
Capteurs * capteurs
Instance d&#39;un objet contenant les dernières informations issues des capteurs du rov.
Definition: rov.h:96
Campagne * getCampagne()
Retourne l&#39;objet campagne en cours.
Definition: ihmrov.cpp:432
QString humidite
Donnée humidité
Definition: campagne.h:24
void setHumidite(QString humidite)
Modifie la dernière information issue du capteur de humidité
Definition: capteurs.cpp:29
void setTemperature(QString temperature)
Modifie la dernière information issue du capteur de température.
Definition: capteurs.cpp:24
QString radiation
Donnée radiation.
Definition: campagne.h:26
void enregistrerMesures(QString temperature, QString humidite, QString radiation)
signal contenant les nouvelles mesures recus du robot (pour les enregistrer dans la BDD) ...
void actualiserInformationsSeuils()
Actualise les informations affichés des indicateur de dépassement des seuils acceptable.
Definition: ihmrov.cpp:389
structure permettant de définir les propriété d&#39;une mesure prise à une heure précise ...
Definition: campagne.h:21
IHMRov * ihmRov
Instance d&#39;un objet ihmRov permettant la connexion entre les autre classe associé aux rov et l&#39;ihm...
Definition: rov.h:95
void setRadiation(QString radiation)
Modifie la dernière information issue du capteur de radiation.
Definition: capteurs.cpp:34
QDateTime dateheure
Date/Heure.
Definition: campagne.h:23
void ajouterMesure(Mesure &mesure)
Ajoute une mesure dans le conteneur de mesure.
Definition: campagne.cpp:90

◆ decoderTrameTelemetrie()

void Rov::decoderTrameTelemetrie ( QString  trameTelemetrie)
private

Décode la trame télémetrie reçue selon le protocole.

Paramètres
trameTelemetrie

Définition à la ligne 82 du fichier rov.cpp.

Références capteurs, Capteurs::setAngle(), et Capteurs::setTelemetrie().

Référencé par decoderTrame().

83 {
84  capteurs->setTelemetrie(trameTelemetrie.section(";",1,1));
85  capteurs->setAngle(trameTelemetrie.section(";",2,2));
86 }
Capteurs * capteurs
Instance d&#39;un objet contenant les dernières informations issues des capteurs du rov.
Definition: rov.h:96
void setAngle(QString angle)
Modifie la dernière information issue du capteur de distance.
Definition: capteurs.cpp:39
void setTelemetrie(QString telemetrie)
Modifie la dernière information issue du capteur télémétrique.
Definition: capteurs.cpp:19

◆ demarrerCampagne()

bool Rov::demarrerCampagne ( )

Démarre la campagne.

Définition à la ligne 127 du fichier rov.cpp.

Références CAMERA_DEFAUT, campagneEnCours, Camera::creerNomCamera(), demarrerVideo(), dureeCampagne, et Camera::getNbCameras().

Référencé par IHMRov::gererCampagne().

128 {
129  qDebug() << Q_FUNC_INFO;
130  if(Camera::getNbCameras() > 0)
131  {
132  dureeCampagne.start();
133  QString nom = Camera::creerNomCamera(CAMERA_DEFAUT);
134  if(demarrerVideo(nom))
135  campagneEnCours = true;
136  }
137  return campagneEnCours;
138 }
QTime dureeCampagne
Timer lancer au début de la campagne.
Definition: rov.h:110
#define CAMERA_DEFAUT
Défini le numéro de la caméra par défaut.
Definition: camera.h:29
bool campagneEnCours
Etat de si une campagne est en cour.
Definition: rov.h:111
bool demarrerVideo(QString nomCamera, int choixResolution=-1)
Démarre un nouveau flux vidéo.
Definition: rov.cpp:165
static int getNbCameras()
Retourne le nombre de caméras connectés.
Definition: camera.cpp:271
static QString creerNomCamera(int numero)
Retourne le nom de caméra associé a son numéro.
Definition: camera.cpp:294

◆ demarrerVideo()

bool Rov::demarrerVideo ( QString  nomCamera,
int  choixResolution = -1 
)

Démarre un nouveau flux vidéo.

Paramètres
nomCamera
choixResolution

Définition à la ligne 165 du fichier rov.cpp.

Références camera, ihmRov, IHMRov::initialiserEvenementsCamera(), et IHMRov::modifieEtatCamera().

Référencé par IHMReglageVideo::activerCamera(), et demarrerCampagne().

166 {
167  qDebug() << Q_FUNC_INFO << "nomCamera" << nomCamera << "choixResolution" << choixResolution;
168  if(camera == nullptr)
169  {
170  camera = new Camera(this, nomCamera, choixResolution);
171  connect(camera, SIGNAL(nouvelleImage(QPixmap)), ihmRov, SLOT(afficherImage(QPixmap)));
173  camera->start();
174  ihmRov->modifieEtatCamera(true, nomCamera);
175  return true;
176  }
177  return false;
178 }
Camera * camera
Instance d&#39;un objet camera possedant les informations nécessaire à l&#39;affichage du flux vidéo...
Definition: rov.h:97
Class permettant de mettre en place une communication avec la camera.
Definition: camera.h:58
IHMRov * ihmRov
Instance d&#39;un objet ihmRov permettant la connexion entre les autre classe associé aux rov et l&#39;ihm...
Definition: rov.h:95
void modifieEtatCamera(bool etat, QString information)
Modifie l&#39;affichage de l&#39;état de la caméra.
Definition: ihmrov.cpp:576
void initialiserEvenementsCamera()
Initialise les événements liés à la caméra.
Definition: ihmrov.cpp:523

◆ detecterManette()

void Rov::detecterManette ( )
private

detecte les mannettes

Définition à la ligne 29 du fichier rov.cpp.

Références initialiserEvenementManette(), listeManettes, et manettes.

Référencé par Rov().

30 {
31  listeManettes = QGamepadManager::instance()->connectedGamepads();
32 
33  if (listeManettes.isEmpty())
34  {
35  qDebug() << Q_FUNC_INFO << "Aucune manette détectée !";
36  }
37  else
38  {
39  qDebug() << Q_FUNC_INFO << "Nombre de manettes" << listeManettes.size();
40  }
41 
42  for (auto m : listeManettes)
43  {
44  qDebug() << Q_FUNC_INFO << "-> Manette" << m;
45  Manette *manette = new Manette(m);
46  manettes.push_back(manette);
48  }
49 }
Classe permettant une communication entre le rov et la manette.
Definition: manette.h:210
void initialiserEvenementManette(Manette *manette)
Initialise les evenement de la manette.
Definition: rov.cpp:51
QList< int > listeManettes
Liste des mannettes connecté
Definition: rov.h:99
QVector< Manette * > manettes
Conteneur des manettes.
Definition: rov.h:100

◆ donneesTelemetrieDecode

void Rov::donneesTelemetrieDecode ( QString  donnes)
signal

signal contenant les nouvelle données de télémetrie (pour l'ihm)

Paramètres
donnes

◆ enregistrerMesures

void Rov::enregistrerMesures ( QString  temperature,
QString  humidite,
QString  radiation 
)
signal

signal contenant les nouvelles mesures recus du robot (pour les enregistrer dans la BDD)

Paramètres
temperature
humidite
radiation

Référencé par decoderTrameCapteur().

◆ getCamera()

Camera * Rov::getCamera ( )

Retourne l'objet caméra créée par le rov.

Renvoie
L'objet caméra créée par le rov

Définition à la ligne 148 du fichier rov.cpp.

Références camera.

Référencé par IHMReglageVideo::chargerListeCameraDisponible(), IHMReglageVideo::chargerListeResolutionDisponible(), IHMReglageVideo::initialiserEvenementsCamera(), et IHMReglageVideo::modifierEtatBoutons().

149 {
150  return camera;
151 }
Camera * camera
Instance d&#39;un objet camera possedant les informations nécessaire à l&#39;affichage du flux vidéo...
Definition: rov.h:97

◆ getCampagneEncours()

bool Rov::getCampagneEncours ( ) const

Retourne l'etat de la campagne.

Renvoie
l'etat de campagneEnCours (indiquant si la campagne est en cours ou pas)

Définition à la ligne 180 du fichier rov.cpp.

Références campagneEnCours.

Référencé par IHMRov::closeEvent().

181 {
182  return campagneEnCours;
183 }
bool campagneEnCours
Etat de si une campagne est en cour.
Definition: rov.h:111

◆ getCapteurs()

Capteurs * Rov::getCapteurs ( )

Retourne l'objet capteurs créée par le rov.

Renvoie
L'objet capteurs créée par le rov

Définition à la ligne 153 du fichier rov.cpp.

Références capteurs.

Référencé par IHMRov::actualiserInformations(), IHMRov::actualiserInformationsSeuils(), IHMRov::calculCoordonneesX(), et IHMRov::calculCoordonneesY().

154 {
155  return capteurs;
156 }
Capteurs * capteurs
Instance d&#39;un objet contenant les dernières informations issues des capteurs du rov.
Definition: rov.h:96

◆ getCommunicationRov()

CommunicationRov * Rov::getCommunicationRov ( )

Retourne l'objet communicationRov créée par le rov.

Renvoie
L'objet communicationRov créée par le rov

Définition à la ligne 293 du fichier rov.cpp.

Références communicationRov.

Référencé par IHMConfiguration::IHMConfiguration(), IHMConfiguration::modifieEtatBoutons(), et IHMConfiguration::modifierEtatPort().

294 {
295  return communicationRov;
296 }
CommunicationRov * communicationRov
Instance d&#39;un objet permettant la récupération des trames envoyé par la liaison série.
Definition: rov.h:98

◆ getManettes()

QVector< Manette * > Rov::getManettes ( )

Retourne le conteneur de manettes créée par le rov.

Renvoie
le conteneur de manettes créée par le rov

Définition à la ligne 298 du fichier rov.cpp.

Références manettes.

Référencé par IHMRov::IHMRov().

299 {
300  return manettes;
301 }
QVector< Manette * > manettes
Conteneur des manettes.
Definition: rov.h:100

◆ getTempsCampagne()

QString Rov::getTempsCampagne ( )

Retourne la durée de la campagne.

Renvoie
La durée de la campagne

Définition à la ligne 158 du fichier rov.cpp.

Références dureeCampagne, IHMRov::getCampagne(), Campagne::getDuree(), et ihmRov.

Référencé par IHMRov::actualiserInformations().

159 {
160  QTime duree(0,0);
161  QTime dureeMission = duree.addMSecs(dureeCampagne.elapsed() + ihmRov->getCampagne()->getDuree());
162  return dureeMission.toString("hh:mm:ss");
163 }
QTime dureeCampagne
Timer lancer au début de la campagne.
Definition: rov.h:110
Campagne * getCampagne()
Retourne l&#39;objet campagne en cours.
Definition: ihmrov.cpp:432
IHMRov * ihmRov
Instance d&#39;un objet ihmRov permettant la connexion entre les autre classe associé aux rov et l&#39;ihm...
Definition: rov.h:95
int getDuree() const
Retourne la durée de la campagne.
Definition: campagne.cpp:44

◆ initialiserEvenementManette()

void Rov::initialiserEvenementManette ( Manette manette)
private

Initialise les evenement de la manette.

Paramètres
manette

Définition à la ligne 51 du fichier rov.cpp.

Références creerTrameCamera(), creerTrameDeplacement(), creerTrameOrdre(), creerTramePilotage(), creerTramePince(), et ihmRov.

Référencé par detecterManette().

52 {
53  connect(manette, SIGNAL(creationTrameDeplacement(char, int, char)), this, SLOT(creerTrameDeplacement(char, int, char)));
54  connect(manette, SIGNAL(creationTramePilotage(QString)), this, SLOT(creerTramePilotage(QString)));
55  connect(manette, SIGNAL(creationTrameOrdre(QString)), this, SLOT(creerTrameOrdre(QString)));
56  connect(manette, SIGNAL(creationTramePince(QString)), this, SLOT(creerTramePince(QString)));
57  connect(manette, SIGNAL(nouvelleTrameCamera(QString,QString)), this, SLOT(creerTrameCamera(QString,QString)));
58 
59  connect(manette, SIGNAL(axisLeftXChanged(double)), manette, SLOT(changerAxeXJoystickGauche(double)));
60  connect(manette, SIGNAL(axisLeftYChanged(double)), manette, SLOT(changerAxeYJoystickGauche(double)));
61  connect(manette, SIGNAL(axisRightXChanged(double)), manette, SLOT(changerAxeXJoystickDroit(double)));
62  connect(manette, SIGNAL(axisRightYChanged(double)), manette, SLOT(changerAxeYJoystickDroit(double)));
63  connect(manette, SIGNAL(buttonL1Changed(bool)), manette, SLOT(changerBoutonHautGauche(bool)));
64  connect(manette, SIGNAL(buttonR1Changed(bool)), manette, SLOT(changerBoutonHautDroit(bool)));
65  connect(manette, SIGNAL(buttonL2Changed(double)), manette, SLOT(changerGachetteBasGauche(double)));
66  connect(manette, SIGNAL(buttonR2Changed(double)), manette, SLOT(changerGachetteBasDroit(double)));
67  connect(manette, SIGNAL(buttonUpChanged(bool)), manette, SLOT(changerFlecheEnAvant(bool)));
68  connect(manette, SIGNAL(buttonDownChanged(bool)), manette, SLOT(changerFlecheEnArriere(bool)));
69  connect(manette, SIGNAL(buttonLeftChanged(bool)), manette, SLOT(changerFlecheAGauche(bool)));
70  connect(manette, SIGNAL(buttonRightChanged(bool)), manette, SLOT(changerFlecheADroite(bool)));
71  connect(manette, SIGNAL(buttonAChanged(bool)), manette, SLOT(changerBoutonA(bool)));
72  connect(manette, SIGNAL(buttonBChanged(bool)), manette, SLOT(changerBoutonB(bool)));
73  connect(manette, SIGNAL(buttonXChanged(bool)), manette, SLOT(changerBoutonX(bool)));
74  connect(manette, SIGNAL(buttonYChanged(bool)), manette, SLOT(changerBoutonY(bool)));
75  connect(manette, SIGNAL(buttonSelectChanged(bool)), manette, SLOT(changerBoutonSelect(bool)));
76  connect(manette, SIGNAL(buttonGuideChanged(bool)), manette, SLOT(fermerApplication(bool)));
77  connect(manette, SIGNAL(buttonR3Changed(bool)), ihmRov, SLOT(capturerImage(bool)));
78 
79  connect(manette, SIGNAL(connectedChanged(bool)), ihmRov, SLOT(modifieEtatManette(bool)));
80 }
void creerTrameDeplacement(char deplacementAxeX, int puissance, char deplacementAxeY)
Crée les trames de déplacement.
Definition: rov.cpp:213
void creerTramePilotage(QString deplacement)
Crée les trames de pilotage.
Definition: rov.cpp:229
void creerTramePince(QString mouvementPince)
Crée les trames de la pince.
Definition: rov.cpp:250
IHMRov * ihmRov
Instance d&#39;un objet ihmRov permettant la connexion entre les autre classe associé aux rov et l&#39;ihm...
Definition: rov.h:95
void creerTrameOrdre(QString ordre)
Crée les trames d&#39;ordre.
Definition: rov.cpp:240
void creerTrameCamera(QString axeX, QString axeY)
Crée les trames de la caméra.
Definition: rov.cpp:261

◆ initialiserEvenements()

void Rov::initialiserEvenements ( )
private

Initialise le(s) Evenement(s)

Définition à la ligne 115 du fichier rov.cpp.

Références communicationRov, decoderTrame(), et ihmRov.

Référencé par Rov().

116 {
117  connect(communicationRov, SIGNAL(nouvelleTrame(QString)), this, SLOT(decoderTrame(QString)));
118  connect(communicationRov, SIGNAL(etatPortModifie(bool, QString)), ihmRov, SLOT(modifieEtatPortSerie(bool, QString)));
119 }
void decoderTrame(QString trame)
Décode la trame réçue par le port série selon le protocole établie.
Definition: rov.cpp:185
CommunicationRov * communicationRov
Instance d&#39;un objet permettant la récupération des trames envoyé par la liaison série.
Definition: rov.h:98
IHMRov * ihmRov
Instance d&#39;un objet ihmRov permettant la connexion entre les autre classe associé aux rov et l&#39;ihm...
Definition: rov.h:95

◆ modifierConfiguration()

void Rov::modifierConfiguration ( Configuration configuration)

Modifie la configuration de la communication.

Paramètres
configuration

Définition à la ligne 288 du fichier rov.cpp.

Références communicationRov, et CommunicationRov::setConfiguration().

Référencé par IHMConfiguration::modifierConfiguration().

289 {
290  communicationRov->setConfiguration(configuration);
291 }
CommunicationRov * communicationRov
Instance d&#39;un objet permettant la récupération des trames envoyé par la liaison série.
Definition: rov.h:98
void setConfiguration(Configuration maConfiguration)
Affecte a l&#39;objet CommunicationRov une configuration du port série virtuel.

◆ styleRadar

void Rov::styleRadar ( bool  etat)
signal

signale le style de Radar à afficher

Paramètres
etat

◆ supprimerManette()

void Rov::supprimerManette ( )
private

Supprime les manettes du conteneur des manettes.

Définition à la ligne 121 du fichier rov.cpp.

Références manettes.

Référencé par ~Rov().

122 {
123  for(int i=0;i<manettes.size();i++)
124  delete manettes[i];
125 }
QVector< Manette * > manettes
Conteneur des manettes.
Definition: rov.h:100

Documentation des données membres

◆ camera

Camera* Rov::camera
private

Instance d'un objet camera possedant les informations nécessaire à l'affichage du flux vidéo.

Définition à la ligne 97 du fichier rov.h.

Référencé par arreterVideo(), demarrerVideo(), et getCamera().

◆ campagneEnCours

bool Rov::campagneEnCours
private

Etat de si une campagne est en cour.

Définition à la ligne 111 du fichier rov.h.

Référencé par arreterCampagne(), demarrerCampagne(), et getCampagneEncours().

◆ capteurs

Capteurs* Rov::capteurs
private

Instance d'un objet contenant les dernières informations issues des capteurs du rov.

Définition à la ligne 96 du fichier rov.h.

Référencé par decoderTrameCapteur(), decoderTrameTelemetrie(), getCapteurs(), et Rov().

◆ communicationRov

CommunicationRov* Rov::communicationRov
private

Instance d'un objet permettant la récupération des trames envoyé par la liaison série.

Définition à la ligne 98 du fichier rov.h.

Référencé par creerTrameCamera(), creerTrameDeplacement(), creerTrameOrdre(), creerTramePilotage(), creerTramePince(), getCommunicationRov(), initialiserEvenements(), modifierConfiguration(), et Rov().

◆ dureeCampagne

QTime Rov::dureeCampagne
private

Timer lancer au début de la campagne.

Définition à la ligne 110 du fichier rov.h.

Référencé par arreterCampagne(), demarrerCampagne(), et getTempsCampagne().

◆ ihmRov

IHMRov* Rov::ihmRov
private

Instance d'un objet ihmRov permettant la connexion entre les autre classe associé aux rov et l'ihm.

Définition à la ligne 95 du fichier rov.h.

Référencé par arreterCampagne(), arreterVideo(), creerTrameDeplacement(), decoderTrameCapteur(), demarrerVideo(), getTempsCampagne(), initialiserEvenementManette(), et initialiserEvenements().

◆ listeManettes

QList<int> Rov::listeManettes
private

Liste des mannettes connecté

Définition à la ligne 99 du fichier rov.h.

Référencé par detecterManette().

◆ manettes

QVector<Manette*> Rov::manettes
private

Conteneur des manettes.

Définition à la ligne 100 du fichier rov.h.

Référencé par detecterManette(), getManettes(), et supprimerManette().

◆ trameDeplacement

QString Rov::trameDeplacement
private

Contenu trame déplacement.

Définition à la ligne 101 du fichier rov.h.

Référencé par creerTrameDeplacement().

◆ trameOrdre

QString Rov::trameOrdre
private

Contenu trame ordre.

Définition à la ligne 105 du fichier rov.h.

Référencé par creerTrameOrdre().

◆ tramePilotage

QString Rov::tramePilotage
private

Contenu trame pilotage.

Définition à la ligne 103 du fichier rov.h.

Référencé par creerTramePilotage().

◆ tramePince

QString Rov::tramePince
private

Contenu trame pince.

Définition à la ligne 106 du fichier rov.h.

Référencé par creerTrameOrdre(), creerTramePilotage(), et creerTramePince().

◆ tramePinceImmobile

QString Rov::tramePinceImmobile
private

Contenu trame pince à zéro.

Définition à la ligne 109 du fichier rov.h.

◆ tramePrecedenteCamera

QString Rov::tramePrecedenteCamera
private

Contenu précédente trame caméra.

Définition à la ligne 108 du fichier rov.h.

Référencé par creerTrameCamera().

◆ tramePrecedenteDeplacement

QString Rov::tramePrecedenteDeplacement
private

Contenu précédente trame déplacement.

Définition à la ligne 102 du fichier rov.h.

Référencé par creerTrameDeplacement().

◆ tramePrecedentePilotage

QString Rov::tramePrecedentePilotage
private

Contenu précédente trame pilotage.

Définition à la ligne 104 du fichier rov.h.

Référencé par creerTrameOrdre(), creerTramePilotage(), et creerTramePince().

◆ tramePrecedentePince

QString Rov::tramePrecedentePince
private

Contenu précédente trame pince.

Définition à la ligne 107 du fichier rov.h.

Référencé par creerTramePince().


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