GNU Radio Manual and C++ API Reference 3.10.5.1
The Free & Open Software Radio Ecosystem
correctiq_auto.h
Go to the documentation of this file.
1/* -*- c++ -*- */
2/*
3 * Copyright 2020 Free Software Foundation, Inc.
4 *
5 * This file is part of GNU Radio
6 *
7 * SPDX-License-Identifier: GPL-3.0-or-later
8 *
9 */
10
11#ifndef INCLUDED_CORRECTIQ_CORRECTIQ_AUTO_H
12#define INCLUDED_CORRECTIQ_CORRECTIQ_AUTO_H
13
14#include <gnuradio/blocks/api.h>
15#include <gnuradio/sync_block.h>
16
17namespace gr {
18namespace blocks {
19
20/*!
21 * \brief This block to removes that center frequency IQ DC spike with a slight variation.
22 * \p It automatically calculates the offset then switches to straight DC offset mode to
23 * \p prevent any possible IIR filtering after it's been tuned. However, if frequency
24 * \p or upstream gain is changed, it must retune, so frequency and upstream gain are
25 * \p all taken as parameters and monitored for changes.
26 * \ingroup iq_correction
27 *
28 */
30{
31public:
32 typedef std::shared_ptr<correctiq_auto> sptr;
33
34 /*!
35 * \brief Return a shared_ptr to a new instance of correctiq::correctiq_auto.
36 *
37 * To avoid accidental use of raw pointers, correctiq::correctiq_auto's
38 * constructor is in a private implementation
39 * class. correctiq::correctiq_auto::make is the public interface for
40 * creating new instances.
41 */
42
43 virtual double get_freq() const = 0;
44 virtual float get_gain() const = 0;
45
46 virtual void set_freq(double newValue) = 0;
47 virtual void set_gain(float newValue) = 0;
48
49 static sptr make(double samp_rate, double freq, float gain, float sync_window);
50};
51
52} // namespace blocks
53} // namespace gr
54
55#endif /* INCLUDED_CORRECTIQ_CORRECTIQ_AUTO_H */
This block to removes that center frequency IQ DC spike with a slight variation. It automatically cal...
Definition: correctiq_auto.h:30
virtual void set_freq(double newValue)=0
static sptr make(double samp_rate, double freq, float gain, float sync_window)
virtual float get_gain() const =0
std::shared_ptr< correctiq_auto > sptr
Definition: correctiq_auto.h:32
virtual void set_gain(float newValue)=0
virtual double get_freq() const =0
Return a shared_ptr to a new instance of correctiq::correctiq_auto.
synchronous 1:1 input to output with history
Definition: sync_block.h:26
#define BLOCKS_API
Definition: gr-blocks/include/gnuradio/blocks/api.h:18
GNU Radio logging wrapper.
Definition: basic_block.h:29