77class ad936x_iio_source :
public gr::block
87 int general_work(
int noutput_items,
88 gr_vector_int &ninput_items,
89 gr_vector_const_void_star &input_items,
90 gr_vector_void_star &output_items);
93 friend ad936x_iio_source_sptr ad936x_iio_make_source_sptr(
94 const std::string &pluto_uri_,
95 const std::string &board_type_,
99 const std::string &rf_port_select_,
100 const std::string &rf_filter,
101 const std::string &gain_mode_rx0_,
102 const std::string &gain_mode_rx1_,
109 bool customsamplesize_,
110 const std::string &fe_ip_,
115 double lo_attenuation_db_,
120 const std::string &pluto_uri_,
121 const std::string &board_type_,
123 int64_t sample_rate_,
125 const std::string &rf_port_select_,
126 const std::string &rf_filter,
127 const std::string &gain_mode_rx0_,
128 const std::string &gain_mode_rx1_,
135 bool customsamplesize_,
136 const std::string &fe_ip_,
141 double lo_attenuation_db_,
145 void ad9361_channel_demux_to_buffer(
ad936x_iio_samples *samples_in,
int nchannels, gr_vector_void_star &output_items);
146 void ad9361_channel_demux_and_record(
ad936x_iio_samples *samples_in,
int nchannels, std::vector<std::fstream> *files_out);
148 std::thread pps_rx_thread;
149 std::unique_ptr<ad936x_iio_custom> ad936x_custom;
150 std::shared_ptr<pps_tcp_rx> pps_rx;
151 std::shared_ptr<Concurrent_Queue<PpsSamplestamp>> ppsqueue;
153 std::vector<std::fstream> samplesfile;