GNU Radio's LORA_SDR Package
frame_detector_threshold.h
Go to the documentation of this file.
1 /**
2  * @file frame_detector_threshold.h
3  * @author Martyn van Dijke (martijnvdijke600@gmail.com)
4  * @brief
5  * @version 3
6  * @date 2021-03-23
7  *
8  *
9  */
10 #ifndef INCLUDED_LORA_SDR_FRAME_DETECTOR_THRESHOLD_H
11 #define INCLUDED_LORA_SDR_FRAME_DETECTOR_THRESHOLD_H
12 
13 #include <lora_sdr/api.h>
14 #include <gnuradio/block.h>
15 
16 namespace gr {
17  namespace lora_sdr {
18 
19  /*!
20  * \brief LoRa frame detector threshold, this block detects a LoRa frames using a preamble detection to find the start of the frame
21  * and a SNR energy based detector to detect the end of the frame.
22  * If a frame is detected the frame is outputted to the output.
23  *
24  * \ingroup lora_sdr
25  *
26  */
27  class LORA_SDR_API frame_detector_threshold : virtual public gr::block
28  {
29  public:
30  typedef std::shared_ptr<frame_detector_threshold> sptr;
31 
32  /*!
33  * \brief Return a shared_ptr to a new instance of lora_sdr::frame_detector_threshold.
34  *
35  * To avoid accidental use of raw pointers, lora_sdr::frame_detector_threshold's
36  * constructor is in a private implementation
37  * class. lora_sdr::frame_detector_threshold::make is the public interface for
38  * creating new instances.
39  */
40  static sptr make(uint8_t sf, uint32_t samp_rate, uint32_t bw, float threshold);
41  };
42 
43  } // namespace lora_sdr
44 } // namespace gr
45 
46 #endif /* INCLUDED_LORA_SDR_FRAME_DETECTOR_THRESHOLD_H */
47 
LORA_SDR_API
#define LORA_SDR_API
Definition: api.h:19
gr::lora_sdr::frame_detector_threshold::sptr
std::shared_ptr< frame_detector_threshold > sptr
Definition: frame_detector_threshold.h:30
gr
Definition: add_crc.h:28
gr::lora_sdr::frame_detector_threshold
LoRa frame detector threshold, this block detects a LoRa frames using a preamble detection to find th...
Definition: frame_detector_threshold.h:27
api.h