Function report |
Source Code:lib\842\842_decompress.c |
Create Date:2022-07-28 06:57:37 |
| Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
| home page | Tree |
| Annotation kernel can get tool activity | Download SCCT | Chinese |
Name:sw842_decompress* Decompress the 842-compressed buffer of length @ilen at @in* to the output buffer @out, using no more than @olen bytes.* The compressed buffer must be only a single 842-compressed buffer,
Proto:int sw842_decompress(const u8 *in, unsigned int ilen, u8 *out, unsigned int *olen)
Type:int
Parameter:
| Type | Parameter | Name |
|---|---|---|
| const u8 * | in | |
| unsigned int | ilen | |
| u8 * | out | |
| unsigned int * | olen |
| 286 | bit = 0 |
| 294 | olen = 0 |
| 296 | Do |
| 297 | ret = next_bits( & p, & op, additional bits of each op param ) |
| 304 | Case op == special templates |
| 305 | ret = next_bits( & p, & rep, REPEAT_BITS) |
| 313 | rep++ |
| 324 | If sw842_template_counts Then atomic_inc( & template_repeat_count) |
| 327 | Break |
| 333 | out += 8 |
| 334 | olen -= 8 |
| 336 | If sw842_template_counts Then atomic_inc( & template_zeros_count) |
| 339 | Break |
| 341 | ret = next_bits( & p, & bytes, SHORT_DATA_BITS) |
| 345 | If Not bytes || bytes > SHORT_DATA_BITS_MAX Then Return -EINVAL |
| 357 | If sw842_template_counts Then atomic_inc( & template_short_data_count) |
| 360 | Break |
| 362 | If sw842_template_counts Then atomic_inc( & template_end_count) |
| 365 | Break |
| 366 | Default |
| 390 | If Value for the false possibility is greater at compile time((total - olen) > UINT_MAX) Then Return -ENOSPC |
| 395 | Return 0 |
| Source code conversion tool public plug-in interface | X |
|---|---|
| Support c/c++/esqlc/java Oracle/Informix/Mysql Plug-in can realize: logical Report Code generation and batch code conversion |