|
Grok 15.1.0
|
#include <T1.h>
Public Member Functions | |
| T1 (bool isCompressor, uint32_t maxCblkW, uint32_t maxCblkH) | |
| ~T1 () | |
| bool | decompress_cblk (DecompressCodeblock *cblk, uint8_t *compressed_data, uint8_t orientation, uint32_t cblksty) |
| void | code_block_enc_deallocate (cblk_enc *p_code_block) |
| ENCODE ////////////////////////////////////////////////////. | |
| bool | alloc (uint32_t w, uint32_t h) |
| double | compress_cblk (cblk_enc *cblk, uint32_t max, uint8_t orientation, uint16_t compno, uint8_t level, uint8_t qmfbid, double stepsize, uint32_t cblksty, const double *mct_norms, uint16_t mct_numcomps, bool doRateControl) |
| int32_t * | getUncompressedData (void) |
| void | attachUncompressedData (int32_t *data, uint32_t w, uint32_t h) |
| void | allocCompressedData (size_t len) |
| uint8_t * | getCompressedDataBuffer (void) |
Static Public Member Functions | |
| static double | getnorm (uint32_t level, uint8_t orientation, bool reversible) |
Public Attributes | |
| mqcoder | coder |
Private Member Functions | |
| bool | allocUncompressedData (size_t len) |
| void | deallocUncompressedData (void) |
| template<uint32_t w, uint32_t h, bool vsc> | |
| void | dec_clnpass (int32_t bpno) |
| void | dec_clnpass (int32_t bpno, int32_t cblksty) |
| void | dec_clnpass_check_segsym (int32_t cblksty) |
| void | dec_sigpass_raw (int32_t bpno, int32_t cblksty) |
| void | dec_refpass_raw (int32_t bpno) |
| void | dec_sigpass_mqc (int32_t bpno, int32_t cblksty) |
| void | dec_refpass_mqc (int32_t bpno) |
| void | dec_refpass_step_raw (grk_flag *flagsp, int32_t *datap, int32_t poshalf, uint32_t ci) |
| void | dec_sigpass_step_raw (grk_flag *flagsp, int32_t *datap, int32_t oneplushalf, uint32_t vsc, uint32_t ci) |
| void | enc_clnpass (int32_t bpno, int32_t *nmsedec, uint32_t cblksty) |
| void | enc_sigpass (int32_t bpno, int32_t *nmsedec, uint8_t type, uint32_t cblksty) |
| void | enc_refpass (int32_t bpno, int32_t *nmsedec, uint8_t type) |
| int | enc_is_term_pass (cblk_enc *cblk, uint32_t cblksty, int32_t bpno, uint32_t passtype) |
| void | code_block_enc_allocate (cblk_enc *p_code_block) |
| double | getnorm_53 (uint32_t level, uint8_t orientation) |
| Get the norm of a wavelet function of a subband at a specified level for the reversible 5-3 DWT. | |
| double | getnorm_97 (uint32_t level, uint8_t orientation) |
| Get the norm of a wavelet function of a subband at a specified level for the irreversible 9-7 DWT. | |
| double | getwmsedec (int32_t nmsedec, uint16_t compno, uint32_t level, uint8_t orientation, int32_t bpno, uint32_t qmfbid, double stepsize, const double *mct_norms, uint32_t mct_numcomps) |
Private Attributes | |
| int32_t * | uncompressedData |
| size_t | uncompressedDataLen |
| bool | ownsUncompressedData |
| uint32_t | w |
| uint32_t | h |
| uint32_t | uncompressedDataStride |
| uint8_t * | compressed_data |
| size_t | compressedDataLen |
| grk_flag * | flags |
| Flags used by decompressor and compressor. | |
| uint32_t | flagssize |
| bool | compressor |
| grk::T1::T1 | ( | bool | isCompressor, |
| uint32_t | maxCblkW, | ||
| uint32_t | maxCblkH ) |
| grk::T1::~T1 | ( | ) |
References compressed_data, deallocUncompressedData(), flags, and grk::grk_aligned_free().
| bool grk::T1::alloc | ( | uint32_t | w, |
| uint32_t | h ) |
References allocUncompressedData(), compressor, flags, flagssize, grk::grk_aligned_free(), grk::grk_aligned_malloc(), grk::grklog, h, T1_PI_0, T1_PI_1, T1_PI_2, T1_PI_3, uncompressedData, uncompressedDataStride, and w.
Referenced by attachUncompressedData().
| void grk::T1::allocCompressedData | ( | size_t | len | ) |
References compressed_data, and compressedDataLen.
Referenced by T1().
|
private |
References deallocUncompressedData(), grk::grk_aligned_malloc(), grk::grklog, ownsUncompressedData, uncompressedData, and uncompressedDataLen.
Referenced by alloc().
| void grk::T1::attachUncompressedData | ( | int32_t * | data, |
| uint32_t | w, | ||
| uint32_t | h ) |
References alloc(), deallocUncompressedData(), and uncompressedData.
|
private |
References grk::cblk_enc::passes.
Referenced by compress_cblk().
| void grk::T1::code_block_enc_deallocate | ( | cblk_enc * | code_block | ) |
ENCODE ////////////////////////////////////////////////////.
Deallocate the compressing data of the given precinct.
References grk::cblk_enc::passes.
| double grk::T1::compress_cblk | ( | cblk_enc * | cblk, |
| uint32_t | max, | ||
| uint8_t | orientation, | ||
| uint16_t | compno, | ||
| uint8_t | level, | ||
| uint8_t | qmfbid, | ||
| double | stepsize, | ||
| uint32_t | cblksty, | ||
| const double * | mct_norms, | ||
| uint16_t | mct_numcomps, | ||
| bool | doRateControl ) |
References code_block_enc_allocate(), coder, grk::cblk_enc::data, enc_clnpass(), enc_is_term_pass(), enc_refpass(), enc_sigpass(), grk::floorlog2(), getwmsedec(), GRK_CBLKSTY_LAZY, GRK_CBLKSTY_PTERM, GRK_CBLKSTY_RESET, GRK_CBLKSTY_SEGSYM, lut_ctxno_zc, grk::mqc_bypass_flush_enc(), grk::mqc_bypass_get_extra_bytes_enc(), grk::mqc_bypass_init_enc(), grk::mqc_erterm_enc(), grk::mqc_flush_enc(), grk::mqc_init_enc(), grk::mqc_numbytes_enc(), grk::mqc_resetstates(), grk::mqc_restart_init_enc(), grk::mqc_segmark_enc(), grk::cblk_enc::numbps, grk::cblk_enc::numPassesTotal, grk::cblk_enc::passes, grk::pass_enc::rate, T1_NMSEDEC_FRACBITS, T1_TYPE_MQ, T1_TYPE_RAW, and grk::pass_enc::term.
|
private |
References grk::grk_aligned_free(), ownsUncompressedData, and uncompressedData.
Referenced by allocUncompressedData(), attachUncompressedData(), and ~T1().
|
private |
References dec_clnpass_internal, h, and w.
Referenced by dec_clnpass(), and decompress_cblk().
|
private |
References dec_clnpass(), dec_clnpass_check_segsym(), dec_clnpass_internal, GRK_CBLKSTY_VSC, h, and w.
|
private |
References coder, GRK_CBLKSTY_SEGSYM, grk::grklog, mqc_decode, mqc_setcurctx, and T1_CTXNO_UNI.
Referenced by dec_clnpass().
|
private |
References dec_refpass_mqc_internal, h, and w.
Referenced by decompress_cblk().
|
private |
References dec_refpass_step_raw(), flags, h, uncompressedData, and w.
Referenced by decompress_cblk().
|
inlineprivate |
References coder, grk::mqc_raw_decode(), T1_MU_THIS, T1_PI_THIS, and T1_SIGMA_THIS.
Referenced by dec_refpass_raw().
|
private |
References dec_sigpass_mqc_internal, GRK_CBLKSTY_VSC, h, and w.
Referenced by decompress_cblk().
|
private |
References dec_sigpass_step_raw(), flags, GRK_CBLKSTY_VSC, h, uncompressedData, and w.
Referenced by decompress_cblk().
|
inlineprivate |
References coder, grk::mqc_raw_decode(), T1_PI_THIS, T1_SIGMA_NEIGHBOURS, T1_SIGMA_THIS, grk::update_flags(), and w.
Referenced by dec_sigpass_raw().
| bool grk::T1::decompress_cblk | ( | DecompressCodeblock * | cblk, |
| uint8_t * | compressed_data, | ||
| uint8_t | orientation, | ||
| uint32_t | cblksty ) |
References coder, compressed_data, dec_clnpass(), dec_refpass_mqc(), dec_refpass_raw(), dec_sigpass_mqc(), dec_sigpass_raw(), grk::DecompressCodeblock::getNumSegments(), grk::DecompressCodeblock::getSegment(), GRK_CBLKSTY_LAZY, GRK_CBLKSTY_PTERM, GRK_CBLKSTY_RESET, grk::grklog, lut_ctxno_zc, grk::maxBitPlanesGRK, grk::mqc_finish_dec(), grk::mqc_init_dec(), grk::mqc_raw_init_dec(), grk::mqc_resetstates(), grk::Codeblock::numbps, T1_TYPE_MQ, and T1_TYPE_RAW.
|
private |
References coder, flags, grk::getctxno_sc(), grk::getctxno_zc(), grk::getctxtno_sc_or_spb_index(), grk::getnmsedec_sig(), grk::getspb(), GRK_CBLKSTY_VSC, h, mqc_encode_macro, POP_MQC, PUSH_MQC, smr_abs, smr_sign, T1_CTXNO_AGG, T1_CTXNO_UNI, T1_NMSEDEC_FRACBITS, T1_PI_0, T1_PI_1, T1_PI_2, T1_PI_3, T1_PI_THIS, T1_SIGMA_10, T1_SIGMA_13, T1_SIGMA_4, T1_SIGMA_7, T1_SIGMA_THIS, uncompressedData, uncompressedDataStride, grk::update_flags(), and w.
Referenced by compress_cblk().
|
private |
References GRK_CBLKSTY_LAZY, GRK_CBLKSTY_TERMALL, and grk::cblk_enc::numbps.
Referenced by compress_cblk().
|
private |
References coder, enc_refpass_step_macro, flags, h, POP_MQC, PUSH_MQC, T1_NMSEDEC_FRACBITS, T1_PI_0, T1_PI_1, T1_PI_2, T1_PI_3, T1_SIGMA_10, T1_SIGMA_13, T1_SIGMA_4, T1_SIGMA_7, uncompressedData, uncompressedDataStride, and w.
Referenced by compress_cblk().
|
private |
References coder, enc_sigpass_step_macro, flags, GRK_CBLKSTY_VSC, h, POP_MQC, PUSH_MQC, T1_NMSEDEC_FRACBITS, uncompressedData, uncompressedDataStride, and w.
Referenced by compress_cblk().
| uint8_t * grk::T1::getCompressedDataBuffer | ( | void | ) |
References compressed_data.
|
static |
References grk::dwt_norms, and grk::dwt_norms_real.
Referenced by grk::Quantizer::generate(), getnorm_53(), and getnorm_97().
|
private |
Get the norm of a wavelet function of a subband at a specified level for the reversible 5-3 DWT.
| level | Level of the wavelet function |
| orientation | Band of the wavelet function |
References getnorm().
Referenced by getwmsedec().
|
private |
Get the norm of a wavelet function of a subband at a specified level for the irreversible 9-7 DWT.
| level | Level of the wavelet function |
| orientation | Band of the wavelet function |
References getnorm().
Referenced by getwmsedec().
| int32_t * grk::T1::getUncompressedData | ( | void | ) |
References uncompressedData.
|
private |
References getnorm_53(), and getnorm_97().
Referenced by compress_cblk().
| mqcoder grk::T1::coder |
|
private |
Referenced by allocCompressedData(), decompress_cblk(), getCompressedDataBuffer(), T1(), and ~T1().
|
private |
Referenced by allocCompressedData(), and T1().
|
private |
Flags used by decompressor and compressor.
Such that flags[1+0] is for state of col=0,row=0..3, flags[1+1] for col=1, row=0..3, flags[1+flags_stride] for col=0,row=4..7, ... This array avoids too much cache trashing when processing by 4 vertical samples as done in the various decoding steps.
Referenced by alloc(), dec_refpass_raw(), dec_sigpass_raw(), enc_clnpass(), enc_refpass(), enc_sigpass(), T1(), and ~T1().
|
private |
Referenced by alloc(), dec_clnpass(), dec_clnpass(), dec_refpass_mqc(), dec_refpass_raw(), dec_sigpass_mqc(), dec_sigpass_raw(), enc_clnpass(), enc_refpass(), enc_sigpass(), and T1().
|
private |
Referenced by allocUncompressedData(), deallocUncompressedData(), and T1().
|
private |
|
private |
Referenced by allocUncompressedData(), and T1().
|
private |
Referenced by alloc(), enc_clnpass(), enc_refpass(), enc_sigpass(), and T1().
|
private |