diff options
m--------- | Apology | 0 | ||||
-rw-r--r-- | include/gnuradio/gr_top_block.h | 4 | ||||
-rw-r--r-- | include/gnuradio/hier_block.hpp | 20 | ||||
-rw-r--r-- | lib/gr_top_block.cpp | 10 | ||||
-rw-r--r-- | lib/hier_block.cpp | 5 |
5 files changed, 25 insertions, 14 deletions
diff --git a/Apology b/Apology -Subproject 132718e729bbb6e9d18a6f776eca4a3187978f0 +Subproject 7fabc009441ef1bb7396e71d927c02ce0e86276 diff --git a/include/gnuradio/gr_top_block.h b/include/gnuradio/gr_top_block.h index 16adb13..b50b35b 100644 --- a/include/gnuradio/gr_top_block.h +++ b/include/gnuradio/gr_top_block.h @@ -27,10 +27,6 @@ struct GRAS_API gr_top_block : gnuradio::TopBlock gr_top_block(const std::string &name); - void lock(void); - - void unlock(void); - void start(void); void start(const size_t max_items); diff --git a/include/gnuradio/hier_block.hpp b/include/gnuradio/hier_block.hpp index 8c337e3..c981b03 100644 --- a/include/gnuradio/hier_block.hpp +++ b/include/gnuradio/hier_block.hpp @@ -48,6 +48,26 @@ struct GRAS_API HierBlock : Element void disconnect_all(void); + /*! + * Commit changes to the overall flow graph. + * Call this after modifying connections. + */ + virtual void commit(void); + + /*! + * The lock() call is deprecated. + * Topology can be changed duing design execution. + * The underlying implementation is literally a NOP. + */ + inline void lock(void){} + + /*! + * The unlock() call is deprecated. + * Topology can be changed duing design execution. + * The underlying implementation is this->commit(). + */ + inline void unlock(void){this->commit();} + }; } //namespace gnuradio diff --git a/lib/gr_top_block.cpp b/lib/gr_top_block.cpp index 6c023b1..c51f9b3 100644 --- a/lib/gr_top_block.cpp +++ b/lib/gr_top_block.cpp @@ -34,16 +34,6 @@ gr_top_block_sptr gr_make_top_block(const std::string &name) return gr_top_block_sptr(new gr_top_block(name)); } -void gr_top_block::lock(void) -{ - //NOP -} - -void gr_top_block::unlock(void) -{ - this->commit(); -} - void gr_top_block::start(void) { gnuradio::TopBlock::start(); diff --git a/lib/hier_block.cpp b/lib/hier_block.cpp index ef29cc2..422ed77 100644 --- a/lib/hier_block.cpp +++ b/lib/hier_block.cpp @@ -76,3 +76,8 @@ void HierBlock::disconnect_all(void) { (*this)->topology->clear_all(); } + +void HierBlock::commit(void) +{ + (*this)->topology->commit(); +} |