20 #ifndef INCLUDED_OSMOSDR_SINK_H 21 #define INCLUDED_OSMOSDR_SINK_H 25 #include <gnuradio/hier_block2.h> 40 typedef boost::shared_ptr< sink >
sptr;
52 static sptr make(
const std::string & args =
"" );
58 virtual size_t get_num_channels(
void ) = 0;
71 virtual double set_sample_rate(
double rate ) = 0;
78 virtual double get_sample_rate(
void ) = 0;
94 virtual double set_center_freq(
double freq,
size_t chan = 0 ) = 0;
102 virtual double get_center_freq(
size_t chan = 0 ) = 0;
110 virtual double set_freq_corr(
double ppm,
size_t chan = 0 ) = 0;
117 virtual double get_freq_corr(
size_t chan = 0 ) = 0;
124 virtual std::vector<std::string> get_gain_names(
size_t chan = 0 ) = 0;
140 size_t chan = 0 ) = 0;
149 virtual bool set_gain_mode(
bool automatic,
size_t chan = 0 ) = 0;
156 virtual bool get_gain_mode(
size_t chan = 0 ) = 0;
166 virtual double set_gain(
double gain,
size_t chan = 0 ) = 0;
175 virtual double set_gain(
double gain,
176 const std::string & name,
177 size_t chan = 0 ) = 0;
184 virtual double get_gain(
size_t chan = 0 ) = 0;
192 virtual double get_gain(
const std::string & name,
size_t chan = 0 ) = 0;
202 virtual double set_if_gain(
double gain,
size_t chan = 0 ) = 0;
212 virtual double set_bb_gain(
double gain,
size_t chan = 0 ) = 0;
219 virtual std::vector< std::string > get_antennas(
size_t chan = 0 ) = 0;
227 virtual std::string set_antenna(
const std::string & antenna,
228 size_t chan = 0 ) = 0;
235 virtual std::string get_antenna(
size_t chan = 0 ) = 0;
244 virtual void set_dc_offset(
const std::complex<double> &offset,
size_t chan = 0 ) = 0;
253 virtual void set_iq_balance(
const std::complex<double> &balance,
size_t chan = 0 ) = 0;
261 virtual double set_bandwidth(
double bandwidth,
size_t chan = 0 ) = 0;
268 virtual double get_bandwidth(
size_t chan = 0 ) = 0;
Takes a stream of complex samples.This uses the preferred technique: subclassing gr::hier_block2.
Definition: sink.h:37
boost::shared_ptr< sink > sptr
Definition: sink.h:40
#define OSMOSDR_API
Definition: api.h:30