GNU Radio's LORA_SDR Package
hier_rx.h
Go to the documentation of this file.
1/**
2 * @file hier_rx.h
3 * @author your name (you@domain.com)
4 * @brief
5 * @version 0.1
6 * @date 2021-01-05
7 *
8 * @copyright Copyright (c) 2021
9 *
10 */
11#ifndef INCLUDED_LORA_SDR_HIER_RX_H
12#define INCLUDED_LORA_SDR_HIER_RX_H
13
14#include <gnuradio/hier_block2.h>
15#include <lora_sdr/api.h>
16
17namespace gr {
18namespace lora_sdr {
19
20/*!
21 * \brief Wrapper block that hold the entire Rx chain :
22(frame_sync, fft_demod, gray_decode, deinterleaver, hamming_dec, header_decoder,
23dewhitening, crc_verif)
24 * \ingroup lora_sdr
25 *
26 */
27class LORA_SDR_API hier_rx : virtual public gr::hier_block2 {
28public:
29 typedef std::shared_ptr<hier_rx> sptr;
30
31 /*!
32 * \brief Return a shared_ptr to a new instance of lora_sdr::hier_rx.
33 *
34 * To avoid accidental use of raw pointers, lora_sdr::hier_rx's
35 * constructor is in a private implementation
36 * class. lora_sdr::hier_rx::make is the public interface for
37 * creating new instances.
38 */
39 static sptr make(float samp_rate, uint32_t bandwidth, uint8_t sf,
40 bool impl_head, uint8_t cr, uint32_t pay_len,
41 bool has_crc, std::vector<uint16_t> sync_words, bool exit);
42};
43
44} // namespace lora_sdr
45} // namespace gr
46
47#endif /* INCLUDED_LORA_SDR_HIER_RX_H */
#define LORA_SDR_API
Definition: api.h:19
Wrapper block that hold the entire Rx chain : (frame_sync, fft_demod, gray_decode,...
Definition: hier_rx.h:27
static sptr make(float samp_rate, uint32_t bandwidth, uint8_t sf, bool impl_head, uint8_t cr, uint32_t pay_len, bool has_crc, std::vector< uint16_t > sync_words, bool exit)
Return a shared_ptr to a new instance of lora_sdr::hier_rx.
std::shared_ptr< hier_rx > sptr
Definition: hier_rx.h:29
Definition: add_crc.h:28