GNU Radio Manual and C++ API Reference 3.10.5.1
The Free & Open Software Radio Ecosystem
freedv_rx_ss.h
Go to the documentation of this file.
1/* -*- c++ -*- */
2/*
3 * Copyright 2016-2019 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_VOCODER_FREEDV_RX_H
12#define INCLUDED_VOCODER_FREEDV_RX_H
13
14#include <gnuradio/block.h>
17
18namespace gr {
19namespace vocoder {
20
21/*!
22 * \brief FreeDV demodulator
23 * \ingroup audio_blk
24 *
25 * Input: 16-bit short values of an audio signal with sampling rate 8 kHz.
26 *
27 * Output: 16-bit short values of an audio signal with sampling rate 8 kHz.
28 *
29 * See also gr::vocoder::freedv_tx_ss.
30 */
31class VOCODER_API freedv_rx_ss : virtual public gr::block
32{
33public:
34 typedef std::shared_ptr<freedv_rx_ss> sptr;
35
36 /*!
37 * \brief Make FreeDV modem demodulator block.
38 *
39 * \param mode Operating Mode designation
40 * \param squelch_thresh FreeDV modem squelch threshold value
41 * \param interleave_frames FreeDV 700D mode number of frames to average error
42 */
43 static sptr make(int mode = freedv_api::MODE_1600,
44 float squelch_thresh = -100.0,
45 int interleave_frames = 1);
46
47 virtual void set_squelch_thresh(float squelch_thresh) = 0;
48 virtual float squelch_thresh() = 0;
49 virtual void set_squelch_en(bool squelch_enable) = 0;
50};
51
52} /* namespace vocoder */
53} /* namespace gr */
54
55#endif /* INCLUDED_VOCODER_FREEDV_RX_H */
The abstract base class for all 'terminal' processing blocks.
Definition: gnuradio-runtime/include/gnuradio/block.h:63
FreeDV demodulator.
Definition: freedv_rx_ss.h:32
virtual void set_squelch_en(bool squelch_enable)=0
static sptr make(int mode=freedv_api::MODE_1600, float squelch_thresh=-100.0, int interleave_frames=1)
Make FreeDV modem demodulator block.
virtual float squelch_thresh()=0
virtual void set_squelch_thresh(float squelch_thresh)=0
std::shared_ptr< freedv_rx_ss > sptr
Definition: freedv_rx_ss.h:34
#define VOCODER_API
Definition: gr-vocoder/include/gnuradio/vocoder/api.h:18
GNU Radio logging wrapper.
Definition: basic_block.h:29