Mercurial > hg > piper-cpp
diff capnproto/VampnProto.h @ 10:c8451896c40e
Some conversions for plugin handles
author | Chris Cannam <c.cannam@qmul.ac.uk> |
---|---|
date | Tue, 17 May 2016 09:58:15 +0100 |
parents | d8358afe3f2c |
children | 1d13354ddc44 |
line wrap: on
line diff
--- a/capnproto/VampnProto.h Mon May 16 15:46:22 2016 +0100 +++ b/capnproto/VampnProto.h Tue May 17 09:58:15 2016 +0100 @@ -9,6 +9,8 @@ #include <vamp-hostsdk/PluginLoader.h> #include <vamp-hostsdk/PluginStaticData.h> +#include "bits/PluginHandleMapper.h" + namespace vampipe { @@ -468,6 +470,29 @@ } req.adapterFlags = flags; } + + static void + buildLoadResponse(LoadResponse::Builder &b, + const Vamp::HostExt::LoadResponse &resp, + PluginHandleMapper &mapper) { + + b.setPluginHandle(mapper.pluginToHandle(resp.plugin)); + auto sd = b.initStaticData(); + buildPluginStaticData(sd, resp.staticData); + auto conf = b.initDefaultConfiguration(); + buildPluginConfiguration(conf, resp.defaultConfiguration); + } + + static void + readLoadResponse(Vamp::HostExt::LoadResponse &resp, + const LoadResponse::Reader &r, + PluginHandleMapper &mapper) { + + resp.plugin = mapper.handleToPlugin(r.getPluginHandle()); + readPluginStaticData(resp.staticData, r.getStaticData()); + readPluginConfiguration(resp.defaultConfiguration, + r.getDefaultConfiguration()); + } }; }