From 2f1c3293d2c5776c4ecd9b2f1dce66492b15dbdd Mon Sep 17 00:00:00 2001 From: Dennis Brentjes Date: Wed, 31 Aug 2016 11:57:15 +0200 Subject: Split up the client and server parts in a separate network library --- libcmix-network/client.hpp | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 libcmix-network/client.hpp (limited to 'libcmix-network/client.hpp') diff --git a/libcmix-network/client.hpp b/libcmix-network/client.hpp new file mode 100644 index 0000000..2b6a6df --- /dev/null +++ b/libcmix-network/client.hpp @@ -0,0 +1,24 @@ +#pragma once + +#include +#include + +#include + +class Client { +public: + typedef std::function OnDoneFT; + typedef std::function)> MessageHandler; + +private: + boost::asio::ip::tcp::socket socket; + boost::asio::streambuf buffer; + OnDoneFT done; + +public: + Client(boost::asio::ip::tcp::socket&& socket); + + void handle_receive(MessageHandler message_handler, boost::system::error_code const& ec, size_t read_bytes); + void receive(MessageHandler message_handler); + void on_done(OnDoneFT f); +}; -- cgit v1.2.3-70-g09d2