Add ec_dec_tell() to report the same information as ec_enc_tell() decode side. Remove ec_enc_tell() and replace it with ec_enc_tellf(): just request 0 fractional bits if you want an integer value.
git-svn-id: http://svn.xiph.org/trunk/ghost@14394 0101bb08-14d6-0310-b084-bc0e0c8e3800
diff --git a/libentcode/entenc.h b/libentcode/entenc.h
index 61f8987..ebaed88 100644
--- a/libentcode/entenc.h
+++ b/libentcode/entenc.h
@@ -65,18 +65,16 @@
/*Returns the number of bits "used" by the encoded symbols so far.
The actual number of bits may be larger, due to rounding to whole bytes, or
- smaller, due to trailing zeros that can be stripped.
- Return: The number of bits.*/
-long ec_enc_tell(ec_enc *_this);
-
-/*Returns the number of bits "used" by the encoded symbols so far.
- The actual number of bits may be larger, due to rounding to whole bytes, or
- smaller, due to trailing zeros that can be stripped.
+ smaller, due to trailing zeros that can be stripped, so this is not an
+ estimate of the true packet size.
+ This same number can be computed by the decoder, and is suitable for making
+ coding decisions.
_b: The number of extra bits of precision to include.
At most 16 will be accurate.
Return: The number of bits scaled by 2**_b.
- This will always be slightly larger than the exact value.*/
-long ec_enc_tellf(ec_enc *_this,int _b);
+ This will always be slightly larger than the exact value (e.g., all
+ rounding error is in the positive direction).*/
+long ec_enc_tell(ec_enc *_this,int _b);
/*Indicates that there are no more symbols to encode.
All reamining output bytes are flushed to the output buffer.