|
GNU Radio's SATNOGS Package
|
AX.100 mode 6 decoder. More...
#include <ax100_mode6.h>
Public Types | |
| using | sptr = std::shared_ptr< ax100_mode6 > |
Public Member Functions | |
| ax100_mode6 (crc::type crc, whitening::sptr descrambler, bool ax25_descramble) | |
| ~ax100_mode6 () | |
| decoder_status_t | decode (const void *in, int len) |
| void | reset () |
Public Member Functions inherited from gr::satnogs::decoder | |
| int | unique_id () const |
| decoder (const std::string &name, const std::string &version, int input_item_size, size_t max_frame_len=8192) | |
| virtual | ~decoder () |
| virtual decoder_status_t | decode (const void *in, int nitems)=0 |
| virtual void | reset ()=0 |
| virtual size_t | input_multiple () const |
| size_t | max_frame_len () const |
| int | sizeof_input_item () const |
| std::string | name () const |
| std::string | version () const |
Static Public Member Functions | |
| static sptr | make (crc::type crc=crc::type::CRC32_C, whitening::sptr descrambler=whitening::make_ccsds(), bool ax25_descramble=true) |
Additional Inherited Members | |
Static Public Attributes inherited from gr::satnogs::decoder | |
| static int | base_unique_id |
Protected Member Functions inherited from gr::satnogs::decoder | |
| void | incr_nitems_read (size_t nitems) |
| uint64_t | nitems_read () const |
Protected Attributes inherited from gr::satnogs::decoder | |
| gr::logger_ptr | d_logger |
AX.100 mode 6 decoder.
Mode 6 Decoder for the AX100 modem of GomSpace.
In this particular mode, the modem encapsulates the payload inside an AX.25 frame. The payload is appended with a Castagnoli CRC32, scrambled with a CCSDS scrambler and encoded using the CCSDS compliant Reed Solomon.
This non-sense framing scheme is used mainly for getting data from legacy ham stations receiving and reporting AX.25 frames.
The implementation drops any kind of AX.25 information and does not check the 16-bit CRC, allowing the Reed Solomon to correct any error bits.
| using gr::satnogs::ax100_mode6::sptr = std::shared_ptr<ax100_mode6> |
| gr::satnogs::ax100_mode6::ax100_mode6 | ( | crc::type | crc, |
| whitening::sptr | descrambler, | ||
| bool | ax25_descramble | ||
| ) |
| gr::satnogs::ax100_mode6::~ax100_mode6 | ( | ) |
|
virtual |
Decodes a buffer of input items contained in the in buffer. This method is called continuously by the frame_decoder. Based on the returned status data, the frame_decoder() instructs properly the GNU Radio scheduler and/or propagates decoded data.
As the number of input items may not enough to decode a frame, each decoder should keep internal state, so decoding can be accomplished after an arbitrary number of calls to this method
| in | the input items |
| nitems | the number of input items contained in the in buffer |
Implements gr::satnogs::decoder.
|
static |
|
virtual |
Resets the internal state of the decoder to the initial defaults
Implements gr::satnogs::decoder.