From 1a2299a70280867b93fde4050833d4bd2b419884 Mon Sep 17 00:00:00 2001 From: "Claudius \"keldu\" Holeksa" Date: Mon, 15 Apr 2024 20:43:48 +0200 Subject: nix,io_codec: Fixing old streaming peer code --- modules/io_codec/c++/SConscript | 8 +++---- modules/io_codec/c++/io_peer.hpp | 46 ++++++++++++++++++---------------------- 2 files changed, 25 insertions(+), 29 deletions(-) (limited to 'modules/io_codec/c++') diff --git a/modules/io_codec/c++/SConscript b/modules/io_codec/c++/SConscript index 2a277cb..7dc7ada 100644 --- a/modules/io_codec/c++/SConscript +++ b/modules/io_codec/c++/SConscript @@ -21,18 +21,18 @@ env.headers += io_env.headers; ## Shared lib objects_shared = [] io_env.add_source_files(objects_shared, io_env.sources, shared=True); -io_env.library_shared = io_env.SharedLibrary('#build/forstio-io_codec', [objects_shared]); +env.library_shared = io_env.SharedLibrary('#build/forstio-io_codec', [objects_shared]); ## Static lib objects_static = [] io_env.add_source_files(objects_static, io_env.sources, shared=False); -io_env.library_static = io_env.StaticLibrary('#build/forstio-io_codec', [objects_static]); +env.library_static = io_env.StaticLibrary('#build/forstio-io_codec', [objects_static]); # Set Alias -env.Alias('library_io_codec', [io_env.library_shared, io_env.library_static]); +env.Alias('library_io_codec', [env.library_shared, env.library_static]); env.targets += ['library_io_codec']; # Install -env.Install('$prefix/lib/', [io_env.library_shared, io_env.library_static]); +env.Install('$prefix/lib/', [env.library_shared, env.library_static]); env.Install('$prefix/include/forstio/io_codec/', [io_env.headers]); diff --git a/modules/io_codec/c++/io_peer.hpp b/modules/io_codec/c++/io_peer.hpp index a92e236..8ba6ee1 100644 --- a/modules/io_codec/c++/io_peer.hpp +++ b/modules/io_codec/c++/io_peer.hpp @@ -2,14 +2,13 @@ #include #include -#include -#include +#include +#include namespace saw { -template , - typename OutContainer = message_container, +template class streaming_io_peer { public: @@ -17,14 +16,14 @@ public: * Constructor with the option to provide a custom codec, in and out buffer */ streaming_io_peer( - own>> feed, - own stream, Codec codec, BufferT in, BufferT out); + own>> feed, + own stream, codec codec, BufferT in, BufferT out); /** * Constructor */ streaming_io_peer( - own>> feed, + own>> feed, own stream); /** @@ -36,47 +35,46 @@ public: /** * Send a message to the remote peer */ - error_or send(heap_message_root builder); + error_or send(data builder); /** * A phantom conveyor feeder. Meant for interfacing with other components */ - conveyor_feeder> &feeder(); + conveyor_feeder> &feeder(); conveyor on_read_disconnected(); private: /// @unimplemented class peer_conveyor_feeder final - : public conveyor_feeder> { + : public conveyor_feeder> { public: peer_conveyor_feeder( - streaming_io_peer &peer_) + streaming_io_peer &peer_) : peer_{peer_} {} - void feed(heap_message_root &&data) override { - (void)data; + void feed(data &&data_) override { + (void)data_; } - void fail(error &&error) override { (void)error; } + void fail(error &&err) override { (void)err; } size_t space() const override { return 0; } size_t queued() const override { return 0; } private: - streaming_io_peer &peer_; }; private: - own>> + own>> incoming_feeder_ = nullptr; own io_stream_; - Codec codec_; + codec codec_; BufferT in_buffer_; BufferT out_buffer_; @@ -91,13 +89,11 @@ private: * Setup new streaming io peer with the provided network protocols. * This is a convenience wrapper intended for a faster setup of this class */ -template , - typename OutContainer = message_container, +template -std::pair>, - conveyor>> +std::pair>, + conveyor>> new_streaming_io_peer(own stream); } // namespace saw -- cgit v1.2.3