1
0
mirror of https://github.com/ncblakely/GiantsTools synced 2024-07-08 14:01:45 +02:00
GiantsTools/Sdk/Include/Network/Public/IGiantsApiClient.h

22 lines
766 B
C
Raw Normal View History

2020-09-22 07:30:26 +02:00
#pragma once
#include <json/json.hpp>
2021-01-24 00:40:09 +01:00
#include "PlayerInfoResponse.h"
#include "ServerInfoResponse.h"
2020-09-22 07:30:26 +02:00
typedef std::future<std::vector<ServerInfoResponse>> ServerInfoFuture;
// {EE129A81-0A86-49C4-8D23-A771A7350952}
inline const GUID IID_IGiantsApiClient = { 0xee129a81, 0xa86, 0x49c4, 0x8d, 0x23, 0xa7, 0x71, 0xa7, 0x35, 0x9, 0x52 };
2021-01-24 00:40:09 +01:00
DEFINE_SERVICE("{EE129A81-0A86-49C4-8D23-A771A7350952}", IGiantsApiClient)
2020-09-22 07:30:26 +02:00
{
virtual ~IGiantsApiClient() = default;
2021-01-24 00:40:09 +01:00
virtual void DeleteServerInformationAsync(tstring_view gameName, int hostPort) = 0;
virtual ServerInfoFuture GetServerInformationAsync() = 0;
virtual void PostServerInformationAsync(const nlohmann::json& requestBody) = 0;
2020-09-22 07:30:26 +02:00
};
struct DECLSPEC_UUID("{EE129A81-0A86-49C4-8D23-A771A7350952}") IGiantsApiClient;