implement dummy cli renderer for testing

This commit is contained in:
2022-04-26 22:16:06 +02:00
parent 14d0716607
commit 4df991650d
3 changed files with 132 additions and 19 deletions

View File

@@ -4,6 +4,7 @@
#include <cstdlib>
#include <future>
#include <iostream>
#include <sstream>
#include "protocol.hpp"
#include "spdlog/spdlog.h"
@@ -25,7 +26,8 @@ class fake_thread_pool {
class server {
public:
server(boost::asio::io_context& io_context, short port)
: socket_(io_context, udp::endpoint(udp::v4(), port)) {
: socket_(io_context, udp::endpoint(udp::v4(), port)),
renderer(std::make_unique<cli_renderer>(commons::screen_size)) {
do_receive();
}
@@ -38,8 +40,8 @@ class server {
std::shared_ptr<protocol::generic_message_base> msg_obj =
deserialize(data_.data(), bytes_recvd);
fake_thread_pool::add_task([msg_obj = std::move(msg_obj)]() {
msg_obj->handle_message();
fake_thread_pool::add_task([this, msg_obj = std::move(msg_obj)]() {
msg_obj->handle_message(renderer.get());
});
// do_send(bytes_recvd);
@@ -64,6 +66,8 @@ class server {
udp::endpoint sender_endpoint_;
enum { max_length = 1024 };
std::array<char, max_length> data_;
std::unique_ptr<render_interface> renderer;
};
} // namespace commons