3 * Copyright 2004 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.
23 #ifndef INCLUDED_USRP1_SOURCE_C_H
24 #define INCLUDED_USRP1_SOURCE_C_H
26 #include <usrp1_source_base.h>
29 class usrp_standard_rx;
33 typedef boost::shared_ptr<usrp1_source_c> usrp1_source_c_sptr;
36 // public shared_ptr constructor
39 usrp1_make_source_c (int which_board,
40 unsigned int decim_rate,
46 const std::string fpga_filename,
47 const std::string firmware_filename
48 ) throw (std::runtime_error);
51 * \brief interface to Universal Software Radio Peripheral Rx path (Rev 1)
53 class usrp1_source_c : public usrp1_source_base {
55 friend usrp1_source_c_sptr
56 usrp1_make_source_c (int which_board,
57 unsigned int decim_rate,
63 const std::string fpga_filename,
64 const std::string firmware_filename
65 ) throw (std::runtime_error);
68 usrp1_source_c (int which_board,
69 unsigned int decim_rate,
75 const std::string fpga_filename,
76 const std::string firmware_filename
77 ) throw (std::runtime_error);
79 virtual int ninput_bytes_reqd_for_noutput_items (int noutput_items);
81 virtual void copy_from_usrp_buffer (gr_vector_void_star &output_items,
83 int output_items_available,
84 int &output_items_produced,
85 const void *usrp_buffer,
86 int usrp_buffer_length,
93 #endif /* INCLUDED_USRP1_SOURCE_C_H */