static int get_cod(Jpeg2000DecoderContext *s, Jpeg2000CodingStyle *c,

                   uint8_t *properties)

{

    Jpeg2000CodingStyle tmp;

    int compno;



    if (s->buf_end - s->buf < 5)

        return AVERROR(EINVAL);



    tmp.log2_prec_width  =

    tmp.log2_prec_height = 15;



    tmp.csty = bytestream_get_byte(&s->buf);



    // get progression order

    tmp.prog_order = bytestream_get_byte(&s->buf);



    tmp.nlayers = bytestream_get_be16(&s->buf);

    tmp.mct     = bytestream_get_byte(&s->buf); // multiple component transformation



    get_cox(s, &tmp);

    for (compno = 0; compno < s->ncomponents; compno++)

        if (!(properties[compno] & HAD_COC))

            memcpy(c + compno, &tmp, sizeof(tmp));

    return 0;

}

static int get_cod(Jpeg2000DecoderContext *s, Jpeg2000CodingStyle *c,

                   uint8_t *properties)

{

    Jpeg2000CodingStyle tmp;

    int compno;



    if (s->buf_end - s->buf < 5)

        return AVERROR(EINVAL);



    tmp.log2_prec_width  =

    tmp.log2_prec_height = 15;



    tmp.csty = bytestream_get_byte(&s->buf);



    

    tmp.prog_order = bytestream_get_byte(&s->buf);



    tmp.nlayers = bytestream_get_be16(&s->buf);

    tmp.mct     = bytestream_get_byte(&s->buf); 



    get_cox(s, &tmp);

    for (compno = 0; compno < s->ncomponents; compno++)

        if (!(properties[compno] & HAD_COC))

            memcpy(c + compno, &tmp, sizeof(tmp));

    return 0;

}

static int FUNC_0(Jpeg2000DecoderContext *VAR_0, Jpeg2000CodingStyle *VAR_1,

                   uint8_t *VAR_2)

{

    Jpeg2000CodingStyle tmp;

    int VAR_3;



    if (VAR_0->buf_end - VAR_0->buf < 5)

        return AVERROR(EINVAL);



    tmp.log2_prec_width  =

    tmp.log2_prec_height = 15;



    tmp.csty = bytestream_get_byte(&VAR_0->buf);



    

    tmp.prog_order = bytestream_get_byte(&VAR_0->buf);



    tmp.nlayers = bytestream_get_be16(&VAR_0->buf);

    tmp.mct     = bytestream_get_byte(&VAR_0->buf); 



    get_cox(VAR_0, &tmp);

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

        if (!(VAR_2[VAR_3] & HAD_COC))

            memcpy(VAR_1 + VAR_3, &tmp, sizeof(tmp));

    return 0;

}

static int FUNC_0(Jpeg2000DecoderContext *VAR_0, Jpeg2000CodingStyle *VAR_1,
uint8_t *VAR_2)
{ Jpeg2000CodingStyle tmp; int VAR_3; if (VAR_0->buf_end - VAR_0->buf < 5)
return AVERROR(EINVAL); tmp.log2_prec_width  =
tmp.log2_prec_height = 15; tmp.csty = bytestream_get_byte(&VAR_0->buf); tmp.prog_order = bytestream_get_byte(&VAR_0->buf); tmp.nlayers = bytestream_get_be16(&VAR_0->buf); tmp.mct     = bytestream_get_byte(&VAR_0->buf); get_cox(VAR_0, &tmp); for (VAR_3 = 0; VAR_3 < VAR_0->ncomponents; VAR_3++) if (!(VAR_2[VAR_3] & HAD_COC))
memcpy(VAR_1 + VAR_3, &tmp, sizeof(tmp)); return 0; }