diff options
author | Johnathan Corgan <johnathan@corganlabs.com> | 2017-06-27 13:29:41 -0700 |
---|---|---|
committer | Johnathan Corgan <johnathan@corganlabs.com> | 2017-06-27 13:29:41 -0700 |
commit | 9e011f1d116daaf5abdd8d05a83341390159a21b (patch) | |
tree | 24b946d510a313f96c4427f0304ad7f145ea5df1 /gnuradio-runtime | |
parent | 99ee660ce3701a33efa1737ae341e5360661f900 (diff) | |
parent | 2577279fa5fe8d5ed93b62c2c83c523c99dfbbea (diff) |
Merge branch 'master' into next
Diffstat (limited to 'gnuradio-runtime')
7 files changed, 28 insertions, 23 deletions
diff --git a/gnuradio-runtime/include/gnuradio/block.h b/gnuradio-runtime/include/gnuradio/block.h index 533591930b..d23358cccb 100644 --- a/gnuradio-runtime/include/gnuradio/block.h +++ b/gnuradio-runtime/include/gnuradio/block.h @@ -1,6 +1,6 @@ /* -*- c++ -*- */ /* - * Copyright 2004,2007,2009,2010,2013 Free Software Foundation, Inc. + * Copyright 2004,2007,2009,2010,2013,2017 Free Software Foundation, Inc. * * This file is part of GNU Radio * @@ -67,10 +67,14 @@ namespace gr { WORK_DONE = -1 }; + /*! + * \brief enum to represent different tag propagation policies. + */ enum tag_propagation_policy_t { - TPP_DONT = 0, - TPP_ALL_TO_ALL = 1, - TPP_ONE_TO_ONE = 2 + TPP_DONT = 0, /*!< Scheduler doesn't propagate tags from in- to output. The block itself is free to insert tags as it wants. */ + TPP_ALL_TO_ALL = 1, /*!< Propagate tags from all in- to all outputs. The scheduler takes care of that. */ + TPP_ONE_TO_ONE = 2, /*!< Propagate tags from n. input to n. output. Requires same number of in- and outputs */ + TPP_CUSTOM = 3 /*!< Like TPP_DONT, but signals the block it should implement application-specific forwarding behaviour. */ }; virtual ~block(); diff --git a/gnuradio-runtime/include/gnuradio/block_gateway.h b/gnuradio-runtime/include/gnuradio/block_gateway.h index bc04c0c915..060e525358 100644 --- a/gnuradio-runtime/include/gnuradio/block_gateway.h +++ b/gnuradio-runtime/include/gnuradio/block_gateway.h @@ -1,6 +1,6 @@ /* -*- c++ -*- */ /* - * Copyright 2011-2013 Free Software Foundation, Inc. + * Copyright 2011-2013,2017 Free Software Foundation, Inc. * * This file is part of GNU Radio * @@ -44,7 +44,8 @@ namespace gr { enum tag_propagation_policy_t { TPP_DONT = 0, TPP_ALL_TO_ALL = 1, - TPP_ONE_TO_ONE = 2 + TPP_ONE_TO_ONE = 2, + TPP_CUSTOM = 3 }; /*! diff --git a/gnuradio-runtime/include/gnuradio/rpccallbackregister_base.h b/gnuradio-runtime/include/gnuradio/rpccallbackregister_base.h index 14e8772449..c136791994 100644 --- a/gnuradio-runtime/include/gnuradio/rpccallbackregister_base.h +++ b/gnuradio-runtime/include/gnuradio/rpccallbackregister_base.h @@ -104,11 +104,11 @@ struct callbackregister_base callbackregister_base() {;} virtual ~callbackregister_base() {;} - virtual void registerConfigureCallback(const std::string &id, const configureCallback_t callback) = 0; + virtual void registerConfigureCallback(const std::string &id, const configureCallback_t &callback) = 0; virtual void unregisterConfigureCallback(const std::string &id) = 0; - virtual void registerQueryCallback(const std::string &id, const queryCallback_t callback) = 0; + virtual void registerQueryCallback(const std::string &id, const queryCallback_t &callback) = 0; virtual void unregisterQueryCallback(const std::string &id) = 0; - virtual void registerHandlerCallback(const std::string &id, const handlerCallback_t callback) = 0; + virtual void registerHandlerCallback(const std::string &id, const handlerCallback_t &callback) = 0; virtual void unregisterHandlerCallback(const std::string &id) = 0; }; diff --git a/gnuradio-runtime/include/gnuradio/rpcserver_aggregator.h b/gnuradio-runtime/include/gnuradio/rpcserver_aggregator.h index 08426bb00c..c9c5356309 100644 --- a/gnuradio-runtime/include/gnuradio/rpcserver_aggregator.h +++ b/gnuradio-runtime/include/gnuradio/rpcserver_aggregator.h @@ -34,13 +34,13 @@ public: rpcserver_aggregator(); virtual ~rpcserver_aggregator(); - void registerConfigureCallback(const std::string &id, const configureCallback_t callback); + void registerConfigureCallback(const std::string &id, const configureCallback_t &callback); void unregisterConfigureCallback(const std::string &id); - void registerQueryCallback(const std::string &id, const queryCallback_t callback); + void registerQueryCallback(const std::string &id, const queryCallback_t &callback); void unregisterQueryCallback(const std::string &id); - void registerHandlerCallback(const std::string &id, const handlerCallback_t callback); + void registerHandlerCallback(const std::string &id, const handlerCallback_t &callback); void unregisterHandlerCallback(const std::string &id); void registerServer(rpcmanager_base::rpcserver_booter_base_sptr server); @@ -53,7 +53,7 @@ private: template<class T, typename Tcallback> struct registerConfigureCallback_f: public std::unary_function<T,void> { - registerConfigureCallback_f(const std::string &_id, const Tcallback _callback) + registerConfigureCallback_f(const std::string &_id, const Tcallback &_callback) : id(_id), callback(_callback) {;} @@ -75,7 +75,7 @@ private: template<class T, typename Tcallback> struct registerQueryCallback_f: public std::unary_function<T,void> { - registerQueryCallback_f(const std::string &_id, const Tcallback _callback) + registerQueryCallback_f(const std::string &_id, const Tcallback &_callback) : id(_id), callback(_callback) {;} @@ -99,7 +99,7 @@ private: template<class T, typename Tcallback> struct registerHandlerCallback_f: public std::unary_function<T,void> { - registerHandlerCallback_f(const std::string &_id, const Tcallback _callback) + registerHandlerCallback_f(const std::string &_id, const Tcallback &_callback) : id(_id), callback(_callback) {;} diff --git a/gnuradio-runtime/include/gnuradio/rpcserver_base.h b/gnuradio-runtime/include/gnuradio/rpcserver_base.h index 276dec5d1e..c85165bcad 100644 --- a/gnuradio-runtime/include/gnuradio/rpcserver_base.h +++ b/gnuradio-runtime/include/gnuradio/rpcserver_base.h @@ -31,13 +31,13 @@ public: rpcserver_base() : cur_priv(RPC_PRIVLVL_ALL) {;} virtual ~rpcserver_base() {;} - virtual void registerConfigureCallback(const std::string &id, const configureCallback_t callback) = 0; + virtual void registerConfigureCallback(const std::string &id, const configureCallback_t &callback) = 0; virtual void unregisterConfigureCallback(const std::string &id) = 0; - virtual void registerQueryCallback(const std::string &id, const queryCallback_t callback) = 0; + virtual void registerQueryCallback(const std::string &id, const queryCallback_t &callback) = 0; virtual void unregisterQueryCallback(const std::string &id) = 0; - virtual void registerHandlerCallback(const std::string &id, const handlerCallback_t callback) = 0; + virtual void registerHandlerCallback(const std::string &id, const handlerCallback_t &callback) = 0; virtual void unregisterHandlerCallback(const std::string &id) = 0; virtual void setCurPrivLevel(const priv_lvl_t priv) { cur_priv = priv; } diff --git a/gnuradio-runtime/lib/block_executor.cc b/gnuradio-runtime/lib/block_executor.cc index 585e65fc6e..5c23df39a5 100644 --- a/gnuradio-runtime/lib/block_executor.cc +++ b/gnuradio-runtime/lib/block_executor.cc @@ -1,6 +1,6 @@ /* -*- c++ -*- */ /* - * Copyright 2004,2008-2010,2013 Free Software Foundation, Inc. + * Copyright 2004,2008-2010,2013,2017 Free Software Foundation, Inc. * * This file is part of GNU Radio * @@ -103,8 +103,8 @@ namespace gr { switch(policy) { case block::TPP_DONT: + case block::TPP_CUSTOM: return true; - break; case block::TPP_ALL_TO_ALL: // every tag on every input propogates to everyone downstream for(int i = 0; i < d->ninputs(); i++) { diff --git a/gnuradio-runtime/lib/controlport/rpcserver_aggregator.cc b/gnuradio-runtime/lib/controlport/rpcserver_aggregator.cc index e81a899626..f546c2daab 100644 --- a/gnuradio-runtime/lib/controlport/rpcserver_aggregator.cc +++ b/gnuradio-runtime/lib/controlport/rpcserver_aggregator.cc @@ -47,7 +47,7 @@ rpcserver_aggregator::registeredServers() void rpcserver_aggregator::registerConfigureCallback(const std::string &id, - const configureCallback_t callback) + const configureCallback_t &callback) { std::for_each(d_serverlist.begin(), d_serverlist.end(), registerConfigureCallback_f<rpcmanager_base::rpcserver_booter_base_sptr, configureCallback_t>(id, callback)); @@ -61,7 +61,7 @@ rpcserver_aggregator::unregisterConfigureCallback(const std::string &id) } void -rpcserver_aggregator::registerQueryCallback(const std::string &id, const queryCallback_t callback) +rpcserver_aggregator::registerQueryCallback(const std::string &id, const queryCallback_t &callback) { std::for_each(d_serverlist.begin(), d_serverlist.end(), registerQueryCallback_f<rpcmanager_base::rpcserver_booter_base_sptr, queryCallback_t>(id, callback)); @@ -78,7 +78,7 @@ rpcserver_aggregator::unregisterQueryCallback(const std::string &id) void rpcserver_aggregator::registerHandlerCallback(const std::string &id, - const handlerCallback_t callback) + 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)); |