static inline void mct_decode(Jpeg2000DecoderContext *s, Jpeg2000Tile *tile)

{

    int i, csize = 1;

    void *src[3];



    for (i = 1; i < 3; i++)

        if (tile->codsty[0].transform != tile->codsty[i].transform) {

            av_log(s->avctx, AV_LOG_ERROR, "Transforms mismatch, MCT not supported\n");

            return;

        }



    for (i = 0; i < 3; i++)

        if (tile->codsty[0].transform == FF_DWT97)

            src[i] = tile->comp[i].f_data;

        else

            src[i] = tile->comp[i].i_data;



    for (i = 0; i < 2; i++)

        csize *= tile->comp[0].coord[i][1] - tile->comp[0].coord[i][0];



    s->dsp.mct_decode[tile->codsty[0].transform](src[0], src[1], src[2], csize);

}

static inline void mct_decode(Jpeg2000DecoderContext *s, Jpeg2000Tile *tile)

{

    int i, csize = 1;

    void *src[3];



    for (i = 1; i < 3; i++)

        if (tile->codsty[0].transform != tile->codsty[i].transform) {

            av_log(s->avctx, AV_LOG_ERROR, "Transforms mismatch, MCT not supported\n");

            return;

        }



    for (i = 0; i < 3; i++)

        if (tile->codsty[0].transform == FF_DWT97)

            src[i] = tile->comp[i].f_data;

        else

            src[i] = tile->comp[i].i_data;



    for (i = 0; i < 2; i++)

        csize *= tile->comp[0].coord[i][1] - tile->comp[0].coord[i][0];



    s->dsp.mct_decode[tile->codsty[0].transform](src[0], src[1], src[2], csize);

}

static inline void FUNC_0(Jpeg2000DecoderContext *VAR_0, Jpeg2000Tile *VAR_1)

{

    int VAR_2, VAR_3 = 1;

    void *VAR_4[3];



    for (VAR_2 = 1; VAR_2 < 3; VAR_2++)

        if (VAR_1->codsty[0].transform != VAR_1->codsty[VAR_2].transform) {

            av_log(VAR_0->avctx, AV_LOG_ERROR, "Transforms mismatch, MCT not supported\n");

            return;

        }



    for (VAR_2 = 0; VAR_2 < 3; VAR_2++)

        if (VAR_1->codsty[0].transform == FF_DWT97)

            VAR_4[VAR_2] = VAR_1->comp[VAR_2].f_data;

        else

            VAR_4[VAR_2] = VAR_1->comp[VAR_2].i_data;



    for (VAR_2 = 0; VAR_2 < 2; VAR_2++)

        VAR_3 *= VAR_1->comp[0].coord[VAR_2][1] - VAR_1->comp[0].coord[VAR_2][0];



    VAR_0->dsp.FUNC_0[VAR_1->codsty[0].transform](VAR_4[0], VAR_4[1], VAR_4[2], VAR_3);

}

static inline void FUNC_0(Jpeg2000DecoderContext *VAR_0, Jpeg2000Tile *VAR_1)
{ int VAR_2, VAR_3 = 1; void *VAR_4[3]; for (VAR_2 = 1; VAR_2 < 3; VAR_2++) if (VAR_1->codsty[0].transform != VAR_1->codsty[VAR_2].transform) { av_log(VAR_0->avctx, AV_LOG_ERROR, "Transforms mismatch, MCT not supported\n"); return; } for (VAR_2 = 0; VAR_2 < 3; VAR_2++) if (VAR_1->codsty[0].transform == FF_DWT97)
VAR_4[VAR_2] = VAR_1->comp[VAR_2].f_data; else
VAR_4[VAR_2] = VAR_1->comp[VAR_2].i_data; for (VAR_2 = 0; VAR_2 < 2; VAR_2++) VAR_3 *= VAR_1->comp[0].coord[VAR_2][1] - VAR_1->comp[0].coord[VAR_2][0]; VAR_0->dsp.FUNC_0[VAR_1->codsty[0].transform](VAR_4[0], VAR_4[1], VAR_4[2], VAR_3); }