mirror of
https://github.com/MaSzyna-EU07/maszyna.git
synced 2026-03-22 15:05:03 +01:00
work
This commit is contained in:
@@ -3,15 +3,23 @@
|
||||
#include <memory>
|
||||
#include <functional>
|
||||
#include <optional>
|
||||
#include <queue>
|
||||
#include <chrono>
|
||||
#include "network/message.h"
|
||||
#include "command.h"
|
||||
|
||||
namespace network
|
||||
{
|
||||
class connection : public std::enable_shared_from_this<connection>
|
||||
{
|
||||
private:
|
||||
void message_received(message &msg);
|
||||
void send_message(message &msg);
|
||||
void message_received(std::shared_ptr<message> &msg);
|
||||
std::queue<
|
||||
std::pair<std::chrono::high_resolution_clock::time_point,
|
||||
std::shared_ptr<delta_message>>> delta_queue;
|
||||
|
||||
//std::chrono::high_resolution_clock::time_point last_time;
|
||||
//double accum = -1.0;
|
||||
|
||||
protected:
|
||||
virtual void disconnect() = 0;
|
||||
@@ -20,16 +28,27 @@ namespace network
|
||||
void data_received(std::string &buffer);
|
||||
|
||||
public:
|
||||
void send_message(std::shared_ptr<message> msg);
|
||||
virtual void connected();
|
||||
|
||||
std::tuple<double, command_queue::commanddatasequence_map> get_next_delta();
|
||||
};
|
||||
|
||||
class server
|
||||
{
|
||||
protected:
|
||||
std::vector<std::shared_ptr<connection>> clients;
|
||||
|
||||
public:
|
||||
void push_delta(double dt, command_queue::commanddatasequence_map commands);
|
||||
};
|
||||
|
||||
class client
|
||||
{
|
||||
protected:
|
||||
std::shared_ptr<connection> conn;
|
||||
|
||||
public:
|
||||
std::tuple<double, command_queue::commanddatasequence_map> get_next_delta();
|
||||
};
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user