GNU Radio's LORA_SDR Package
deinterleaver_impl.h
Go to the documentation of this file.
1 #ifndef INCLUDED_LORA_DEINTERLEAVER_IMPL_H
2 #define INCLUDED_LORA_DEINTERLEAVER_IMPL_H
3 
4 // #define GRLORA_DEBUG
6 
7 namespace gr {
8  namespace lora_sdr {
9 
11  {
12  private:
13  uint8_t m_sf; ///< Transmission Spreading factor
14  uint8_t m_cr; ///< Transmission Coding rate
15  uint8_t sf_app; ///< Spreading factor to use to deinterleave
16  uint8_t cw_len; ///< Length of a codeword
17  bool m_is_header; ///< Indicate that we need to deinterleave the first block with the default header parameters (cr=4/8, reduced rate)
18  bool m_soft_decoding; ///< Hard/Soft decoding
19 
20  public:
21  deinterleaver_impl(uint8_t sf, bool soft_decoding);
23 
24  void forecast (int noutput_items, gr_vector_int &ninput_items_required);
25 
26  int general_work(int noutput_items,
27  gr_vector_int &ninput_items,
28  gr_vector_const_void_star &input_items,
29  gr_vector_void_star &output_items);
30 
31  };
32 
33  } // namespace lora
34 } // namespace gr
35 
36 #endif /* INCLUDED_LORA_DEINTERLEAVER_IMPL_H */
<+description of block+>
Definition: deinterleaver.h:36
void forecast(int noutput_items, gr_vector_int &ninput_items_required)
Definition: add_crc.h:28
int general_work(int noutput_items, gr_vector_int &ninput_items, gr_vector_const_void_star &input_items, gr_vector_void_star &output_items)
deinterleaver_impl(uint8_t sf, bool soft_decoding)
Definition: deinterleaver_impl.h:10