]> git.gag.com Git - debian/gnuradio/blobdiff - gr-usrp2/src/usrp2_sink_base.h
Adds usrp2.sink_32fc, usrp2.sink_16sc, refactoring, cleanup
[debian/gnuradio] / gr-usrp2 / src / usrp2_sink_base.h
index a999a6cac5711bed1558b1298c6facaaa949be45..8396c08f71563192353a1c8727a97bf5a47024c9 100644 (file)
 #ifndef INCLUDED_USRP2_SINK_BASE_H
 #define INCLUDED_USRP2_SINK_BASE_H
 
-#include <gr_sync_block.h>
-#include <stdexcept>
-
-class usrp2_sink_base : public gr_sync_block {
-
-private:
+#include <usrp2_base.h>
 
+/*!
+ * Base class for all USRP2 transmit blocks
+ */
+class usrp2_sink_base : public usrp2_base 
+{
 protected:
-  usrp2_sink_base(const std::string &name,
-                 gr_io_signature_sptr input_signature) 
+  usrp2_sink_base(const char *name,
+                 gr_io_signature_sptr input_signature,
+                 const std::string &ifc,
+                 const std::string &mac)
     throw (std::runtime_error);
-  
+
 public:
   ~usrp2_sink_base();
-  
-  int work(int noutput_items,
-          gr_vector_const_void_star &input_items,
-          gr_vector_void_star &output_items);
+
+  /*!
+   * \brief Set transmitter gain
+   */
+  bool set_gain(double gain);
+
+  /*!
+   * \brief Set transmitter center frequency
+   */
+  bool set_center_freq(double frequency, usrp2::tune_result *tr);
+   
+  /*!
+   * \brief Set transmit interpolation rate
+   */
+  bool set_interp(int interp_factor);
 };
 
 #endif /* INCLUDED_USRP2_SINK_BASE_H */