openmw-tes3coop/apps/netlauncher/NetController.hpp

42 lines
1,007 B
C++
Raw Normal View History

2017-01-11 14:04:53 +00:00
//
// Created by koncord on 07.01.17.
//
#ifndef NEWLAUNCHER_NETCONTROLLER_HPP
#define NEWLAUNCHER_NETCONTROLLER_HPP
#include "ServerModel.hpp"
#include "netutils/HTTPNetwork.hpp"
#include "netutils/Utils.hpp"
struct ServerModel;
class NetController
{
public:
static NetController *get();
static void Create(std::string addr, unsigned short port);
2017-01-11 14:04:53 +00:00
static void Destroy();
void updateInfo(QAbstractItemModel *pModel, QModelIndex index= QModelIndex());
void updateInfo();
QStringList players();
QStringList plugins();
void selectServer(ServerData *pServerData);
ServerData *selectedServer();
protected:
NetController(std::string addr, unsigned short port);
2017-01-11 14:04:53 +00:00
~NetController();
private:
NetController(const NetController &controller);
void downloadInfo(QAbstractItemModel *pModel, QModelIndex index);
static NetController *mThis;
ServerData *sd;
HTTPNetwork httpNetwork;
ServerExtendedData sed;
};
#endif //NEWLAUNCHER_NETCONTROLLER_HPP