GNU Radio Manual and C++ API Reference 3.9.4.0
The Free & Open Software Radio Ecosystem
source_impl.h
Go to the documentation of this file.
1/* -*- c++ -*- */
2/*
3 * Copyright 2021 Jeff Long
4 * Copyright 2018-2021 Libre Space Foundation <http://libre.space>
5 *
6 * SPDX-License-Identifier: GPL-3.0-or-later
7 */
8
9#ifndef INCLUDED_GR_SOAPY_SOURCE_IMPL_H
10#define INCLUDED_GR_SOAPY_SOURCE_IMPL_H
11
12#include <functional>
13
14#include "block_impl.h"
17
18#include <SoapySDR/Device.hpp>
19#include <SoapySDR/Modules.hpp>
20#include <SoapySDR/Registry.hpp>
21#include <SoapySDR/Version.hpp>
22
23namespace gr {
24namespace soapy {
25
26/*!
27 * \brief Source block implementation for SDR devices.
28 */
29
30class source_impl : public source, public block_impl
31{
32public:
33 source_impl(const std::string& device,
34 const std::string& type,
35 size_t nchan,
36 const std::string& dev_args,
37 const std::string& stream_args,
38 const std::vector<std::string>& tune_args,
39 const std::vector<std::string>& other_settings);
40 ~source_impl() override{};
41
42 int general_work(int noutput_items,
43 gr_vector_int& ninput_items,
44 gr_vector_const_void_star& input_items,
45 gr_vector_void_star& output_items) override;
46};
47
48} // namespace soapy
49} // namespace gr
50
51#endif /* INCLUDED_GR_SOAPY_SOURCE_IMPL_H */
Base block implementation for SDR devices.
Definition: block_impl.h:35
Source block implementation for SDR devices.
Definition: source_impl.h:31
~source_impl() override
Definition: source_impl.h:40
source_impl(const std::string &device, const std::string &type, size_t nchan, const std::string &dev_args, const std::string &stream_args, const std::vector< std::string > &tune_args, const std::vector< std::string > &other_settings)
int general_work(int noutput_items, gr_vector_int &ninput_items, gr_vector_const_void_star &input_items, gr_vector_void_star &output_items) override
compute output items from input items
Definition: gr-soapy/include/gnuradio/soapy/source.h:41
GNU Radio logging wrapper for log4cpp library (C++ port of log4j)
Definition: basic_block.h:29
std::vector< const void * > gr_vector_const_void_star
Definition: types.h:28
std::vector< void * > gr_vector_void_star
Definition: types.h:27
std::vector< int > gr_vector_int
Definition: types.h:23