static void cook_imlt(COOKContext *q, float* inbuffer, float* outbuffer)

{

    int i;



    q->mdct_ctx.fft.imdct_calc(&q->mdct_ctx, outbuffer, inbuffer, q->mdct_tmp);



    for(i = 0; i < q->samples_per_channel; i++){

        float tmp = outbuffer[i];



        outbuffer[i] = q->mlt_window[i] * outbuffer[q->samples_per_channel + i];

        outbuffer[q->samples_per_channel + i] = q->mlt_window[q->samples_per_channel - 1 - i] * -tmp;

    }

}

static void cook_imlt(COOKContext *q, float* inbuffer, float* outbuffer)

{

    int i;



    q->mdct_ctx.fft.imdct_calc(&q->mdct_ctx, outbuffer, inbuffer, q->mdct_tmp);



    for(i = 0; i < q->samples_per_channel; i++){

        float tmp = outbuffer[i];



        outbuffer[i] = q->mlt_window[i] * outbuffer[q->samples_per_channel + i];

        outbuffer[q->samples_per_channel + i] = q->mlt_window[q->samples_per_channel - 1 - i] * -tmp;

    }

}

static void FUNC_0(COOKContext *VAR_0, float* VAR_1, float* VAR_2)

{

    int VAR_3;



    VAR_0->mdct_ctx.fft.imdct_calc(&VAR_0->mdct_ctx, VAR_2, VAR_1, VAR_0->mdct_tmp);



    for(VAR_3 = 0; VAR_3 < VAR_0->samples_per_channel; VAR_3++){

        float tmp = VAR_2[VAR_3];



        VAR_2[VAR_3] = VAR_0->mlt_window[VAR_3] * VAR_2[VAR_0->samples_per_channel + VAR_3];

        VAR_2[VAR_0->samples_per_channel + VAR_3] = VAR_0->mlt_window[VAR_0->samples_per_channel - 1 - VAR_3] * -tmp;

    }

}

static void FUNC_0(COOKContext *VAR_0, float* VAR_1, float* VAR_2)
{ int VAR_3; VAR_0->mdct_ctx.fft.imdct_calc(&VAR_0->mdct_ctx, VAR_2, VAR_1, VAR_0->mdct_tmp); for(VAR_3 = 0; VAR_3 < VAR_0->samples_per_channel; VAR_3++){ float tmp = VAR_2[VAR_3]; VAR_2[VAR_3] = VAR_0->mlt_window[VAR_3] * VAR_2[VAR_0->samples_per_channel + VAR_3]; VAR_2[VAR_0->samples_per_channel + VAR_3] = VAR_0->mlt_window[VAR_0->samples_per_channel - 1 - VAR_3] * -tmp; } }