Imported Upstream version 3.2.2
[debian/gnuradio] / gr-usrp / src / usrp_sink_base.i
1 /* -*- c++ -*- */
2 /*
3  * Copyright 2008 Free Software Foundation, Inc.
4  * 
5  * This file is part of GNU Radio
6  * 
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)
10  * any later version.
11  * 
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.
16  * 
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.
21  */
22
23 %{
24 #include "usrp_sink_base.h"
25 %}
26
27 class usrp_sink_base : public usrp_base 
28 {
29 private:
30   usrp_sink_base() throw (std::runtime_error);
31
32 public:
33   bool set_interp_rate (unsigned int rate);
34   bool set_nchannels (int nchan);
35   bool set_mux (int mux);
36   %rename(_real_determine_tx_mux_value) determine_tx_mux_value;
37   int determine_tx_mux_value(usrp_subdev_spec ss);
38   int determine_tx_mux_value(usrp_subdev_spec ss_a, usrp_subdev_spec ss_b);
39   bool set_tx_freq (int channel, double freq);
40   long dac_rate() const { return converter_rate(); }
41   long dac_freq() const { return converter_rate(); }
42   unsigned int interp_rate () const;
43   int nchannels () const;
44   int mux () const;
45   double tx_freq (int channel) const;
46   int nunderruns () const { return d_nunderruns; }
47   bool has_rx_halfband();
48   bool has_tx_halfband();
49   int nddcs();
50   int nducs();
51   %rename(_real_tune) tune;
52   bool tune(int chan, db_base_sptr db, double target_freq, usrp_tune_result *result);
53   %rename(_real_pick_tx_subdevice) pick_tx_subdevice();
54   usrp_subdev_spec pick_tx_subdevice();
55 };