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  bool m_ldro; ///< use low datarate optimization mode
20 
21  public:
22  deinterleaver_impl(bool soft_decoding);
24 
25  void forecast (int noutput_items, gr_vector_int &ninput_items_required);
26 
27  int general_work(int noutput_items,
28  gr_vector_int &ninput_items,
29  gr_vector_const_void_star &input_items,
30  gr_vector_void_star &output_items);
31 
32  };
33 
34  } // namespace lora
35 } // namespace gr
36 
37 #endif /* INCLUDED_LORA_DEINTERLEAVER_IMPL_H */
Definition: deinterleaver_impl.h:11
int general_work(int noutput_items, gr_vector_int &ninput_items, gr_vector_const_void_star &input_items, gr_vector_void_star &output_items)
void forecast(int noutput_items, gr_vector_int &ninput_items_required)
deinterleaver_impl(bool soft_decoding)
<+description of block+>
Definition: deinterleaver.h:37
Definition: add_crc.h:28