Schroedinger Reference Manual | ||||
---|---|---|---|---|
Top | Description |
struct SchroArith; struct SchroArithContext; SchroArith * schro_arith_new (void
); void schro_arith_free (SchroArith *arith
); void schro_arith_decode_init (SchroArith *arith
,SchroBuffer *buffer
); void schro_arith_encode_init (SchroArith *arith
,SchroBuffer *buffer
); void schro_arith_flush (SchroArith *arith
); int schro_arith_decode_bit (SchroArith *arith
,unsigned int context
); void schro_arith_decode_flush (SchroArith *arith
); int schro_arith_decode_sint (SchroArith *arith
,unsigned int cont_context
,unsigned int value_context
,unsigned int sign_context
); int schro_arith_decode_uint (SchroArith *arith
,unsigned int cont_context
,unsigned int value_context
); void schro_arith_encode_bit (SchroArith *arith
,int context
,int value
); void schro_arith_encode_sint (SchroArith *arith
,int cont_context
,int value_context
,int sign_context
,int value
); void schro_arith_encode_uint (SchroArith *arith
,int cont_context
,int value_context
,int value
); void schro_arith_estimate_init (SchroArith *arith
); void schro_arith_estimate_sint (SchroArith *arith
,int cont_context
,int value_context
,int sign_context
,int value
); void schro_arith_estimate_uint (SchroArith *arith
,int cont_context
,int value_context
,int value
);
struct SchroArith { SchroBuffer *buffer; uint8_t *dataptr; uintptr_t offset; uint32_t range[2]; uint32_t code; uint32_t range_size; int cntr; int carry; uint16_t probabilities[SCHRO_CTX_LAST]; uint16_t lut[512]; SchroArithContext contexts[SCHRO_CTX_LAST]; };
struct SchroArithContext { unsigned int next; #ifdef unused int stat_range; int n_bits; int n_symbols; int ones; #endif };
int schro_arith_decode_sint (SchroArith *arith
,unsigned int cont_context
,unsigned int value_context
,unsigned int sign_context
);
int schro_arith_decode_uint (SchroArith *arith
,unsigned int cont_context
,unsigned int value_context
);
void schro_arith_encode_sint (SchroArith *arith
,int cont_context
,int value_context
,int sign_context
,int value
);
void schro_arith_encode_uint (SchroArith *arith
,int cont_context
,int value_context
,int value
);
void schro_arith_estimate_sint (SchroArith *arith
,int cont_context
,int value_context
,int sign_context
,int value
);
void schro_arith_estimate_uint (SchroArith *arith
,int cont_context
,int value_context
,int value
);