make maintainer-clean removes these, and we want a clean orig.tar.gz
[debian/gnuradio] / gr-audio-portaudio / src / audio_portaudio_sink.h
index 1ac8edc84d76a7fcb4c5127c53a577b98dd46653..71cbfcf9f011d0c72dbcb67ddf13b0abaad4ca78 100644 (file)
 
 #include <gr_sync_block.h>
 #include <gr_buffer.h>
-#include <gnuradio/omnithread.h>
+#include <gruel/thread.h>
 #include <string>
 #include <portaudio.h>
 #include <stdexcept>
-#include <gri_logger.h>
+//#include <gri_logger.h>
 
 class audio_portaudio_sink;
 typedef boost::shared_ptr<audio_portaudio_sink> audio_portaudio_sink_sptr;
 
 /*!
- * \PORTAUDIO audio sink.
+ * \brief PORTAUDIO audio sink.
+ *
  * \param sampling_rate        sampling rate in Hz
- * \param dev PORTAUDIO device name, e.g., "pa:"
+ * \param device_name PORTAUDIO device name, e.g., "pa:"
  * \param ok_to_block  true if it's ok for us to block
  */
 audio_portaudio_sink_sptr
 audio_portaudio_make_sink (int sampling_rate,
-                          const std::string dev = "",
+                          const std::string device_name = "",
                           bool ok_to_block = true);
 
 PaStreamCallback portaudio_sink_callback;
@@ -73,12 +74,14 @@ class audio_portaudio_sink : public gr_sync_block {
 
   gr_buffer_sptr       d_writer;               // buffer used between work and callback
   gr_buffer_reader_sptr        d_reader;
-  omni_semaphore       d_ringbuffer_ready;     // binary semaphore
 
+  gruel::mutex          d_ringbuffer_mutex;
+  gruel::condition_variable d_ringbuffer_cond;
+  bool                  d_ringbuffer_ready;
 
   // random stats
   int                  d_nunderuns;            // count of underruns
-  gri_logger_sptr      d_log;                  // handle to non-blocking logging instance
+  //gri_logger_sptr    d_log;                  // handle to non-blocking logging instance
 
   void output_error_msg (const char *msg, int err);
   void bail (const char *msg, int err) throw (std::runtime_error);