GNU Radio's SATELLITES Package

decode_ra_code_impl.h
Go to the documentation of this file.
1/* -*- c++ -*- */
2/*
3 * Copyright 2017 Daniel Estevez <daniel@destevez.net>
4 *
5 * This file is part of gr-satellites
6 *
7 * SPDX-License-Identifier: GPL-3.0-or-later
8 *
9 */
10
11#ifndef INCLUDED_SATELLITES_DECODE_RA_CODE_IMPL_H
12#define INCLUDED_SATELLITES_DECODE_RA_CODE_IMPL_H
13
14#include <satellites/decode_ra_code.h>
15
16#include <memory>
17#include <vector>
18
19 extern "C" {
20#include "radecoder/ra_config.h"
21}
22
23 namespace gr {
24 namespace satellites {
25
26 class decode_ra_code_impl : public decode_ra_code
27{
28 private:
29 constexpr static float d_error_threshold = 0.35f;
30 int d_size;
31 std::unique_ptr<struct ra_context> d_ra_context;
32 std::vector<float> d_ra_in;
33 std::vector<uint8_t> d_ra_out;
34 std::vector<ra_word_t> d_ra_recode;
35
36 public:
37 decode_ra_code_impl(int size);
38 ~decode_ra_code_impl();
39
40 // Where all the action really happens
41 void forecast(int noutput_items, gr_vector_int& ninput_items_required);
42
43 int general_work(int noutput_items,
44 gr_vector_int& ninput_items,
45 gr_vector_const_void_star& input_items,
46 gr_vector_void_star& output_items);
47
48 void msg_handler(pmt::pmt_t pmt_msg);
49};
50
51} // namespace satellites
52} // namespace gr
53
54#endif /* INCLUDED_SATELLITES_DECODE_RA_CODE_IMPL_H */
gr::satellites::decode_ra_code_impl::decode_ra_code_impl
decode_ra_code_impl(int size)
gr::satellites::decode_ra_code_impl::general_work
int general_work(int noutput_items, gr_vector_int &ninput_items, gr_vector_const_void_star &input_items, gr_vector_void_star &output_items)
gr::satellites::decode_ra_code_impl::forecast
void forecast(int noutput_items, gr_vector_int &ninput_items_required)
gr::satellites::decode_ra_code_impl::msg_handler
void msg_handler(pmt::pmt_t pmt_msg)
gr::satellites::decode_ra_code_impl::~decode_ra_code_impl
~decode_ra_code_impl()
gr::satellites::decode_ra_code
<+description of block+>
Definition decode_ra_code.h:26
decode_ra_code.h
gr::satellites
Definition ax100_decode.h:18
gr
Definition ax100_decode.h:17
ra_config.h