GNU Radio's M2K Package
analog_out_sink_impl.h
Go to the documentation of this file.
1/* -*- c++ -*- */
2/*
3 * Copyright 2022 Analog Devices Inc..
4 *
5 * SPDX-License-Identifier: GPL-3.0-or-later
6 */
7
8#ifndef INCLUDED_M2K_ANALOG_OUT_SINK_IMPL_H
9#define INCLUDED_M2K_ANALOG_OUT_SINK_IMPL_H
10
12#include <libm2k/analog/m2kanalogout.hpp>
13
14namespace gr {
15 namespace m2k {
16
18 {
19 private:
20 libm2k::analog::M2kAnalogOut *d_analog_out;
21 const std::string d_uri;
22 const int d_buffer_size;
23 bool d_stream_voltage_values;
24 std::vector<bool> d_cyclic_buffer;
25 bool d_first_iteration;
26
27 public:
28 analog_out_sink_impl(const std::string &uri,
29 const int buffer_size,
30 std::vector<double> sampling_frequency,
31 std::vector<int> oversampling_ratio,
32 const std::vector<int> &kernel_buffers,
33 const std::vector<int> &cyclic,
34 bool calibrate_DAC,
35 bool input_voltage);
36
38
39 void set_params(std::vector<double> sampling_frequency,
40 std::vector<int> oversampling_ratio);
41
42 int work(int noutput_items,
43 gr_vector_const_void_star &input_items,
44 gr_vector_void_star &output_items);
45
46 void forecast(int noutput_items, gr_vector_int &ninput_items_required);
47 };
48
49 } // namespace m2k
50} // namespace gr
51
52#endif /* INCLUDED_M2K_ANALOG_OUT_SINK_IMPL_H */
void forecast(int noutput_items, gr_vector_int &ninput_items_required)
int work(int noutput_items, gr_vector_const_void_star &input_items, gr_vector_void_star &output_items)
void set_params(std::vector< double > sampling_frequency, std::vector< int > oversampling_ratio)
analog_out_sink_impl(const std::string &uri, const int buffer_size, std::vector< double > sampling_frequency, std::vector< int > oversampling_ratio, const std::vector< int > &kernel_buffers, const std::vector< int > &cyclic, bool calibrate_DAC, bool input_voltage)
Sink for ADALM2000 with buffered input channels.
Definition analog_out_sink.h:27
Definition adf4350_sink.h:15
Definition adf4350_sink.h:14