diff options
Diffstat (limited to 'gnuradio-core/src/lib')
-rw-r--r-- | gnuradio-core/src/lib/runtime/gr_top_block.i | 4 | ||||
-rw-r--r-- | gnuradio-core/src/lib/runtime/gr_top_block_impl.cc | 6 |
2 files changed, 5 insertions, 5 deletions
diff --git a/gnuradio-core/src/lib/runtime/gr_top_block.i b/gnuradio-core/src/lib/runtime/gr_top_block.i index 4eb9db636..f48dea74e 100644 --- a/gnuradio-core/src/lib/runtime/gr_top_block.i +++ b/gnuradio-core/src/lib/runtime/gr_top_block.i @@ -40,12 +40,12 @@ private: public: ~gr_top_block(); - void start(); + void start() throw (std::runtime_error); void stop(); void wait(); void run(); void lock(); - void unlock(); + void unlock() throw (std::runtime_error); bool is_running(); }; diff --git a/gnuradio-core/src/lib/runtime/gr_top_block_impl.cc b/gnuradio-core/src/lib/runtime/gr_top_block_impl.cc index ffdcbdb7a..7a993a759 100644 --- a/gnuradio-core/src/lib/runtime/gr_top_block_impl.cc +++ b/gnuradio-core/src/lib/runtime/gr_top_block_impl.cc @@ -77,7 +77,7 @@ gr_top_block_impl::gr_top_block_impl(gr_top_block *owner) d_lock_count(0) { if (s_impl) - throw std::logic_error("gr_top_block_impl: multiple simultaneous gr_top_block's"); + throw std::logic_error("gr_top_block_impl: multiple simultaneous gr_top_blocks not allowed"); s_impl = this; } @@ -95,7 +95,7 @@ gr_top_block_impl::start() std::cout << "start: entered " << this << std::endl; if (d_running) - throw std::runtime_error("already running"); + throw std::runtime_error("top block already running or wait() not called after previous stop()"); // Create new flat flow graph by flattening hierarchy d_ffg = d_owner->flatten(); @@ -203,7 +203,7 @@ gr_top_block_impl::restart() std::cout << "restart: entered" << std::endl; if (!d_running) - throw std::runtime_error("not running"); + throw std::runtime_error("top block is not running"); // Stop scheduler threads and wait for completion stop(); |