|
#define | OPJ_SKIP_POISON |
|
#define | OPJ_WS(i) v->mem[(i)*2] |
|
#define | OPJ_WD(i) v->mem[(1+(i)*2)] |
|
#define | VREG_INT_COUNT 4 |
| Number of int32 values in a SSE2 register. More...
|
|
#define | PARALLEL_COLS_53 (2*VREG_INT_COUNT) |
| Number of columns that we can process in parallel in the vertical pass. More...
|
|
#define | OPJ_S(i) a[(i)*2] |
|
#define | OPJ_D(i) a[(1+(i)*2)] |
|
#define | OPJ_S_(i) ((i)<0?OPJ_S(0):((i)>=sn?OPJ_S(sn-1):OPJ_S(i))) |
|
#define | OPJ_D_(i) ((i)<0?OPJ_D(0):((i)>=dn?OPJ_D(dn-1):OPJ_D(i))) |
|
#define | OPJ_SS_(i) ((i)<0?OPJ_S(0):((i)>=dn?OPJ_S(dn-1):OPJ_S(i))) |
|
#define | OPJ_DD_(i) ((i)<0?OPJ_D(0):((i)>=sn?OPJ_D(sn-1):OPJ_D(i))) |
|
#define | OPJ_Sc(i) tmp[(i)*2* NB_ELTS_V8 + c] |
|
#define | OPJ_Dc(i) tmp[((1+(i)*2))* NB_ELTS_V8 + c] |
|
#define | OPJ_S_off(i, off) a[(OPJ_UINT32)(i)*2*4+off] |
|
#define | OPJ_D_off(i, off) a[(1+(OPJ_UINT32)(i)*2)*4+off] |
|
#define | OPJ_S__off(i, off) ((i)<0?OPJ_S_off(0,off):((i)>=sn?OPJ_S_off(sn-1,off):OPJ_S_off(i,off))) |
|
#define | OPJ_D__off(i, off) ((i)<0?OPJ_D_off(0,off):((i)>=dn?OPJ_D_off(dn-1,off):OPJ_D_off(i,off))) |
|
#define | OPJ_SS__off(i, off) ((i)<0?OPJ_S_off(0,off):((i)>=dn?OPJ_S_off(dn-1,off):OPJ_S_off(i,off))) |
|
#define | OPJ_DD__off(i, off) ((i)<0?OPJ_D_off(0,off):((i)>=sn?OPJ_D_off(sn-1,off):OPJ_D_off(i,off))) |
|
|
static void | opj_idwt53_h_cas0 (OPJ_INT32 *tmp, const OPJ_INT32 sn, const OPJ_INT32 len, OPJ_INT32 *tiledp) |
|
static void | opj_idwt53_h_cas1 (OPJ_INT32 *tmp, const OPJ_INT32 sn, const OPJ_INT32 len, OPJ_INT32 *tiledp) |
|
static void | opj_idwt53_h (const opj_dwt_t *dwt, OPJ_INT32 *tiledp) |
|
static void | opj_idwt3_v_cas0 (OPJ_INT32 *tmp, const OPJ_INT32 sn, const OPJ_INT32 len, OPJ_INT32 *tiledp_col, const OPJ_SIZE_T stride) |
| Vertical inverse 5x3 wavelet transform for one column, when top-most pixel is on even coordinate. More...
|
|
static void | opj_idwt3_v_cas1 (OPJ_INT32 *tmp, const OPJ_INT32 sn, const OPJ_INT32 len, OPJ_INT32 *tiledp_col, const OPJ_SIZE_T stride) |
| Vertical inverse 5x3 wavelet transform for one column, when top-most pixel is on odd coordinate. More...
|
|
static void | opj_idwt53_v (const opj_dwt_t *dwt, OPJ_INT32 *tiledp_col, OPJ_SIZE_T stride, OPJ_INT32 nb_cols) |
|
static void | opj_dwt_encode_step1_combined (OPJ_FLOAT32 *fw, OPJ_UINT32 iters_c1, OPJ_UINT32 iters_c2, const OPJ_FLOAT32 c1, const OPJ_FLOAT32 c2) |
|
static void | opj_dwt_encode_step2 (OPJ_FLOAT32 *fl, OPJ_FLOAT32 *fw, OPJ_UINT32 end, OPJ_UINT32 m, OPJ_FLOAT32 c) |
|
static void | opj_dwt_encode_and_deinterleave_h_one_row (void *rowIn, void *tmpIn, OPJ_UINT32 width, OPJ_BOOL even) |
| Process one line for the horizontal pass of the 5x3 forward transform. More...
|
|
static void | opj_dwt_encode_and_deinterleave_h_one_row_real (void *rowIn, void *tmpIn, OPJ_UINT32 width, OPJ_BOOL even) |
| Process one line for the horizontal pass of the 9x7 forward transform. More...
|
|
static void | opj_dwt_encode_h_func (void *user_data, opj_tls_t *tls) |
|
static void | opj_dwt_encode_v_func (void *user_data, opj_tls_t *tls) |
|
static void | opj_dwt_fetch_cols_vertical_pass (const void *arrayIn, void *tmpOut, OPJ_UINT32 height, OPJ_UINT32 stride_width, OPJ_UINT32 cols) |
| Fetch up to cols <= NB_ELTS_V8 for each line, and put them in tmpOut. More...
|
|
static INLINE void | opj_dwt_deinterleave_v_cols (const OPJ_INT32 *OPJ_RESTRICT src, OPJ_INT32 *OPJ_RESTRICT dst, OPJ_INT32 dn, OPJ_INT32 sn, OPJ_UINT32 stride_width, OPJ_INT32 cas, OPJ_UINT32 cols) |
|
static void | opj_dwt_encode_and_deinterleave_v (void *arrayIn, void *tmpIn, OPJ_UINT32 height, OPJ_BOOL even, OPJ_UINT32 stride_width, OPJ_UINT32 cols) |
|
static void | opj_v8dwt_encode_step1 (OPJ_FLOAT32 *fw, OPJ_UINT32 end, const OPJ_FLOAT32 cst) |
|
static void | opj_v8dwt_encode_step2 (OPJ_FLOAT32 *fl, OPJ_FLOAT32 *fw, OPJ_UINT32 end, OPJ_UINT32 m, OPJ_FLOAT32 cst) |
|
static void | opj_dwt_encode_and_deinterleave_v_real (void *arrayIn, void *tmpIn, OPJ_UINT32 height, OPJ_BOOL even, OPJ_UINT32 stride_width, OPJ_UINT32 cols) |
|
OPJ_BOOL | opj_dwt_encode (opj_tcd_t *p_tcd, opj_tcd_tilecomp_t *tilec) |
| Forward 5-3 wavelet transform in 2-D. More...
|
|
OPJ_BOOL | opj_dwt_decode (opj_tcd_t *p_tcd, opj_tcd_tilecomp_t *tilec, OPJ_UINT32 numres) |
| Inverse 5-3 wavelet transform in 2-D. More...
|
|
OPJ_FLOAT64 | opj_dwt_getnorm (OPJ_UINT32 level, OPJ_UINT32 orient) |
| Get the norm of a wavelet function of a subband at a specified level for the reversible 5-3 DWT. More...
|
|
OPJ_BOOL | opj_dwt_encode_real (opj_tcd_t *p_tcd, opj_tcd_tilecomp_t *tilec) |
| Forward 9-7 wavelet transform in 2-D. More...
|
|
OPJ_FLOAT64 | opj_dwt_getnorm_real (OPJ_UINT32 level, OPJ_UINT32 orient) |
| Get the norm of a wavelet function of a subband at a specified level for the irreversible 9-7 DWT. More...
|
|
void | opj_dwt_calc_explicit_stepsizes (opj_tccp_t *tccp, OPJ_UINT32 prec) |
| Explicit calculation of the Quantization Stepsizes. More...
|
|
static void | opj_dwt_decode_h_func (void *user_data, opj_tls_t *tls) |
|
static void | opj_dwt_decode_v_func (void *user_data, opj_tls_t *tls) |
|
static void | opj_dwt_interleave_partial_h (OPJ_INT32 *dest, OPJ_INT32 cas, opj_sparse_array_int32_t *sa, OPJ_UINT32 sa_line, OPJ_UINT32 sn, OPJ_UINT32 win_l_x0, OPJ_UINT32 win_l_x1, OPJ_UINT32 win_h_x0, OPJ_UINT32 win_h_x1) |
|
static void | opj_dwt_interleave_partial_v (OPJ_INT32 *dest, OPJ_INT32 cas, opj_sparse_array_int32_t *sa, OPJ_UINT32 sa_col, OPJ_UINT32 nb_cols, OPJ_UINT32 sn, OPJ_UINT32 win_l_y0, OPJ_UINT32 win_l_y1, OPJ_UINT32 win_h_y0, OPJ_UINT32 win_h_y1) |
|
static void | opj_dwt_decode_partial_1 (OPJ_INT32 *a, OPJ_INT32 dn, OPJ_INT32 sn, OPJ_INT32 cas, OPJ_INT32 win_l_x0, OPJ_INT32 win_l_x1, OPJ_INT32 win_h_x0, OPJ_INT32 win_h_x1) |
|
static void | opj_dwt_decode_partial_1_parallel (OPJ_INT32 *a, OPJ_UINT32 nb_cols, OPJ_INT32 dn, OPJ_INT32 sn, OPJ_INT32 cas, OPJ_INT32 win_l_x0, OPJ_INT32 win_l_x1, OPJ_INT32 win_h_x0, OPJ_INT32 win_h_x1) |
|
static void | opj_dwt_get_band_coordinates (opj_tcd_tilecomp_t *tilec, OPJ_UINT32 resno, OPJ_UINT32 bandno, OPJ_UINT32 tcx0, OPJ_UINT32 tcy0, OPJ_UINT32 tcx1, OPJ_UINT32 tcy1, OPJ_UINT32 *tbx0, OPJ_UINT32 *tby0, OPJ_UINT32 *tbx1, OPJ_UINT32 *tby1) |
|
static void | opj_dwt_segment_grow (OPJ_UINT32 filter_width, OPJ_UINT32 max_size, OPJ_UINT32 *start, OPJ_UINT32 *end) |
|
static opj_sparse_array_int32_t * | opj_dwt_init_sparse_array (opj_tcd_tilecomp_t *tilec, OPJ_UINT32 numres) |
|
static void | opj_v8dwt_interleave_h (opj_v8dwt_t *OPJ_RESTRICT dwt, OPJ_FLOAT32 *OPJ_RESTRICT a, OPJ_UINT32 width, OPJ_UINT32 remaining_height) |
|
static void | opj_v8dwt_interleave_partial_h (opj_v8dwt_t *dwt, opj_sparse_array_int32_t *sa, OPJ_UINT32 sa_line, OPJ_UINT32 remaining_height) |
|
static INLINE void | opj_v8dwt_interleave_v (opj_v8dwt_t *OPJ_RESTRICT dwt, OPJ_FLOAT32 *OPJ_RESTRICT a, OPJ_UINT32 width, OPJ_UINT32 nb_elts_read) |
|
static void | opj_v8dwt_interleave_partial_v (opj_v8dwt_t *OPJ_RESTRICT dwt, opj_sparse_array_int32_t *sa, OPJ_UINT32 sa_col, OPJ_UINT32 nb_elts_read) |
|
static void | opj_v8dwt_decode_step1 (opj_v8_t *w, OPJ_UINT32 start, OPJ_UINT32 end, const OPJ_FLOAT32 c) |
|
static void | opj_v8dwt_decode_step2 (opj_v8_t *l, opj_v8_t *w, OPJ_UINT32 start, OPJ_UINT32 end, OPJ_UINT32 m, OPJ_FLOAT32 c) |
|
static void | opj_v8dwt_decode (opj_v8dwt_t *OPJ_RESTRICT dwt) |
|
static void | opj_dwt97_decode_h_func (void *user_data, opj_tls_t *tls) |
|
static void | opj_dwt97_decode_v_func (void *user_data, opj_tls_t *tls) |
|
static OPJ_BOOL | opj_dwt_decode_tile_97 (opj_thread_pool_t *tp, opj_tcd_tilecomp_t *OPJ_RESTRICT tilec, OPJ_UINT32 numres) |
|
static OPJ_BOOL | opj_dwt_decode_partial_97 (opj_tcd_tilecomp_t *OPJ_RESTRICT tilec, OPJ_UINT32 numres) |
|
OPJ_BOOL | opj_dwt_decode_real (opj_tcd_t *p_tcd, opj_tcd_tilecomp_t *OPJ_RESTRICT tilec, OPJ_UINT32 numres) |
| Inverse 9-7 wavelet transform in 2-D. More...
|
|