Added ability to determine if flowgraph is running
authorjcorgan <jcorgan@221aa14e-8319-0410-a670-987f0aec2ac5>
Tue, 17 Feb 2009 16:57:00 +0000 (16:57 +0000)
committerjcorgan <jcorgan@221aa14e-8319-0410-a670-987f0aec2ac5>
Tue, 17 Feb 2009 16:57:00 +0000 (16:57 +0000)
git-svn-id: http://gnuradio.org/svn/gnuradio/trunk@10451 221aa14e-8319-0410-a670-987f0aec2ac5

gnuradio-core/src/lib/runtime/gr_top_block.cc
gnuradio-core/src/lib/runtime/gr_top_block.h
gnuradio-core/src/lib/runtime/gr_top_block.i
gnuradio-core/src/lib/runtime/gr_top_block_impl.cc
gnuradio-core/src/lib/runtime/gr_top_block_impl.h

index 09e46dfbb4bbea367911cd3c25e3d994757bfd47..3fa324257f0a33bed3be064536fb7f19baa60185 100644 (file)
@@ -78,6 +78,12 @@ gr_top_block::run()
   wait();
 }
 
+bool
+gr_top_block::is_running()
+{
+  return d_impl->is_running();
+}
+
 void
 gr_top_block::lock()
 {
index b47ec019c8f68e0c38c4572145ded27cfff69080..415bb21f2e8d49a7585706b66a7d17e137bdaa3c 100644 (file)
@@ -77,6 +77,11 @@ public:
    */
   void wait();
 
+  /*!
+   * Is the flowgraph running?
+   */
+  bool is_running();
+
   /*!
    * Lock a flowgraph in preparation for reconfiguration.  When an equal
    * number of calls to lock() and unlock() have occurred, the flowgraph
index 670e5b5e54eb65ae37c955b67f20022b680787d4..b5ced3cda653c97d39314477a0ee8aeb29d15041 100644 (file)
@@ -44,6 +44,7 @@ public:
   void stop();
   void wait();
   void run();
+  bool is_running();
   void lock();
   void unlock() throw (std::runtime_error);
   void dump();
index 50d480d009e80875b02744740e84917837a33e0e..97b19adad3b5cf98125b162739d3975178d1cb77 100644 (file)
@@ -87,6 +87,12 @@ gr_top_block_impl::~gr_top_block_impl()
   d_owner = 0;
 }
 
+bool
+gr_top_block_impl::is_running()
+{
+  return (d_state != IDLE);
+}
+
 void
 gr_top_block_impl::start()
 {
index 35fb44ef92ba7110c4c052e3c96d8a89573fcb8d..794c4bc0d42d1aaae6d69a5e07e7c400c7556f2b 100644 (file)
@@ -60,6 +60,9 @@ public:
 
   // Dump the flowgraph to stdout
   void dump();
+
+  // Has flowgraph been started?
+  bool is_running();
   
 protected: