21 #ifndef INCLUDED_SATNOGS_ARGOS_LDR_DECODER_H
22 #define INCLUDED_SATNOGS_ARGOS_LDR_DECODER_H
50 static decoder::decoder_sptr
51 make(
bool crc_check =
true,
size_t max_frame_len = 64);
75 NO_SYNC, IN_SYNC, DECODING
78 const bool d_crc_check;
79 const size_t d_max_frame_len;
80 decoding_state_t d_state;
83 size_t d_received_bytes;
84 size_t d_decoded_bits;
85 uint8_t *d_frame_buffer;
86 std::deque<uint8_t> d_bitstream;
88 uint64_t d_frame_start;
89 uint64_t d_sample_cnt;
96 enter_decoding_state();
104 decode_1b(uint8_t in);
#define SATNOGS_API
Definition: api.h:30
ARGOS Low Data Rate HDLC decoder.
Definition: argos_ldr_decoder.h:38
static decoder::decoder_sptr make(bool crc_check=true, size_t max_frame_len=64)
argos_ldr_decoder(bool crc_check=true, size_t max_frame_len=64)
decoder_status_t decode(const void *in, int len)
Abstract class that provided the API for the c decoders.
Definition: decoder.h:69
class decoder_status decoder_status_t
Definition: decoder.h:55
Definition: amsat_duv_decoder.h:29