GNU Radio's SATELLITES Package
|
Calculates and appends a CRC to a PDU. More...
#include <crc_append.h>
Public Types | |
typedef std::shared_ptr< crc_append > | sptr |
Static Public Member Functions | |
static sptr | make (unsigned num_bits, uint64_t poly, uint64_t initial_value, uint64_t final_xor, bool input_reflected, bool result_reflected, bool swap_endianness, unsigned skip_header_bytes=0) |
Build the CRC append block. | |
Calculates and appends a CRC to a PDU.
The CRC append block receives a PDU, calculates the CRC of the PDU data, appends it to the PDU, and sends that as its output. It can support any CRC whose size is a multiple of 8 bits between 8 and 64 bits.
typedef std::shared_ptr<crc_append> gr::satellites::crc_append::sptr |
|
static |
Build the CRC append block.
num_bits | CRC size in bits (must be a multiple of 8) |
poly | CRC polynomial, in MSB-first notation |
initial_value | Initial register value |
final_xor | Final XOR value |
input_reflected | true if the input is LSB-first, false if not |
result_reflected | true if the output is LSB-first, false if not |
swap_endianness | true if the CRC is stored as little-endian in the PDU, false if not |
skip_header_bytes | gives the number of header byte to skip in the CRC calculation |