21 #ifndef OSMOSDR_SOURCE_IFACE_H
22 #define OSMOSDR_SOURCE_IFACE_H
26 #include <gnuradio/basic_block.h>
49 virtual bool seek(
long seek_point,
int whence,
size_t chan = 0 ) {
return false; }
131 size_t chan = 0 ) = 0;
140 virtual bool set_gain_mode(
bool automatic,
size_t chan = 0 ) {
return false; }
157 virtual double set_gain(
double gain,
size_t chan = 0 ) = 0;
167 const std::string & name,
168 size_t chan = 0 ) = 0;
183 virtual double get_gain(
const std::string & name,
size_t chan = 0 ) = 0;
193 virtual double set_if_gain(
double gain,
size_t chan = 0 ) {
return 0; }
203 virtual double set_bb_gain(
double gain,
size_t chan = 0 ) {
return 0; }
210 virtual std::vector< std::string >
get_antennas(
size_t chan = 0 ) = 0;
219 size_t chan = 0 ) = 0;
250 virtual void set_dc_offset(
const std::complex<double> &offset,
size_t chan = 0 ) { }
267 virtual void set_iq_balance(
const std::complex<double> &balance,
size_t chan = 0 ) { }
275 virtual double set_bandwidth(
double bandwidth,
size_t chan = 0 ) {
return 0; }
301 const size_t mboard = 0) { }
317 return std::vector<std::string>();
328 const size_t mboard = 0) { }
344 return std::vector<std::string>();
368 return ::osmosdr::time_spec_t::get_system_time();
378 return ::osmosdr::time_spec_t::get_system_time();
387 size_t mboard = 0) { }
Definition: source_iface.h:33
virtual double get_freq_corr(size_t chan=0)=0
virtual double set_sample_rate(double rate)=0
virtual double get_bandwidth(size_t chan=0)
Definition: source_iface.h:282
virtual double get_gain(size_t chan=0)=0
virtual void set_dc_offset(const std::complex< double > &offset, size_t chan=0)
Definition: source_iface.h:250
virtual double set_bandwidth(double bandwidth, size_t chan=0)
Definition: source_iface.h:275
virtual ::osmosdr::time_spec_t get_time_last_pps(size_t mboard=0)
Definition: source_iface.h:376
virtual osmosdr::freq_range_t get_bandwidth_range(size_t chan=0)
Definition: source_iface.h:289
virtual void set_iq_balance_mode(int mode, size_t chan=0)
Definition: source_iface.h:258
virtual std::vector< std::string > get_time_sources(const size_t mboard)
Definition: source_iface.h:315
virtual void set_clock_source(const std::string &source, const size_t mboard=0)
Definition: source_iface.h:327
virtual osmosdr::freq_range_t get_freq_range(size_t chan=0)=0
virtual void set_time_now(const ::osmosdr::time_spec_t &time_spec, size_t mboard=0)
Definition: source_iface.h:386
virtual void set_iq_balance(const std::complex< double > &balance, size_t chan=0)
Definition: source_iface.h:267
virtual osmosdr::meta_range_t get_sample_rates(void)=0
virtual std::vector< std::string > get_antennas(size_t chan=0)=0
virtual double set_freq_corr(double ppm, size_t chan=0)=0
virtual double get_sample_rate(void)=0
virtual bool seek(long seek_point, int whence, size_t chan=0)
seek file to seek_point relative to whence
Definition: source_iface.h:49
virtual void set_dc_offset_mode(int mode, size_t chan=0)
Definition: source_iface.h:240
virtual double set_gain(double gain, size_t chan=0)=0
virtual ::osmosdr::time_spec_t get_time_now(size_t mboard=0)
Definition: source_iface.h:366
virtual size_t get_num_channels(void)=0
virtual std::string set_antenna(const std::string &antenna, size_t chan=0)=0
virtual std::string get_time_source(const size_t mboard)
Definition: source_iface.h:308
virtual void set_time_next_pps(const ::osmosdr::time_spec_t &time_spec)
Definition: source_iface.h:393
virtual double set_bb_gain(double gain, size_t chan=0)
Definition: source_iface.h:203
virtual double get_center_freq(size_t chan=0)=0
virtual bool set_gain_mode(bool automatic, size_t chan=0)
Definition: source_iface.h:140
virtual std::string get_antenna(size_t chan=0)=0
virtual double get_gain(const std::string &name, size_t chan=0)=0
virtual std::string get_clock_source(const size_t mboard)
Definition: source_iface.h:335
virtual double set_center_freq(double freq, size_t chan=0)=0
virtual osmosdr::gain_range_t get_gain_range(const std::string &name, size_t chan=0)=0
virtual std::vector< std::string > get_gain_names(size_t chan=0)=0
virtual void set_time_unknown_pps(const ::osmosdr::time_spec_t &time_spec)
Definition: source_iface.h:399
virtual double set_if_gain(double gain, size_t chan=0)
Definition: source_iface.h:193
virtual osmosdr::gain_range_t get_gain_range(size_t chan=0)=0
virtual double get_clock_rate(size_t mboard=0)
Definition: source_iface.h:352
virtual void set_time_source(const std::string &source, const size_t mboard=0)
Definition: source_iface.h:300
virtual std::vector< std::string > get_clock_sources(const size_t mboard)
Definition: source_iface.h:342
virtual void set_clock_rate(double rate, size_t mboard=0)
Definition: source_iface.h:359
virtual double set_gain(double gain, const std::string &name, size_t chan=0)=0
virtual bool get_gain_mode(size_t chan=0)
Definition: source_iface.h:147
meta_range_t freq_range_t
Definition: ranges.h:125