Lines Matching defs:nodes
114 Node *nodes, int node,
119 s = nodes[node].sym;
120 if (s != HNODE || (no_zero_count && !nodes[node].count)) {
128 get_tree_codes(bits, lens, xlat, nodes, nodes[node].n0, pfx, pl,
131 get_tree_codes(bits, lens, xlat, nodes, nodes[node].n0 + 1, pfx, pl,
136 static int build_huff_tree(VLC *vlc, Node *nodes, int head, int flags, int nb_bits)
144 get_tree_codes(bits, lens, xlat, nodes, head, 0, 0,
151 * nodes size must be 2*nb_codes
152 * first nb_codes nodes.count must be set
155 Node *nodes, HuffCmp cmp, int flags)
162 nodes[i].sym = i;
163 nodes[i].n0 = -2;
164 sum += nodes[i].count;
173 qsort(nodes, nb_codes, sizeof(Node), cmp);
175 nodes[nb_codes*2-1].count = 0;
177 uint32_t cur_count = nodes[i].count + nodes[i+1].count;
181 if(cur_count > nodes[j-1].count ||
182 (cur_count == nodes[j-1].count &&
185 nodes[j] = nodes[j - 1];
187 nodes[j].sym = HNODE;
188 nodes[j].count = cur_count;
189 nodes[j].n0 = i;
192 if (build_huff_tree(vlc, nodes, nb_codes * 2 - 2, flags, nb_bits) < 0) {