diff options
author | Tom Rondeau <tom@trondeau.com> | 2015-10-07 07:15:56 -0400 |
---|---|---|
committer | Tom Rondeau <tom@trondeau.com> | 2015-10-16 15:48:47 -0400 |
commit | 09b03871e81da2b09792a454ee3caf28bdad4c3c (patch) | |
tree | 577b2ca08026ce833963e7e494069e593b5a489f /gnuradio-runtime/lib/controlport/rpcserver_aggregator.cc | |
parent | ce28185909272d2aebc0e8279a4ab2c3cca16c02 (diff) |
ctrlport: provides a ControlPort model that connects directly with a
block's message handler.
We still need to register this in setup_rpc, but there might be a way
to automate the registering of this during set_msg_handler if
ControlPort is enabled.
Diffstat (limited to 'gnuradio-runtime/lib/controlport/rpcserver_aggregator.cc')
-rw-r--r-- | gnuradio-runtime/lib/controlport/rpcserver_aggregator.cc | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/gnuradio-runtime/lib/controlport/rpcserver_aggregator.cc b/gnuradio-runtime/lib/controlport/rpcserver_aggregator.cc index 3ff553af69..e81a899626 100644 --- a/gnuradio-runtime/lib/controlport/rpcserver_aggregator.cc +++ b/gnuradio-runtime/lib/controlport/rpcserver_aggregator.cc @@ -74,6 +74,25 @@ rpcserver_aggregator::unregisterQueryCallback(const std::string &id) unregisterQueryCallback_f<rpcmanager_base::rpcserver_booter_base_sptr, queryCallback_t>(id)); } + + +void +rpcserver_aggregator::registerHandlerCallback(const std::string &id, + const handlerCallback_t callback) +{ + std::for_each(d_serverlist.begin(), d_serverlist.end(), + registerHandlerCallback_f<rpcmanager_base::rpcserver_booter_base_sptr, handlerCallback_t>(id, callback)); +} + +void +rpcserver_aggregator::unregisterHandlerCallback(const std::string &id) +{ + std::for_each(d_serverlist.begin(), d_serverlist.end(), + unregisterHandlerCallback_f<rpcmanager_base::rpcserver_booter_base_sptr, handlerCallback_t>(id)); +} + + + void rpcserver_aggregator::registerServer(rpcmanager_base::rpcserver_booter_base_sptr server) { |