1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677 |
- /*
- GNU General Public License version 3 notice
- Copyright (C) 2012 Mihawk <luiz@netdome.biz>. All rights reserved.
- This program is free software: you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation, either version 3 of the License, or
- (at your option) any later version.
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
- You should have received a copy of the GNU General Public License
- along with this program. If not, see < http://www.gnu.org/licenses/ >.
- */
- #ifndef ACTIVECLIENT_H
- #define ACTIVECLIENT_H
- #include <QObject>
- #include <QString>
- #include "ServerQuery.h"
- class QHostAddress;
- class QTimer;
- class QTime;
- class Client;
- class App;
- class ActiveClient: public QObject
- {
- Q_OBJECT
- public:
- ActiveClient(App* app, QObject *parent = 0);
- virtual ~ActiveClient();
- Client* client();
- void run();
- void setAddress(const QHostAddress &address, quint16 port);
- const QString serverAddressString();
- quint8 playerCount() const;
- void setReplyHash(const QString& hash); //this activates the 5 seconds reply timer too
- const QString& replyHash() const;
- void incrementReplyCounters(int userCount, int channelCount, int playerCount, int serverCount);
- bool isWaitingReply() const;
- private slots:
- void queryFinished();
- void queryError(ServerQuery::Error err);
- private:
- App* myApp;
- Client* myClient;
- ServerQuery* myQuery;
- QTime* myDisconnectTime;
- /* Count server reply while timer is active */
- QString myReplyHash;
- QTimer* myBroadcastReplyTimer;
- QTimer* myQueryTimer;
- quint32 myQueryInterval;
- int myUniqueUserCount;
- int myUniqueChannelCount;
- int myUniqueServerCount;
- int myUniquePlayerCount;
- bool myReplyTimerWasActive;
- };
- #endif // ACTIVECLIENT_H
|