OLD | NEW |
(Empty) | |
| 1 /* |
| 2 * Copyright (c) 2010 The WebM project authors. All Rights Reserved. |
| 3 * |
| 4 * Use of this source code is governed by a BSD-style license |
| 5 * that can be found in the LICENSE file in the root of the source |
| 6 * tree. An additional intellectual property rights grant can be found |
| 7 * in the file PATENTS. All contributing project authors may |
| 8 * be found in the AUTHORS file in the root of the source tree. |
| 9 */ |
| 10 |
| 11 |
| 12 #ifndef VP9_DECODER_VP9_TREEREADER_H_ |
| 13 #define VP9_DECODER_VP9_TREEREADER_H_ |
| 14 |
| 15 #include "vp9/common/vp9_treecoder.h" |
| 16 |
| 17 #include "vp9/decoder/vp9_dboolhuff.h" |
| 18 |
| 19 typedef BOOL_DECODER vp9_reader; |
| 20 |
| 21 #define vp9_read decode_bool |
| 22 #define vp9_read_literal decode_value |
| 23 #define vp9_read_bit(R) vp9_read(R, vp9_prob_half) |
| 24 |
| 25 /* Intent of tree data structure is to make decoding trivial. */ |
| 26 |
| 27 static int treed_read(vp9_reader *const r, /* !!! must return a 0 or 1 !!! */ |
| 28 vp9_tree t, |
| 29 const vp9_prob *const p) { |
| 30 register vp9_tree_index i = 0; |
| 31 |
| 32 while ((i = t[ i + vp9_read(r, p[i >> 1])]) > 0); |
| 33 |
| 34 return -i; |
| 35 } |
| 36 |
| 37 #endif /* tree_reader_h */ |
OLD | NEW |