GNU Radio's OsmoSDR Package
rtl_tcp_source_c.h
Go to the documentation of this file.
1
/* -*- c++ -*- */
2
/*
3
* Copyright 2012 Dimitri Stolnikov <horiz0n@gmx.net>
4
*
5
* GNU Radio is free software; you can redistribute it and/or modify
6
* it under the terms of the GNU General Public License as published by
7
* the Free Software Foundation; either version 3, or (at your option)
8
* any later version.
9
*
10
* GNU Radio is distributed in the hope that it will be useful,
11
* but WITHOUT ANY WARRANTY; without even the implied warranty of
12
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13
* GNU General Public License for more details.
14
*
15
* You should have received a copy of the GNU General Public License
16
* along with GNU Radio; see the file COPYING. If not, write to
17
* the Free Software Foundation, Inc., 51 Franklin Street,
18
* Boston, MA 02110-1301, USA.
19
*/
20
#ifndef RTL_TCP_SOURCE_C_H
21
#define RTL_TCP_SOURCE_C_H
22
23
#include <gr_hier_block2.h>
24
25
#include "
osmosdr_src_iface.h
"
26
27
#include "
rtl_tcp_source_f.h
"
28
29
class
rtl_tcp_source_c
;
30
31
typedef
boost::shared_ptr< rtl_tcp_source_c > rtl_tcp_source_c_sptr;
32
33
rtl_tcp_source_c_sptr
make_rtl_tcp_source_c
(
const
std::string & args =
""
);
34
35
class
rtl_tcp_source_c
:
36
public
gr_hier_block2,
37
public
osmosdr_src_iface
38
{
39
private
:
40
friend
rtl_tcp_source_c_sptr
make_rtl_tcp_source_c
(
const
std::string &args);
41
42
rtl_tcp_source_c
(
const
std::string &args);
43
44
public
:
45
~rtl_tcp_source_c
();
46
47
std::string
name
();
48
49
static
std::vector< std::string >
get_devices
();
50
51
size_t
get_num_channels
(
void
);
52
53
osmosdr::meta_range_t
get_sample_rates
(
void
);
54
double
set_sample_rate
(
double
rate );
55
double
get_sample_rate
(
void
);
56
57
osmosdr::freq_range_t
get_freq_range
(
size_t
chan = 0 );
58
double
set_center_freq
(
double
freq,
size_t
chan = 0 );
59
double
get_center_freq
(
size_t
chan = 0 );
60
double
set_freq_corr
(
double
ppm,
size_t
chan = 0 );
61
double
get_freq_corr
(
size_t
chan = 0 );
62
63
std::vector<std::string>
get_gain_names
(
size_t
chan = 0 );
64
osmosdr::gain_range_t
get_gain_range
(
size_t
chan = 0 );
65
osmosdr::gain_range_t
get_gain_range
(
const
std::string & name,
size_t
chan = 0 );
66
bool
set_gain_mode
(
bool
automatic,
size_t
chan = 0 );
67
bool
get_gain_mode
(
size_t
chan = 0 );
68
double
set_gain
(
double
gain,
size_t
chan = 0 );
69
double
set_gain
(
double
gain,
const
std::string & name,
size_t
chan = 0 );
70
double
get_gain
(
size_t
chan = 0 );
71
double
get_gain
(
const
std::string & name,
size_t
chan = 0 );
72
73
double
set_if_gain
(
double
gain,
size_t
chan = 0 );
74
75
std::vector< std::string >
get_antennas
(
size_t
chan = 0 );
76
std::string
set_antenna
(
const
std::string & antenna,
size_t
chan = 0 );
77
std::string
get_antenna
(
size_t
chan = 0 );
78
79
private
:
80
double
_freq, _rate, _gain, _corr;
81
bool
_no_tuner;
82
bool
_auto_gain;
83
double
_if_gain;
84
rtl_tcp_source_f_sptr _src;
85
};
86
87
#endif // RTL_TCP_SOURCE_C_H
lib
rtl_tcp
rtl_tcp_source_c.h
Generated by
1.8.3.1