LZMA Programming Tag#
Tag to handle LZMA compressed programming data.
Functions#
Enter an LZMA compressed programming tag.
Parse a chunk of data from an LZMA compressed programming tag.
Exit an LZMA compressed programming tag.
Number of bytes needed for next stage of parsing.
Macros#
The maximum size of the array holding probability model counters.
The maximum size of the dictionary.
Function Documentation#
gbl_lzmaEnterProgTag#
int32_t gbl_lzmaEnterProgTag (ParserContext_t * ctx)
Enter an LZMA compressed programming tag.
| Type | Direction | Argument Name | Description |
|---|---|---|---|
| ParserContext_t * | N/A | ctx | Parser context |
Returns
Error code
gbl_lzmaParseProgTag#
int32_t gbl_lzmaParseProgTag (ParserContext_t * ctx, void * data, size_t length, const BootloaderParserCallbacks_t * callbacks)
Parse a chunk of data from an LZMA compressed programming tag.
| Type | Direction | Argument Name | Description |
|---|---|---|---|
| ParserContext_t * | N/A | ctx | Parser context |
| void * | N/A | data | Input data to parse |
| size_t | N/A | length | Length of data |
| const BootloaderParserCallbacks_t * | N/A | callbacks | Callbacks to call with parsed data |
Returns
Error code
gbl_lzmaExitProgTag#
int32_t gbl_lzmaExitProgTag (ParserContext_t * ctx, const BootloaderParserCallbacks_t * callbacks)
Exit an LZMA compressed programming tag.
| Type | Direction | Argument Name | Description |
|---|---|---|---|
| ParserContext_t * | N/A | ctx | Parser context |
| const BootloaderParserCallbacks_t * | N/A | callbacks | Callbacks to call with parsed data |
Returns
Error code
gbl_lzmaNumBytesRequired#
size_t gbl_lzmaNumBytesRequired (const ParserContext_t * ctx)
Number of bytes needed for next stage of parsing.
| Type | Direction | Argument Name | Description |
|---|---|---|---|
| const ParserContext_t * | N/A | ctx | Parser context |
Returns
Number of bytes required
Macro Definition Documentation#
LZMA_COUNTER_SIZE_KB#
#define LZMA_COUNTER_SIZE_KBValue:
(10UL)
The maximum size of the array holding probability model counters.
The size given here sets the limit for the size of the LC and LP constants used by the LZMA compressor. The necessary size of the counter array can be found from size = 4 KiB + 1.5 KiB * (1 << (LC + LP)). LZMA payloads with too large LC + LP can't be decompressed.
LZMA_DICT_SIZE_KB#
#define LZMA_DICT_SIZE_KBValue:
(8UL)
The maximum size of the dictionary.
The size given here sets the limit for the size of the dictionary used by the LZMA compressor. LZMA payloads with a dictionary that's too large can't be decompressed.