21 #ifndef INCLUDED_SATNOGS_IEEE802_15_4_VARIANT_DECODER_H 22 #define INCLUDED_SATNOGS_IEEE802_15_4_VARIANT_DECODER_H 75 static decoder::decoder_sptr
76 make(
const std::vector<uint8_t> &preamble,
77 size_t preamble_threshold,
78 const std::vector<uint8_t> &sync,
79 size_t sync_threshold,
81 whitening::whitening_sptr descrambler,
bool var_len =
true,
82 size_t max_len = 1024);
85 size_t preamble_threshold,
86 const std::vector<uint8_t> &sync,
87 size_t sync_threshold,
89 whitening::whitening_sptr descrambler,
91 size_t max_len = 1024);
95 decode(
const void *in,
int len);
101 input_multiple()
const;
110 DECODING_GENERIC_FRAME_LEN,
116 const size_t d_preamble_len;
117 const size_t d_preamble_thrsh;
120 const size_t d_sync_len;
121 const size_t d_sync_thrsh;
123 whitening::whitening_sptr d_descrambler;
124 const bool d_var_len;
126 size_t d_length_field_len;
127 decoding_state_t d_state;
129 uint64_t d_frame_start_idx;
133 decode_var_len(
const void *in,
int len);
136 decode_const_len(
const void *in,
int len);
139 search_preamble(
const uint8_t *in,
int len);
142 search_sync(
const uint8_t *in,
int len);
145 decode_frame_len(
const uint8_t *in);
A IEEE 802.15.4 like decoder.
Definition: ieee802_15_4_variant_decoder.h:44
Abstract class that provided the API for the c decoders.
Definition: decoder.h:69
Implements a bit shift register.
Definition: shift_reg.h:35
Definition: amsat_duv_decoder.h:29
enum gr::satnogs::crc::crc_type crc_t
class decoder_status decoder_status_t
Definition: decoder.h:55
#define SATNOGS_API
Definition: api.h:30