GNU Radio C++ API Reference: freedv_rx_ss.h Source File

| GNU Radio C++ API Reference 3.10.12.0 The Free & Open Software Radio Ecosystem |

Loading...
Searching...
No Matches
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>
15#include <gnuradio/vocoder/api.h>
16#include <gnuradio/vocoder/freedv_api.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 */
31 class 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 */
gr::block
The abstract base class for all 'terminal' processing blocks.
Definition gnuradio-runtime/include/gnuradio/block.h:63
gr::vocoder::freedv_rx_ss
FreeDV demodulator.
Definition freedv_rx_ss.h:32
gr::vocoder::freedv_rx_ss::set_squelch_en
virtual void set_squelch_en(bool squelch_enable)=0
gr::vocoder::freedv_rx_ss::make
static sptr make(int mode=freedv_api::MODE_1600, float squelch_thresh=-100.0, int interleave_frames=1)
Make FreeDV modem demodulator block.
gr::vocoder::freedv_rx_ss::squelch_thresh
virtual float squelch_thresh()=0
gr::vocoder::freedv_rx_ss::set_squelch_thresh
virtual void set_squelch_thresh(float squelch_thresh)=0
gr::vocoder::freedv_rx_ss::sptr
std::shared_ptr< freedv_rx_ss > sptr
Definition freedv_rx_ss.h:34
freedv_api.h
block.h
api.h
VOCODER_API
#define VOCODER_API
Definition gr-vocoder/include/gnuradio/vocoder/api.h:18
gr::vocoder
Definition alaw_decode_bs.h:18
gr
GNU Radio logging wrapper.
Definition basic_block.h:29