MCPcopy Create free account
hub / github.com/hoothin/UserScripts / send_all_trees

Function send_all_trees

Picviewer CE+/dist.user.js:11297–11321  ·  view source on GitHub ↗
(s, lcodes, dcodes, blcodes)

Source from the content-addressed store, hash-verified

11295 * IN assertion: lcodes >= 257, dcodes >= 1, blcodes >= 4.
11296 */
11297function send_all_trees(s, lcodes, dcodes, blcodes)
11298// deflate_state *s;
11299// int lcodes, dcodes, blcodes; /* number of codes for each tree */
11300{
11301 var rank; /* index in bl_order */
11302
11303 //Assert (lcodes >= 257 && dcodes >= 1 && blcodes >= 4, "not enough codes");
11304 //Assert (lcodes <= L_CODES && dcodes <= D_CODES && blcodes <= BL_CODES,
11305 // "too many codes");
11306 //Tracev((stderr, "\nbl counts: "));
11307 send_bits(s, lcodes - 257, 5); /* not +255 as stated in appnote.txt */
11308 send_bits(s, dcodes - 1, 5);
11309 send_bits(s, blcodes - 4, 4); /* not -3 as stated in appnote.txt */
11310 for (rank = 0; rank < blcodes; rank++) {
11311 //Tracev((stderr, "\nbl code %2d ", bl_order[rank]));
11312 send_bits(s, s.bl_tree[bl_order[rank] * 2 + 1]/*.Len*/, 3);
11313 }
11314 //Tracev((stderr, "\nbl tree: sent %ld", s->bits_sent));
11315
11316 send_tree(s, s.dyn_ltree, lcodes - 1); /* literal tree */
11317 //Tracev((stderr, "\nlit tree: sent %ld", s->bits_sent));
11318
11319 send_tree(s, s.dyn_dtree, dcodes - 1); /* distance tree */
11320 //Tracev((stderr, "\ndist tree: sent %ld", s->bits_sent));
11321}
11322
11323
11324/* ===========================================================================

Callers 1

_tr_flush_blockFunction · 0.70

Calls 2

send_bitsFunction · 0.70
send_treeFunction · 0.70

Tested by

no test coverage detected