21#ifndef INCLUDED_LORA_DEMOD_IMPL_H
22#define INCLUDED_LORA_DEMOD_IMPL_H
30#include <gnuradio/fft/fft.h>
31#include <gnuradio/fft/window.h>
41 pmt::pmt_t d_out_port;
47 unsigned short d_num_symbols;
48 unsigned short d_fft_size_factor;
49 unsigned short d_fft_size;
50 unsigned short d_overlaps;
51 unsigned short d_offset;
57 unsigned short d_preamble_idx;
58 unsigned short d_sfd_idx;
59 std::vector<unsigned short> d_argmax_history;
60 std::vector<unsigned short> d_sfd_history;
61 unsigned short d_sync_recovery_counter;
63 fft::fft_complex *d_fft;
64 std::vector<float> d_window;
67 std::vector<gr_complex> d_upchirp;
68 std::vector<gr_complex> d_downchirp;
70 std::vector<unsigned short> d_symbols;
72 std::ofstream f_raw, f_up_windowless, f_up, f_down;
78 unsigned short fft_factor);
81 unsigned short argmax(gr_complex *fft_result,
bool update_squelch);
84 void forecast (
int noutput_items, gr_vector_int &ninput_items_required);
87 gr_vector_int &ninput_items,
88 gr_vector_const_void_star &input_items,
89 gr_vector_void_star &output_items);
Definition: demod_impl.h:39
void forecast(int noutput_items, gr_vector_int &ninput_items_required)
demod_impl(unsigned short spreading_factor, bool low_data_rate, float beta, unsigned short fft_factor)
unsigned short argmax(gr_complex *fft_result, bool update_squelch)
int general_work(int noutput_items, gr_vector_int &ninput_items, gr_vector_const_void_star &input_items, gr_vector_void_star &output_items)
<+description of block+>
Definition: demod.h:54
demod_state_t
Definition: demod.h:38