Don't rebalance bits for itheta=0 or 16384
[opus.git] / libcelt / cwrs.h
index 6366297..bccbcf2 100644 (file)
@@ -1,4 +1,7 @@
-/* (C) 2007-2008 Timothy Terriberry */
+/* Copyright (c) 2007-2008 CSIRO
+   Copyright (c) 2007-2009 Xiph.Org Foundation
+   Copyright (c) 2007-2009 Timothy B. Terriberry
+   Written by Timothy B. Terriberry and Jean-Marc Valin */
 /*
    Redistribution and use in source and binary forms, with or without
    modification, are permitted provided that the following conditions
 #include "entenc.h"
 #include "entdec.h"
 
-/* Returns log of an integer with fractional accuracy */
-int log2_frac64(ec_uint64 val, int frac);
-/* Whether the CWRS codebook will fit into 32 bits */
-int fits_in32(int _n, int _m);
-/* Whether the CWRS codebook will fit into 64 bits */
-int fits_in64(int _n, int _m);
+int log2_frac(ec_uint32 val, int frac);
 
-/* 32-bit versions */
-celt_uint32_t ncwrs_u32(int _n,int _m,celt_uint32_t *_u);
+void get_required_bits(celt_int16 *bits, int N, int K, int frac);
 
-void cwrsi32(int _n,int _m,celt_uint32_t _i,int *_x,int *_s,
- celt_uint32_t *_u);
-
-celt_uint32_t icwrs32(int _n,int _m,const int *_x,const int *_s,
- celt_uint32_t *_u);
-
-/* 64-bit versions */
-celt_uint64_t ncwrs_u64(int _n,int _m,celt_uint64_t *_u);
-
-celt_uint64_t ncwrs_unext64(int _n,celt_uint64_t *_u);
-
-void cwrsi64(int _n,int _m,celt_uint64_t _i,int *_x,int *_s,
- celt_uint64_t *_u);
-
-celt_uint64_t icwrs64(int _n,int _m,const int *_x,const int *_s,
- celt_uint64_t *_u);
-
-
-void comb2pulse(int _n,int _m,int * restrict _y,const int *_x,const int *_s);
-
-void pulse2comb(int _n,int _m,int *_x,int *_s,const int *_y);
-
-int get_required_bits(int N, int K, int frac);
-
-void encode_pulses(int *_y, int N, int K, ec_enc *enc);
+void encode_pulses(const int *_y, int N, int K, ec_enc *enc);
 
 void decode_pulses(int *_y, int N, int K, ec_dec *dec);