21 #ifndef INCLUDED_SOAPY_SOURCE_C_H 22 #define INCLUDED_SOAPY_SOURCE_C_H 24 #include <gnuradio/block.h> 25 #include <gnuradio/sync_block.h> 49 typedef boost::shared_ptr<soapy_source_c> soapy_source_c_sptr;
61 public gr::sync_block,
77 int work(
int noutput_items,
78 gr_vector_const_void_star &input_items,
79 gr_vector_void_star &output_items );
81 static std::vector< std::string > get_devices();
83 size_t get_num_channels(
void );
85 double set_sample_rate(
double rate );
86 double get_sample_rate(
void );
88 double set_center_freq(
double freq,
size_t chan );
89 double get_center_freq(
size_t chan );
90 double set_freq_corr(
double ppm,
size_t chan );
91 double get_freq_corr(
size_t chan );
92 std::vector<std::string> get_gain_names(
size_t chan );
96 bool set_gain_mode(
bool automatic,
size_t chan );
97 bool get_gain_mode(
size_t chan );
98 double set_gain(
double gain,
size_t chan );
99 double set_gain(
double gain,
100 const std::string & name,
102 double get_gain(
size_t chan );
103 double get_gain(
const std::string & name,
size_t chan );
104 double set_if_gain(
double gain,
size_t chan );
105 double set_bb_gain(
double gain,
size_t chan );
106 std::vector< std::string > get_antennas(
size_t chan );
107 std::string set_antenna(
const std::string & antenna,
109 std::string get_antenna(
size_t chan );
110 void set_dc_offset_mode(
int mode,
size_t chan );
111 void set_dc_offset(
const std::complex<double> &offset,
size_t chan );
112 void set_iq_balance_mode(
int mode,
size_t chan );
113 void set_iq_balance(
const std::complex<double> &balance,
size_t chan );
114 double set_bandwidth(
double bandwidth,
size_t chan );
115 double get_bandwidth(
size_t chan ) ;
117 void set_time_source(
const std::string &source,
118 const size_t mboard);
119 std::string get_time_source(
const size_t mboard);
120 std::vector<std::string> get_time_sources(
const size_t mboard);
121 void set_clock_source(
const std::string &source,
122 const size_t mboard);
123 std::string get_clock_source(
const size_t mboard);
124 std::vector<std::string> get_clock_sources(
const size_t mboard);
125 double get_clock_rate(
size_t mboard);
126 void set_clock_rate(
double rate,
size_t mboard);
129 void set_time_now(const ::osmosdr::time_spec_t &time_spec,
131 void set_time_next_pps(const ::osmosdr::time_spec_t &time_spec);
132 void set_time_unknown_pps(const ::osmosdr::time_spec_t &time_spec);
135 SoapySDR::Device *_device;
136 SoapySDR::Stream *_stream;
Definition: soapy_source_c.h:60
Definition: time_spec.h:39
Definition: source_iface.h:32
soapy_source_c_sptr make_soapy_source_c(const std::string &args="")
Return a shared_ptr to a new instance of soapy_source_c.
Definition: soapy_sink_c.h:32