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
|
/*
* global.h
*
* Created on: 29.01.2013
* Author: sr
*/
#ifndef GLOBAL_H_
#define GLOBAL_H_
#include <QString>
#include <QByteArray>
#include <QMap>
#include <QPair>
#include <QSettings>
#include <QPoint>
#include <QSize>
#include <QList>
#include <QSharedPointer>
struct Room {
Room(QMap<QString, QPoint> cPos, QSize grid, QSize client, QString image, QString tutor) :
clientPositions(cPos),
gridSize(grid),
clientSize(client),
imagePath(image),
tutorIP(tutor) {};
QMap<QString, QPoint> clientPositions;
QSize gridSize;
QSize clientSize;
QString imagePath;
QString tutorIP;
};
class Global
{
private:
Global() {}
~Global() {}
static QString _sessionName;
static QByteArray _sessionNameArray;
static QMap<QString, Room*> _rooms;
static QString _currentRoom;
static bool _isExam;
static QString _iniPath;
public:
static const QString& sessionName() { return Global::_sessionName; }
static const QByteArray& sessionNameArray() { return Global::_sessionNameArray; }
static void setSessionName(const QString& name);
static void setSessionName();
static bool manager_only;
static void setRooms(const QMap<QString, Room*> & roomList);
static const QMap<QString, Room*> & getRooms()
{
return _rooms;
}
static void setIniPath(QString s) {_iniPath = s;};
static QString getIniPath() { return _iniPath; };
static QSharedPointer<QSettings> getSettings();
static bool isExam() { return _isExam; }
static void setExam(bool b) { _isExam = b; }
static void setCurrentRoom(QString room);
static const QString& getCurrentRoomName() { return _currentRoom; }
/* returns a pointer to the current room or a pointer to the constant "defaultRoom".
* (NEVER returns NULL or undefined) */
static const Room* getCurrentRoom();
};
#endif /* GLOBAL_H_ */
|