3 * Copyright 2008 Free Software Foundation, Inc.
5 * This file is part of GNU Radio
7 * GNU Radio is free software; you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License as published by
9 * the Free Software Foundation; either version 3, or (at your option)
12 * GNU Radio is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 * GNU General Public License for more details.
17 * You should have received a copy of the GNU General Public License
18 * along with GNU Radio; see the file COPYING. If not, write to
19 * the Free Software Foundation, Inc., 51 Franklin Street,
20 * Boston, MA 02110-1301, USA.
24 #include "usrp_source_base.h"
27 class usrp_source_base : public usrp_base
30 usrp_source_base() throw (std::runtime_error);
33 bool set_decim_rate (unsigned int rate);
34 bool set_nchannels (int nchan);
35 bool set_mux (int mux);
36 %rename(_real_determine_rx_mux_value) determine_rx_mux_value;
37 int determine_rx_mux_value(usrp_subdev_spec ss);
38 bool set_rx_freq (int channel, double freq);
39 bool set_fpga_mode (int mode);
40 bool set_ddc_phase(int channel, int phase);
41 long adc_rate() const { return converter_rate(); }
42 long adc_freq() const { return converter_rate(); }
43 unsigned int decim_rate () const;
44 int nchannels () const;
46 double rx_freq (int channel) const;
47 int noverruns () const { return d_noverruns; }
48 bool has_rx_halfband();
49 bool has_tx_halfband();
52 bool set_format(unsigned int format);
53 static unsigned int make_format(int width=16, int shift=0,
54 bool want_q=true, bool bypass_halfband=false);
55 static int format_width(unsigned int format);
56 static int format_shift(unsigned int format);
57 static bool format_want_q(unsigned int format);
58 static bool format_bypass_halfband(unsigned int format);
59 %rename(_real_tune) tune;
60 bool tune(int chan, db_base_sptr db, double target_freq, usrp_tune_result *result);
61 %rename(_real_pick_rx_subdevice) pick_rx_subdevice();
62 usrp_subdev_spec pick_rx_subdevice();