rearrange includes to always be: internal GR, external, with GR.
[debian/gnuradio] / gr-usrp2 / src / usrp2_source_16sc.cc
index b60b61c1b3d6433e6c344c34c06daf444d6dbbaa..33114b51d3a8c10c05dd233da1c604317183ed60 100644 (file)
@@ -21,7 +21,7 @@
  */
 
 #ifdef HAVE_CONFIG_H
-#include "config.h"
+#include <config.h>
 #endif
 
 #include <usrp2_source_16sc.h>
 #include <gr_io_signature.h>
 #include <iostream>
 
-#define USRP2_SOURCE_16SC_DEBUG 0
-
 usrp2_source_16sc_sptr
 usrp2_make_source_16sc(const std::string &ifc, const std::string &mac_addr) 
   throw (std::runtime_error)
 {
-  return usrp2_source_16sc_sptr(new usrp2_source_16sc(ifc, mac_addr));
+  return gnuradio::get_initial_sptr(new usrp2_source_16sc(ifc, mac_addr));
 }
 
 usrp2_source_16sc::usrp2_source_16sc(const std::string &ifc, const std::string &mac_addr) 
@@ -49,6 +47,7 @@ usrp2_source_16sc::usrp2_source_16sc(const std::string &ifc, const std::string &
 
 usrp2_source_16sc::~usrp2_source_16sc()
 {
+  // NOP
 }
 
 int
@@ -56,22 +55,15 @@ usrp2_source_16sc::work(int noutput_items,
                        gr_vector_const_void_star &input_items,
                        gr_vector_void_star &output_items)
 {
-  if (USRP2_SOURCE_16SC_DEBUG)
-    printf("work: noutput_items=%i\n", noutput_items);
-  
   std::complex<int16_t> *out = (std::complex<int16_t> *)output_items[0];
 
   rx_16sc_handler::sptr handler = rx_16sc_handler::make(noutput_items, USRP2_MIN_RX_SAMPLES, out);
 
-  bool ok = d_u2->rx_samples(0, handler.get());
-  if (!ok)
+  bool ok = d_u2->rx_samples(0, handler.get()); // FIXME: channel number instead of 0
+  if (!ok){
     std::cerr << "usrp2::rx_samples() failed" << std::endl;
+    return -1; // say we're done
+  }
 
-  int j = handler->nsamples();
-  int f = handler->nframes();
-  
-  if (USRP2_SOURCE_16SC_DEBUG)
-    printf("work: produced=%i items from %i frames\n\n", j, f);  
-    
-  return j;
+  return handler->nsamples();
 }