GNU Radio Manual and C++ API Reference  3.10.9.1
The Free & Open Software Radio Ecosystem
decode_ccsds_27_fb.h
Go to the documentation of this file.
1 /* -*- c++ -*- */
2 /*
3  * Copyright 2012 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_FEC_DECODE_CCSDS_27_FB_H
12 #define INCLUDED_FEC_DECODE_CCSDS_27_FB_H
13 
14 #include <gnuradio/fec/api.h>
16 
17 namespace gr {
18 namespace fec {
19 
20 /*! \brief A rate 1/2, k=7 convolutional decoder for the CCSDS standard
21  * \ingroup error_coding_blk
22  *
23  * \details
24  * This block performs soft-decision convolutional decoding using the Viterbi
25  * algorithm.
26  *
27  * The input is a stream of (possibly noise corrupted) floating point values
28  * nominally spanning [-1.0, 1.0], representing the encoded channel symbols
29  * 0 (-1.0) and 1 (1.0), with erased symbols at 0.0.
30  *
31  * The output is MSB first packed bytes of decoded values.
32  *
33  * As a rate 1/2 code, there will be one output byte for every 16 input symbols.
34  *
35  * This block is designed for continuous data streaming, not packetized data.
36  * The first 32 bits out will be zeroes, with the output delayed four bytes
37  * from the corresponding inputs.
38  */
39 
41 {
42 public:
43  // gr::fec::decode_ccsds_27_fb::sptr
44  typedef std::shared_ptr<decode_ccsds_27_fb> sptr;
45 
46  static sptr make();
47 };
48 
49 } /* namespace fec */
50 } /* namespace gr */
51 
52 #endif /* INCLUDED_FEC_DECODE_CCSDS_27_FB_H */
A rate 1/2, k=7 convolutional decoder for the CCSDS standard.
Definition: decode_ccsds_27_fb.h:41
std::shared_ptr< decode_ccsds_27_fb > sptr
Definition: decode_ccsds_27_fb.h:44
synchronous N:1 input to output with history
Definition: sync_decimator.h:26
#define FEC_API
Definition: gr-fec/include/gnuradio/fec/api.h:18
GNU Radio logging wrapper.
Definition: basic_block.h:29