This repository has been archived by the owner on Aug 13, 2018. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathSemestre.h
106 lines (93 loc) · 1.88 KB
/
Semestre.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
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
#ifndef SEMESTRE_H
#define SEMESTRE_H
#include "Saison.h"
/**
* @file Semestre.h
* @version 1
* @brief Ce fichier est le header de la classe semestre.
**/
/**
* @brief SemestreException class gere les exceptions de semestre.
*/
class SemestreException : public std::exception
{
protected :
std::string info;
public:
SemestreException(const std::string& i="") throw() :info(i) {}
const char* what() const throw()
{
return info.c_str();
}
~SemestreException()throw() {}
};
/**
* @brief Semestre class hérite de EntityStd
*/
class Semestre : public EntityStd
{
/**
* @brief code
*/
QString code;
/**
* @brief saison
*/
Saison saison;
/**
* @brief annee
*/
unsigned int annee;
public:
/**
* @brief getStrLabel
* @return retourne le code
*/
std::string getStrLabel() const
{
return code.toStdString();
}
/**
* @brief Semestre
* @param s saison
* @param a annee
*/
Semestre(Saison s, unsigned int a);
/**
* @brief getSaison getter de saison
* @return
*/
Saison getSaison() const { return saison; }
/**
* @brief getCode getter de code
* @return
*/
QString getCode() const { return code; }
/**
* @brief getAnnee getter de année
* @return
*/
unsigned int getAnnee() const { return annee; }
/**
* @brief destroy détruit proprement un Semestre
*/
void destroy();
};
/**
* @brief operator ==
* @param s1
* @param s2
* @return
*/
inline bool operator==(Semestre s1, Semestre s2)
{
return ((s1.getSaison()==s2.getSaison())&&(s1.getAnnee()==s2.getAnnee()));
}
/**
* @brief operator <<
* @param f
* @param s
* @return
*/
inline QTextStream& operator<<(QTextStream& f, const Semestre& s) { return f<<s.getSaison().getNom()<<s.getAnnee()%100; }
#endif // SEMESTRE_H