-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathlogsystem.h
69 lines (59 loc) · 1.68 KB
/
logsystem.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
#ifndef LOGSYSTEM_H
#define LOGSYSTEM_H
#include <QTextStream>
#include <QFile>
#include <iostream>
#include <QString>
#include <sstream>
/*!
* \file logsystem.h
* \author Letellier/Yassine
* \brief Gestion de messages log
* \details Les classes permettent de creer des messages relatifs à l'execution de l'application
* et de les afficher en console et dans un fichier relatif pour l'historique
*
*/
/*! \class LogMessage
* \brief Classe de message log pour garder une trace de l'execution
*
*/
class LogMessage
{
QString log;/*!< Message à transmettre*/
unsigned int imp;/*!< Degree d'importance du message*/
public:
/*!
* \brief Constructeur
*
* Constructeur de la classe LogMessage
* \param str chaine de caractere servant à l'initialisation de l'attribut log
* \param d entier servant à l'initialisation du degree du message imp
*/
LogMessage(const std::string& str,unsigned int d);
/*!
* \brief getLog
* Methode retournant le message formaté avec la chaine de caractère et le degré d'importance
* \return la chaine de caractère concatenant les deux informations: importance et signalisation de l'action effectuee
*
*/
QString getLog()const{
std::stringstream str;
str<<"("<<imp<<")";
return QString(str.str().c_str()+log);
}
};
/*! \class LogSystem
* \brief Classe permettant la recuperation du message et son affichage dans la console ou son impression dans un fichier
*
*/
class LogSystem
{
public:
/*!
* \brief imprim
* Methode static imprimant le message
* \param mes Message à imprimer
*/
static void imprim(const LogMessage& mes);
};
#endif // LOGSYSTEM_H