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.
27 #include <usrp2_source_base.h>
28 #include <gr_io_signature.h>
31 usrp2_source_base::usrp2_source_base(const char *name,
32 gr_io_signature_sptr output_signature,
33 const std::string &ifc,
34 const std::string &mac)
35 throw (std::runtime_error)
37 gr_make_io_signature(0, 0, 0),
44 usrp2_source_base::~usrp2_source_base ()
50 usrp2_source_base::set_gain(double gain)
52 return d_u2->set_rx_gain(gain);
56 usrp2_source_base::set_lo_offset(double frequency)
58 return d_u2->set_rx_lo_offset(frequency);
62 usrp2_source_base::set_center_freq(double frequency, usrp2::tune_result *tr)
64 return d_u2->set_rx_center_freq(frequency, tr);
68 usrp2_source_base::set_decim(int decimation_factor)
70 return d_u2->set_rx_decim(decimation_factor);
74 usrp2_source_base::set_scale_iq(int scale_i, int scale_q)
76 return d_u2->set_rx_scale_iq(scale_i, scale_q);
80 usrp2_source_base::decim()
82 return d_u2->rx_decim();
86 usrp2_source_base::adc_rate(long *rate)
88 return d_u2->adc_rate(rate);
92 usrp2_source_base::gain_min()
94 return d_u2->rx_gain_min();
98 usrp2_source_base::gain_max()
100 return d_u2->rx_gain_max();
104 usrp2_source_base::gain_db_per_step()
106 return d_u2->rx_gain_db_per_step();
110 usrp2_source_base::freq_min()
112 return d_u2->rx_freq_min();
116 usrp2_source_base::freq_max()
118 return d_u2->rx_freq_max();
122 usrp2_source_base::daughterboard_id(int *dbid)
124 return d_u2->rx_daughterboard_id(dbid);
128 usrp2_source_base::overruns()
130 return d_u2->rx_overruns();
134 usrp2_source_base::missing()
136 return d_u2->rx_missing();
140 usrp2_source_base::start()
142 return d_u2->start_rx_streaming(0); // FIXME: someday sources will have channel #s
146 usrp2_source_base::stop()
148 return d_u2->stop_rx_streaming(0); // FIXME: someday sources will have channel #s