-typedef struct opj_tcp
-{
- /** coding style */
- OPJ_UINT32 csty;
- /** progression order */
- OPJ_PROG_ORDER prg;
- /** number of layers */
- OPJ_UINT32 numlayers;
- OPJ_UINT32 num_layers_to_decode;
- /** multi-component transform identifier */
- OPJ_UINT32 mct;
- /** rates of layers */
- OPJ_FLOAT32 rates[100];
- /** number of progression order changes */
- OPJ_UINT32 numpocs;
- /** progression order changes */
- opj_poc_t pocs[32];
- /** packet header store there for futur use in t2_decode_packet */
- OPJ_BYTE *ppt_data;
- /** used to keep a track of the allocated memory */
- OPJ_BYTE *ppt_buffer;
- /** Number of bytes stored inside ppt_data*/
- OPJ_UINT32 ppt_data_size;
- /** size of ppt_data*/
- OPJ_UINT32 ppt_len;
- /** add fixed_quality */
- OPJ_FLOAT32 distoratio[100];
- /** tile-component coding parameters */
- opj_tccp_t *tccps;
- /** number of tile parts for the tile. */
- OPJ_UINT32 m_nb_tile_parts;
- /** data for the tile */
- OPJ_BYTE * m_data;
- /** size of data */
- OPJ_UINT32 m_data_size;
- /** encoding norms */
- OPJ_FLOAT64 * mct_norms;
- /** the mct decoding matrix */
- OPJ_FLOAT32 * m_mct_decoding_matrix;
- /** the mct coding matrix */
- OPJ_FLOAT32 * m_mct_coding_matrix;
- /** mct records */
- opj_mct_data_t * m_mct_records;
- /** the number of mct records. */
- OPJ_UINT32 m_nb_mct_records;
- /** the max number of mct records. */
- OPJ_UINT32 m_nb_max_mct_records;
- /** mcc records */
- opj_simple_mcc_decorrelation_data_t * m_mcc_records;
- /** the number of mct records. */
- OPJ_UINT32 m_nb_mcc_records;
- /** the max number of mct records. */
- OPJ_UINT32 m_nb_max_mcc_records;
-
-
- /***** FLAGS *******/
- /** If ppt == 1 --> there was a PPT marker for the present tile */
- OPJ_UINT32 ppt : 1;
- /** indicates if a POC marker has been used O:NO, 1:YES */
- OPJ_UINT32 POC : 1;
+typedef struct opj_tcp {
+ /** coding style */
+ OPJ_UINT32 csty;
+ /** progression order */
+ OPJ_PROG_ORDER prg;
+ /** number of layers */
+ OPJ_UINT32 numlayers;
+ OPJ_UINT32 num_layers_to_decode;
+ /** multi-component transform identifier */
+ OPJ_UINT32 mct;
+ /** rates of layers */
+ OPJ_FLOAT32 rates[100];
+ /** number of progression order changes */
+ OPJ_UINT32 numpocs;
+ /** progression order changes */
+ opj_poc_t pocs[J2K_MAX_POCS];
+
+ /** number of ppt markers (reserved size) */
+ OPJ_UINT32 ppt_markers_count;
+ /** ppt markers data (table indexed by Zppt) */
+ opj_ppx* ppt_markers;
+
+ /** packet header store there for future use in t2_decode_packet */
+ OPJ_BYTE *ppt_data;
+ /** used to keep a track of the allocated memory */
+ OPJ_BYTE *ppt_buffer;
+ /** Number of bytes stored inside ppt_data*/
+ OPJ_UINT32 ppt_data_size;
+ /** size of ppt_data*/
+ OPJ_UINT32 ppt_len;
+ /** add fixed_quality */
+ OPJ_FLOAT32 distoratio[100];
+ /** tile-component coding parameters */
+ opj_tccp_t *tccps;
+ /** current tile part number or -1 if first time into this tile */
+ OPJ_INT32 m_current_tile_part_number;
+ /** number of tile parts for the tile. */
+ OPJ_UINT32 m_nb_tile_parts;
+ /** data for the tile */
+ OPJ_BYTE * m_data;
+ /** size of data */
+ OPJ_UINT32 m_data_size;
+ /** encoding norms */
+ OPJ_FLOAT64 * mct_norms;
+ /** the mct decoding matrix */
+ OPJ_FLOAT32 * m_mct_decoding_matrix;
+ /** the mct coding matrix */
+ OPJ_FLOAT32 * m_mct_coding_matrix;
+ /** mct records */
+ opj_mct_data_t * m_mct_records;
+ /** the number of mct records. */
+ OPJ_UINT32 m_nb_mct_records;
+ /** the max number of mct records. */
+ OPJ_UINT32 m_nb_max_mct_records;
+ /** mcc records */
+ opj_simple_mcc_decorrelation_data_t * m_mcc_records;
+ /** the number of mct records. */
+ OPJ_UINT32 m_nb_mcc_records;
+ /** the max number of mct records. */
+ OPJ_UINT32 m_nb_max_mcc_records;
+
+
+ /***** FLAGS *******/
+ /** If cod == 1 --> there was a COD marker for the present tile */
+ OPJ_BITFIELD cod : 1;
+ /** If ppt == 1 --> there was a PPT marker for the present tile */
+ OPJ_BITFIELD ppt : 1;
+ /** indicates if a POC marker has been used O:NO, 1:YES */
+ OPJ_BITFIELD POC : 1;