void write_int(FinalCompoundSymbolChances<BitChance, bits>& chancesIn, int nbits, int val) { #ifdef STATS chancesIn.sum += (double)val; chancesIn.qsum += (double)val*val; chancesIn.s_count++; #endif FinalCompoundSymbolBitCoder<BitChance, RAC, bits> bitCoder(table, rac, chancesIn); writer(bitCoder, nbits, val); }
void write_int(FinalCompoundSymbolChances<BitChance, bits>& chancesIn, int min, int max, int val) { #ifdef STATS chancesIn.sum += (double)val; chancesIn.qsum += (double)val*val; chancesIn.s_count++; #endif FinalCompoundSymbolBitCoder<BitChance, RAC, bits> bitCoder(table, rac, chancesIn); // printf("%i in %i..%i\n",val, min, max); writer<bits>(bitCoder, min, max, val); }
int read_int(FinalCompoundSymbolChances<BitChance, bits> &chancesIn, int nbits) { FinalCompoundSymbolBitCoder<BitChance, RAC, bits> bitCoder(table, rac, chancesIn); int val = reader(bitCoder, nbits); return val; }
int read_int(int nbits) { assert (nbits <= bits); SimpleSymbolBitCoder<BitChance, RAC, bits> bitCoder(table, ctx, rac); return reader(bitCoder, nbits); }
int read_int(int min, int max) { SimpleSymbolBitCoder<BitChance, RAC, bits> bitCoder(table, ctx, rac); return reader<bits, SimpleSymbolBitCoder<BitChance, RAC, bits>>(bitCoder, min, max); }
void write_int(CompoundSymbolChances<BitChance, bits>& chancesIn, std::vector<bool> &selectIn, int nbits, int val) { CompoundSymbolBitCoder<BitChance, RAC, bits> bitCoder(table, rac, chancesIn, selectIn); writer(bitCoder, nbits, val); }
int read_int(CompoundSymbolChances<BitChance, bits> &chancesIn, std::vector<bool> &selectIn, int nbits) { CompoundSymbolBitCoder<BitChance, RAC, bits> bitCoder(table, rac, chancesIn, selectIn); return reader(bitCoder, nbits); }
void write_int(CompoundSymbolChances<BitChance, bits>& chancesIn, std::vector<bool> &selectIn, int min, int max, int val) { if (min == max) { assert(val==min); return; } CompoundSymbolBitCoder<BitChance, RAC, bits> bitCoder(table, rac, chancesIn, selectIn); writer<bits>(bitCoder, min, max, val); }
int read_int(CompoundSymbolChances<BitChance, bits> &chancesIn, std::vector<bool> &selectIn, int min, int max) { if (min == max) { return min; } CompoundSymbolBitCoder<BitChance, RAC, bits> bitCoder(table, rac, chancesIn, selectIn); return reader<bits>(bitCoder, min, max); }
void FinalCompoundSymbolCoder<BitChance,RAC,bits>::write_int(FinalCompoundSymbolChances<BitChance, bits>& chancesIn, int nbits, int val) { FinalCompoundSymbolBitCoder<BitChance, RAC, bits> bitCoder(table, rac, chancesIn); writer(bitCoder, nbits, val); }
void write_int(FinalCompoundSymbolChances<BitChance, bits>& chancesIn, int min, int max, int val) { FinalCompoundSymbolBitCoder<BitChance, RAC, bits> bitCoder(table, rac, chancesIn); writer<bits>(bitCoder, min, max, val); }
int read_int(FinalCompoundSymbolChances<BitChance, bits> &chancesIn, int min, int max) { FinalCompoundSymbolBitCoder<BitChance, RAC, bits> bitCoder(table, rac, chancesIn); int val = reader<bits>(bitCoder, min, max); // printf("%i in %i..%i\n",val, min, max); return val; }