Wismas  1.1
BTS SN-IR La Salle Avignon 2017
Connecteurs publics | Signaux | Fonctions membres publiques | Attributs privés
Référence de la classe Camera

Déclaration des paramètres des caméras.

#include <camera.h>

Graphe de collaboration de Camera:
Collaboration graph
[légende]

Liste de tous les membres

Connecteurs publics

void enregistrer ()
 Diffuse des messages dans le journal.
void arreter ()
 Démarre l'enregistrement de la vidéo lorsque le timer arrive à 0.
void progresser (int pct)
void terminer ()

Signaux

void fini (QString)
void progression (int pas)
 envoie le signal au slot terminer
void journaliser (QString)
 envoie le signal au slot progresser(int) qui va envoyer la valeur de la barre de progression calculé par la méthode video::progresser(int) à la progressBar

Fonctions membres publiques

 Camera (ParametresCamera parametresCamera, QString couleur, QObject *parent=0)
 ~Camera ()
void setResolution (int resolution)
void setRate (int rate)
 Permet de définir la résolution.
void setDuree (int duree)
 Permet de définir la fréquence d'images/seconde.
void setPeriode (int periode)
 Permet de définir la durée de l'enregistrement en secondes.

Attributs privés

ParametresCamera parametresCamera
 Permet de définir la période entre deux enregistrements en secondes.
Videovideo
QString couleur
BaseDeDonneesbdd

Documentation des constructeurs et destructeur

Camera::Camera ( ParametresCamera  parametresCamera,
QString  couleur,
QObject *  parent = 0 
) [explicit]

Références bdd, ParametresCamera::chemin, BaseDeDonnees::connecter(), couleur, ParametresCamera::extension, ParametresCamera::fichier, fini(), BaseDeDonnees::getInstance(), ParametresCamera::nom, parametresCamera, progresser(), terminer(), ParametresCamera::url, et video.

                                                                                  : QObject(parent)
{
    this->parametresCamera = parametresCamera;
    this->couleur = couleur;
    bdd = BaseDeDonnees::getInstance();
    bdd->connecter();

    qDebug() << Q_FUNC_INFO << this->parametresCamera.nom << QString::fromUtf8("url=%1 chemin=%2 prefixe=%3 extension=%4").arg(this->parametresCamera.url).arg(this->parametresCamera.chemin).arg(this->parametresCamera.fichier).arg(this->parametresCamera.extension);

    video = new Video(this, this->parametresCamera.nom, this->parametresCamera.url, this->parametresCamera.chemin, this->parametresCamera.fichier, this->parametresCamera.extension);
    connect(video, SIGNAL(progress(int)), this, SLOT(progresser(int)));
    connect(video, SIGNAL(fini()), this, SLOT(terminer()));
}

Documentation des fonctions membres

void Camera::arreter ( ) [slot]

Références Video::arreter(), couleur, journaliser(), ParametresCamera::nom, parametresCamera, et video.

{
    video->arreter();
    emit journaliser(QString::fromUtf8("<b><font color=%1>Arrêt caméra %2</font></b>").arg(couleur).arg(parametresCamera.nom));    
}
void Camera::enregistrer ( ) [slot]

Références Video::acquerir(), couleur, ParametresCamera::duree, Video::getFichier(), journaliser(), ParametresCamera::nom, parametresCamera, et video.

{
    QString fichier = video->getFichier();
    fichier.remove(0, 8); // retire le préfixe "file/ts:"
    emit journaliser(QString::fromUtf8("<b><font color=%1>Démarrage enregistrement caméra %2 (durée %3 s) : %4</font></b>").arg(couleur).arg(parametresCamera.nom).arg(parametresCamera.duree/1000.).arg(fichier));
    video->acquerir(parametresCamera.duree);
}
void Camera::fini ( QString  ) [signal]

Référencé par Camera(), et terminer().

void Camera::journaliser ( QString  ) [signal]

Référencé par arreter(), enregistrer(), et terminer().

void Camera::progresser ( int  pct) [slot]

Références progression().

Référencé par Camera().

{
    emit progression(pct);
}
void Camera::progression ( int  pas) [signal]

Référencé par progresser(), et terminer().

void Camera::setDuree ( int  duree)

défini la durée de l'enregistrement

Références ParametresCamera::duree, et parametresCamera.

{
    this->parametresCamera.duree = duree;
}
void Camera::setPeriode ( int  periode)

défini la période entre chaque enregistrement

Références parametresCamera, et ParametresCamera::periode.

{
    this->parametresCamera.periode = periode;
}
void Camera::setRate ( int  rate)

défini la fréquence d'images

Références parametresCamera, et ParametresCamera::rate.

{
    this->parametresCamera.rate = rate;
}
void Camera::setResolution ( int  resolution)

défini la résolution

Références parametresCamera, et ParametresCamera::resolution.

{
    this->parametresCamera.resolution = resolution;
}
void Camera::terminer ( ) [slot]

Références bdd, couleur, BaseDeDonnees::executer(), ParametresCamera::extension, ParametresCamera::fichier, fini(), Video::getFichier(), ParametresCamera::idSite, journaliser(), ParametresCamera::nom, parametresCamera, progression(), ParametresCamera::resolution, et video.

Référencé par Camera().

{
    QString fichier = video->getFichier();
    fichier.remove(0, 8); // retire le préfixe "file/ts:"
    emit journaliser(QString::fromUtf8("<b><font color=%1>Fin enregistrement caméra %2 : %3</font></b>").arg(couleur).arg(parametresCamera.nom).arg(fichier));
    emit fini(parametresCamera.nom);
    emit progression(0);

    bool retour;
    QString requete;
    QString nom = parametresCamera.nom;
    QString chemin = "/media/NFS";
    QString prefixe = parametresCamera.fichier;
    QString extension = parametresCamera.extension;
    QString etat = "1";
    QString largeur;
    QString hauteur;
    if(parametresCamera.resolution == 32)
    {
        largeur = "640";
        hauteur = "480";
    }
    else
    {
        largeur = "320";
        hauteur = "240";
    }
    QString idSite = parametresCamera.idSite;
    //qDebug() << largeur << " : largeur" << endl << hauteur << " : hauteur " << endl;

    requete = "INSERT INTO cameras (nom, chemin, prefixe, extension, etat, largeur, hauteur, idSite) VALUES('" + nom + "', '" + chemin + "', '" + prefixe + "', '" + extension + "', '" + etat + "', '" + largeur + "', '" + hauteur + "', '" + idSite + "')";
    qDebug() << QString::fromUtf8("requête : ") << requete;
    retour = bdd->executer(requete);
    if(retour == false)
        qDebug() << QString::fromUtf8("erreur insertion !");
}

Documentation des données membres

Référencé par Camera(), et terminer().

QString Camera::couleur [private]

Référencé par arreter(), Camera(), enregistrer(), et terminer().

Video* Camera::video [private]

Référencé par arreter(), Camera(), enregistrer(), et terminer().


La documentation de cette classe a été générée à partir des fichiers suivants :
 Tout Classes Fichiers Fonctions Variables Définitions de type Macros