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_USRP_SOURCE_S_H
24
#define INCLUDED_USRP_SOURCE_S_H
26
#include <usrp_source_base.h>
29
class usrp_standard_rx;
33
typedef boost::shared_ptr<usrp_source_s> usrp_source_s_sptr;
36
// public shared_ptr constructor
39
usrp_make_source_s (int which_board=0,
40
unsigned int decim_rate=16,
44
int fusb_block_size=0,
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
55
* output: 1 stream of short
57
class usrp_source_s : public usrp_source_base {
59
friend usrp_source_s_sptr
60
usrp_make_source_s (int which_board,
61
unsigned int decim_rate,
67
const std::string fpga_filename,
68
const std::string firmware_filename
69
) throw (std::runtime_error);
72
usrp_source_s (int which_board,
73
unsigned int decim_rate,
79
const std::string fpga_filename,
80
const std::string firmware_filename
81
) throw (std::runtime_error);
83
virtual int ninput_bytes_reqd_for_noutput_items (int noutput_items);
85
virtual void copy_from_usrp_buffer (gr_vector_void_star &output_items,
87
int output_items_available,
88
int &output_items_produced,
89
const void *usrp_buffer,
90
int usrp_buffer_length,
96
#endif /* INCLUDED_USRP_SOURCE_S_H */