GNU Radio's FUNCUBE Package
fcdpp_impl.h
Go to the documentation of this file.
1 /* -*- c++ -*- */
2 /*
3  * Copyright 2020 dl1ksv.
4  *
5  * SPDX-License-Identifier: GPL-3.0-or-later
6  */
7 
8 #ifndef INCLUDED_FUNCUBE_FCDPP_IMPL_H
9 #define INCLUDED_FUNCUBE_FCDPP_IMPL_H
10 
11 #include <gnuradio/audio/source.h>
12 #include <gnuradio/logger.h>
13 #include <gnuradio/prefs.h>
14 #include <funcube/fcdpp.h>
15 #include <funcube/fcdpp_control.h>
16 
17 
18 namespace gr {
19 namespace funcube {
20 
21 class fcdpp_impl : public fcdpp
22 {
23 private:
24  gr::audio::source::sptr fcd; /*!< The audio input source */
25  fcdpp_control::sptr fcd_control_block; /*!< The fcd control block */
26  unsigned int d_freq_req; /*!< The latest requested frequency in Khz */
27  int d_corr;
28  int d_unit;
29  gr::logger_ptr d_logger;
30 
31 public:
32  fcdpp_impl(const std::string device_name, int unit);
34  /* Public API functions documented in include/funcube/fcdproplus.h */
35  void set_freq(float freq);
36  void set_lna(int gain);
37  void set_mixer_gain(int gain);
38  void set_freq_corr(int ppm);
39  void set_if_gain(int gain);
40 };
41 
42 } // namespace funcube
43 } // namespace gr
44 
45 #endif /* INCLUDED_FUNCUBE_FCDPP_IMPL_H */
Funcube Dongle source block.
Definition: fcd.h:32
std::shared_ptr< fcdpp_control > sptr
Definition: fcdpp_control.h:25
Definition: fcdpp_impl.h:22
void set_lna(int gain)
Switches the LNA on/off.
fcdpp_impl(const std::string device_name, int unit)
void set_if_gain(int gain)
Set If gain.
void set_freq_corr(int ppm)
Set new frequency correction.
void set_freq(float freq)
Set frequency with resolution defined by unit.
void set_mixer_gain(int gain)
Switches mixer gain onf/off.
Funcube Pro+ Dongle source block.
Definition: fcdpp.h:31
Definition: fcd.h:14