20 #ifndef ICEMON_HOSTINFO_H
21 #define ICEMON_HOSTINFO_H
27 #include <QtCore/QVector>
32 explicit HostInfo(
unsigned int id = 0);
34 unsigned int id()
const {
return mId; }
36 void setName(
const QString &name) { mName = name; }
37 QString name()
const {
return mName; }
39 void setColor(
const QColor &color) { mColor = color; }
40 QColor color()
const {
return mColor; }
42 void setIp(
const QString &ip) { mIp = ip; }
43 QString ip()
const {
return mIp; }
45 void setPlatform(
const QString &platform) { mPlatform = platform; }
46 QString platform()
const {
return mPlatform; }
48 void setMaxJobs(
unsigned int jobs) { mMaxJobs = jobs; }
49 unsigned int maxJobs()
const {
return mMaxJobs; }
50 void incJobs() { mNumJobs++; }
51 void decJobs() {
if (mNumJobs) mNumJobs--; }
52 unsigned int numJobs()
const {
return mNumJobs; }
54 void setOffline(
bool offline) { mOffline = offline; }
55 bool isOffline()
const {
return mOffline; }
57 void setNoRemote(
bool noRemote) { mNoRemote = noRemote; }
58 bool noRemote()
const {
return mNoRemote; }
60 typedef QMap<QString, QString> StatsMap;
61 void updateFromStatsMap(
const StatsMap &stats);
63 static void initColorTable();
64 static QString colorName(
const QColor &);
66 void setServerSpeed(
float serverSpeed) { mServerSpeed = serverSpeed; }
67 float serverSpeed()
const {
return mServerSpeed; }
69 void setServerLoad(
unsigned int load) { mServerLoad = load; }
70 unsigned int serverLoad()
const {
return mServerLoad; }
72 void setProtocol(
unsigned int protocol) { mProtocol = protocol; }
73 int protocol()
const {
return mProtocol; }
75 void setFeatures(
const QString& features) { mFeatures = features; }
76 QString features()
const {
return mFeatures; }
78 QString toolTip()
const;
80 bool operator==(
const HostInfo &rhs)
const {
return mId == rhs.mId; }
81 bool operator!=(
const HostInfo &rhs)
const {
return mId != rhs.mId; }
82 int operator<(
const HostInfo &rhs)
const {
return mId < rhs.mId; }
87 static void initColor(
const QString &value,
const QString &name);
90 QColor createColor(
const QString &name);
100 unsigned int mMaxJobs = 0;
101 unsigned int mNumJobs = 0;
102 bool mOffline =
false;
103 bool mNoRemote =
true;
107 float mServerSpeed = 0.0;
108 unsigned int mServerLoad = 0;
110 static QVector<QColor> mColorTable;
111 static QMap<int, QString> mColorNameMap;
123 HostInfo *find(
unsigned int hostid)
const;
125 typedef QMap<unsigned int, HostInfo *> HostMap;
127 HostMap hostMap()
const;
129 void checkNode(
const HostInfo &info);
130 HostInfo *checkNode(
unsigned int hostid,
131 const HostInfo::StatsMap &statmsg);
133 QString nameForHost(
unsigned int id)
const;
134 QColor hostColor(
unsigned int id)
const;
135 unsigned int maxJobs(
unsigned int id)
const;
137 QString schedulerName()
const {
return mSchedulerName; }
138 void setSchedulerName(
const QString &schedulerName);
139 QString networkName()
const {
return mNetworkName; }
140 void setNetworkName(
const QString &networkName);
143 void hostMapChanged();
147 QString mSchedulerName;
148 QString mNetworkName;
Definition: fakemonitor.h:33
Definition: hostinfo.h:114
Definition: hostinfo.h:29