20 #ifndef INCLUDED_OSMOSDR_SOURCE_IMPL_H
21 #define INCLUDED_OSMOSDR_SOURCE_IMPL_H
26 #include <gnuradio/iqbalance/optimize_c.h>
27 #include <gnuradio/iqbalance/fix_cc.h>
41 bool seek(
long seek_point,
int whence,
size_t chan );
58 double set_gain(
double gain,
size_t chan = 0 );
59 double set_gain(
double gain,
const std::string & name,
size_t chan = 0 );
61 double get_gain(
const std::string & name,
size_t chan = 0 );
67 std::string
set_antenna(
const std::string & antenna,
size_t chan = 0 );
71 void set_dc_offset(
const std::complex<double> &offset,
size_t chan = 0 );
90 void set_time_now(const ::osmosdr::time_spec_t &time_spec,
size_t mboard = 0);
95 std::vector< source_iface * > _devs;
99 std::map< size_t, double > _center_freq;
100 std::map< size_t, double > _freq_corr;
101 std::map< size_t, bool > _gain_mode;
102 std::map< size_t, double > _gain;
103 std::map< size_t, double > _if_gain;
104 std::map< size_t, double > _bb_gain;
105 std::map< size_t, std::string > _antenna;
106 #ifdef HAVE_IQBALANCE
107 std::vector< gr::iqbalance::fix_cc * > _iq_fix;
108 std::vector< gr::iqbalance::optimize_c * > _iq_opt;
109 std::map< size_t, std::pair<float, float> > _vals;
111 std::map< size_t, double > _bandwidth;
Provides a stream of complex samples.
Definition: source.h:39
Definition: time_spec.h:39
Definition: source_impl.h:35
double set_center_freq(double freq, size_t chan=0)
osmosdr::freq_range_t get_bandwidth_range(size_t chan=0)
double set_if_gain(double gain, size_t chan=0)
std::vector< std::string > get_time_sources(const size_t mboard)
double get_gain(const std::string &name, size_t chan=0)
double get_sample_rate(void)
bool set_gain_mode(bool automatic, size_t chan=0)
void set_iq_balance_mode(int mode, size_t chan=0)
void set_time_source(const std::string &source, const size_t mboard=0)
void set_iq_balance(const std::complex< double > &balance, size_t chan=0)
double set_gain(double gain, size_t chan=0)
void set_dc_offset_mode(int mode, size_t chan=0)
std::string get_time_source(const size_t mboard)
std::string get_clock_source(const size_t mboard)
bool seek(long seek_point, int whence, size_t chan)
seek file to seek_point relative to whence
bool get_gain_mode(size_t chan=0)
std::vector< std::string > get_clock_sources(const size_t mboard)
osmosdr::freq_range_t get_freq_range(size_t chan=0)
std::string get_antenna(size_t chan=0)
void set_time_next_pps(const ::osmosdr::time_spec_t &time_spec)
osmosdr::gain_range_t get_gain_range(size_t chan=0)
source_impl(const std::string &args)
std::vector< std::string > get_gain_names(size_t chan=0)
void set_dc_offset(const std::complex< double > &offset, size_t chan=0)
double get_gain(size_t chan=0)
void set_time_unknown_pps(const ::osmosdr::time_spec_t &time_spec)
size_t get_num_channels(void)
double set_freq_corr(double ppm, size_t chan=0)
void set_clock_rate(double rate, size_t mboard=0)
double get_freq_corr(size_t chan=0)
double set_bb_gain(double gain, size_t chan=0)
double set_sample_rate(double rate)
double set_gain(double gain, const std::string &name, size_t chan=0)
void set_clock_source(const std::string &source, const size_t mboard=0)
::osmosdr::time_spec_t get_time_last_pps(size_t mboard=0)
std::string set_antenna(const std::string &antenna, size_t chan=0)
double get_center_freq(size_t chan=0)
double get_clock_rate(size_t mboard=0)
double get_bandwidth(size_t chan=0)
double set_bandwidth(double bandwidth, size_t chan=0)
std::vector< std::string > get_antennas(size_t chan=0)
osmosdr::meta_range_t get_sample_rates(void)
void set_time_now(const ::osmosdr::time_spec_t &time_spec, size_t mboard=0)
osmosdr::gain_range_t get_gain_range(const std::string &name, size_t chan=0)
::osmosdr::time_spec_t get_time_now(size_t mboard=0)