From 4fdfa202eef2419a9f043cd45a3075d6b5e3063f Mon Sep 17 00:00:00 2001 From: Claudius 'keldu' Holeksa Date: Wed, 21 Aug 2024 18:01:16 +0200 Subject: Pulling out Storage template --- modules/codec-netcdf/c++/netcdf.hpp | 10 +++++----- modules/codec/c++/data.hpp | 2 +- modules/remote-sycl/c++/rpc.hpp | 4 ++-- modules/remote-sycl/c++/transfer.hpp | 24 ++++++++++++------------ modules/remote/c++/remote.hpp | 26 +++++++++++++------------- modules/remote/c++/remote_loopback.hpp | 20 ++++++++++---------- modules/remote/c++/remote_loopback_base.hpp | 8 ++++---- 7 files changed, 47 insertions(+), 47 deletions(-) diff --git a/modules/codec-netcdf/c++/netcdf.hpp b/modules/codec-netcdf/c++/netcdf.hpp index e89928d..f93eceb 100644 --- a/modules/codec-netcdf/c++/netcdf.hpp +++ b/modules/codec-netcdf/c++/netcdf.hpp @@ -19,7 +19,7 @@ struct Netcdf {}; * Class representing the files system netcdf file */ template -class data { +class data { private: std::vector buff_; public: @@ -44,7 +44,7 @@ public: }; template -class codec{ +class codec{ static_assert(always_false, "NetCDF only supports Structs as a root object"); }; @@ -53,7 +53,7 @@ class codec{ namespace saw { template -class codec...>, encode::Netcdf, storage::Default> { +class codec...>, encode::Netcdf> { private: using Schema = schema::Struct...>; public: @@ -69,7 +69,7 @@ public: * Encoder function */ template - error_or encode(const data& from, data& to) { + error_or encode(const data& from, data& to) { int rc{}; int ncid{}; @@ -131,7 +131,7 @@ public: * Decoder function */ template - error_or decode(data& from_decode, data& to_decode) { + error_or decode(data& from_decode, data& to_decode) { int ncid{}; int rc{}; diff --git a/modules/codec/c++/data.hpp b/modules/codec/c++/data.hpp index 11d94e6..77edf8e 100644 --- a/modules/codec/c++/data.hpp +++ b/modules/codec/c++/data.hpp @@ -27,7 +27,7 @@ struct Native { }; } -template +template class codec; /* * Helper for the basic message container, so the class doesn't have to be diff --git a/modules/remote-sycl/c++/rpc.hpp b/modules/remote-sycl/c++/rpc.hpp index 65e2df5..da2eeaa 100644 --- a/modules/remote-sycl/c++/rpc.hpp +++ b/modules/remote-sycl/c++/rpc.hpp @@ -10,8 +10,8 @@ namespace saw { /** * Remote data class for the Sycl backend. */ -template -class remote_data final { +template +class remote_data final { private: /** * An identifier to the data being held on the remote diff --git a/modules/remote-sycl/c++/transfer.hpp b/modules/remote-sycl/c++/transfer.hpp index a7f1b53..e39165b 100644 --- a/modules/remote-sycl/c++/transfer.hpp +++ b/modules/remote-sycl/c++/transfer.hpp @@ -88,9 +88,9 @@ public: * Get data which we will store. */ template - error_or send(const data& dat, id store_id){ + error_or send(const data& dat, id store_id){ auto& vals = std::get>>(values_); - auto eoval = device_->template copy_to_device(dat); + auto eoval = device_->template copy_to_device(dat); if(eoval.is_error()){ auto& err = eoval.get_error(); return std::move(err); @@ -108,9 +108,9 @@ public: } template - error_or allocate(const data::MetaSchema, Encoding, storage::Default>& dat, id store_id){ - auto& vals = std::get>>(values_); - auto eoval = device_->template allocate_on_device(dat); + error_or allocate(const data::MetaSchema, Encoding>& dat, id store_id){ + auto& vals = std::get>>>(values_); + auto eoval = device_->template allocate_on_device(dat); if(eoval.is_error()){ auto& err = eoval.get_error(); return std::move(err); @@ -132,14 +132,14 @@ public: */ template error_or> receive(id store_id){ - auto& vals = std::get>>(values_); + auto& vals = std::get>>>(values_); auto find_res = vals.find(store_id.get_value()); if(find_res == vals.end()){ return make_error(); } auto& dat = find_res->second; - auto eoval = device_->template copy_to_host(dat); + auto eoval = device_->template copy_to_host(dat); return eoval; } @@ -148,7 +148,7 @@ public: */ template error_or erase(id store_id){ - auto& vals = std::get>>(values_); + auto& vals = std::get>>(values_); auto erase_op = vals.erase(store_id.get_value()); if(erase_op == 0u){ return make_error(); @@ -161,8 +161,8 @@ public: * Insert operations may invalidate the pointer. */ template - error_or*> find(id store_id){ - auto& vals = std::get>>(values_); + error_or>*> find(id store_id){ + auto& vals = std::get>>(values_); auto find_res = vals.find(store_id.get_value()); if(find_res == vals.end()){ return make_error(); @@ -200,7 +200,7 @@ public: * Send data to the remote. */ template - error_or> send(const data& dat){ + error_or> send(const data& dat){ id dat_id{next_id_}; auto eov = srv_->send(dat, dat_id); if(eov.is_error()){ @@ -216,7 +216,7 @@ public: * Receive data */ template - conveyor> receive(id dat_id){ + conveyor> receive(id dat_id){ auto eov = srv_->receive(dat_id); if(eov.is_error()){ auto& err = eov.get_error(); diff --git a/modules/remote/c++/remote.hpp b/modules/remote/c++/remote.hpp index 571a4e7..807213e 100644 --- a/modules/remote/c++/remote.hpp +++ b/modules/remote/c++/remote.hpp @@ -14,13 +14,13 @@ namespace saw { /** * This class acts as a helper for rpc calls and representing data on the remote. */ -template +template class data_or_id { private: /** * Variant representing the either id or data class. */ - std::variant, data> doi_; + std::variant, data> doi_; public: /** * Constructor for instantiating. @@ -32,7 +32,7 @@ public: /** * Constructor for instantiating. */ - data_or_id(data val): + data_or_id(data val): doi_{std::move(val)} {} @@ -47,7 +47,7 @@ public: * Check if this class holds data. */ bool is_data() const { - return std::holds_alternative>(doi_); + return std::holds_alternative>(doi_); } /** @@ -60,15 +60,15 @@ public: /** * Return a data reference. */ - data& get_data(){ - return std::get>(doi_); + data& get_data(){ + return std::get>(doi_); } /** * Return a data reference. */ - const data& get_data() const { - return std::get>(doi_); + const data& get_data() const { + return std::get>(doi_); } }; @@ -76,21 +76,21 @@ public: /** * Representing data on the remote */ -template +template class remote_data; -template +template class rpc_client; /** * Implementation of a remote server on the backend */ -template +template class rpc_server { private: - interface iface_; + interface iface_; public: - rpc_server(interface iface): + rpc_server(interface iface): iface_{std::move(iface)} {} }; diff --git a/modules/remote/c++/remote_loopback.hpp b/modules/remote/c++/remote_loopback.hpp index fde410d..308bdc6 100644 --- a/modules/remote/c++/remote_loopback.hpp +++ b/modules/remote/c++/remote_loopback.hpp @@ -9,8 +9,8 @@ namespace saw { -template -class remote_data { +template +class remote_data { private: id id_; public: @@ -21,24 +21,24 @@ public: /** * Wait until data arrives */ - error_or> wait(wait_scope& wait); + error_or> wait(wait_scope& wait); /** * Asynchronously wait for a result */ - conveyor> on_receive(); + conveyor> on_receive(); }; /** * Client RPC reference structure */ -template -class rpc_client { +template +class rpc_client { /** * request the data from the remote */ template - remote_data request_data(id data); + remote_data request_data(id data); /** @todo * Determine type based on Name @@ -54,10 +54,10 @@ class rpc_client { }; -template -class rpc_server { +template +class rpc_server { public: - using InterfaceT = interface; + using InterfaceT = interface; private: const remote_address* addr_; InterfaceT iface_; diff --git a/modules/remote/c++/remote_loopback_base.hpp b/modules/remote/c++/remote_loopback_base.hpp index 87d4393..b53ae49 100644 --- a/modules/remote/c++/remote_loopback_base.hpp +++ b/modules/remote/c++/remote_loopback_base.hpp @@ -61,14 +61,14 @@ public: /** * Connect to a remote */ - template - conveyor> connect(const remote_address& addr); + template + conveyor> connect(const remote_address& addr); /** * Start listening */ - template - rpc_server listen(const remote_address& addr, typename rpc_server::InterfaceT iface){ + template + rpc_server listen(const remote_address& addr, typename rpc_server::InterfaceT iface){ return {addr, std::move(iface)}; } -- cgit v1.2.3