Alien-FreeImage
view release on metacpan or search on metacpan
src/Source/LibOpenJPEG/openjpeg.h view on Meta::CPAN
/* new output managment of the codestream information and index */
/**
* Tile-component coding parameters information
*/
typedef struct opj_tccp_info
{
/** component index */
OPJ_UINT32 compno;
/** coding style */
OPJ_UINT32 csty;
/** number of resolutions */
OPJ_UINT32 numresolutions;
/** code-blocks width */
OPJ_UINT32 cblkw;
/** code-blocks height */
OPJ_UINT32 cblkh;
/** code-block coding style */
OPJ_UINT32 cblksty;
/** discrete wavelet transform identifier */
OPJ_UINT32 qmfbid;
/** quantisation style */
OPJ_UINT32 qntsty;
/** stepsizes used for quantization */
OPJ_UINT32 stepsizes_mant[OPJ_J2K_MAXBANDS];
/** stepsizes used for quantization */
OPJ_UINT32 stepsizes_expn[OPJ_J2K_MAXBANDS];
/** number of guard bits */
OPJ_UINT32 numgbits;
/** Region Of Interest shift */
OPJ_INT32 roishift;
/** precinct width */
OPJ_UINT32 prcw[OPJ_J2K_MAXRLVLS];
/** precinct height */
OPJ_UINT32 prch[OPJ_J2K_MAXRLVLS];
}
opj_tccp_info_t;
/**
* Tile coding parameters information
*/
typedef struct opj_tile_v2_info {
/** number (index) of tile */
int tileno;
/** coding style */
OPJ_UINT32 csty;
/** progression order */
OPJ_PROG_ORDER prg;
/** number of layers */
OPJ_UINT32 numlayers;
/** multi-component transform identifier */
OPJ_UINT32 mct;
/** information concerning tile component parameters*/
opj_tccp_info_t *tccp_info;
} opj_tile_info_v2_t;
/**
* Information structure about the codestream (FIXME should be expand and enhance)
*/
typedef struct opj_codestream_info_v2 {
/* Tile info */
/** tile origin in x = XTOsiz */
OPJ_UINT32 tx0;
/** tile origin in y = YTOsiz */
OPJ_UINT32 ty0;
/** tile size in x = XTsiz */
OPJ_UINT32 tdx;
/** tile size in y = YTsiz */
OPJ_UINT32 tdy;
/** number of tiles in X */
OPJ_UINT32 tw;
/** number of tiles in Y */
OPJ_UINT32 th;
/** number of components*/
OPJ_UINT32 nbcomps;
/** Default information regarding tiles inside image */
opj_tile_info_v2_t m_default_tile_info;
/** information regarding tiles inside image */
opj_tile_info_v2_t *tile_info; /* FIXME not used for the moment */
} opj_codestream_info_v2_t;
/**
* Index structure about a tile part
*/
typedef struct opj_tp_index {
/** start position */
OPJ_OFF_T start_pos;
/** end position of the header */
OPJ_OFF_T end_header;
/** end position */
OPJ_OFF_T end_pos;
} opj_tp_index_t;
/**
* Index structure about a tile
*/
typedef struct opj_tile_index {
/** tile index */
OPJ_UINT32 tileno;
/** number of tile parts */
OPJ_UINT32 nb_tps;
/** current nb of tile part (allocated)*/
OPJ_UINT32 current_nb_tps;
/** current tile-part index */
OPJ_UINT32 current_tpsno;
/** information concerning tile parts */
opj_tp_index_t *tp_index;
/* UniPG>> */ /* NOT USED FOR THE MOMENT IN THE V2 VERSION */
/** number of markers */
OPJ_UINT32 marknum;
/** list of markers */
opj_marker_info_t *marker;
/** actual size of markers array */
OPJ_UINT32 maxmarknum;
/* <<UniPG */
/** packet number */
OPJ_UINT32 nb_packet;
/** information concerning packets inside tile */
opj_packet_info_t *packet_index;
} opj_tile_index_t;
/**
* Index structure of the codestream (FIXME should be expand and enhance)
*/
typedef struct opj_codestream_index {
/** main header start position (SOC position) */
OPJ_OFF_T main_head_start;
/** main header end position (first SOT position) */
OPJ_OFF_T main_head_end;
/** codestream's size */
OPJ_UINT64 codestream_size;
/* UniPG>> */ /* NOT USED FOR THE MOMENT IN THE V2 VERSION */
/** number of markers */
OPJ_UINT32 marknum;
/** list of markers */
opj_marker_info_t *marker;
/** actual size of markers array */
OPJ_UINT32 maxmarknum;
/* <<UniPG */
/** */
OPJ_UINT32 nb_of_tiles;
/** */
opj_tile_index_t *tile_index; /* FIXME not used for the moment */
}opj_codestream_index_t;
/* -----------------------------------------------------------> */
/*
==========================================================
Metadata from the JP2file
==========================================================
*/
/**
* Info structure of the JP2 file
* EXPERIMENTAL FOR THE MOMENT
*/
typedef struct opj_jp2_metadata {
/** */
OPJ_INT32 not_used;
} opj_jp2_metadata_t;
/**
* Index structure of the JP2 file
* EXPERIMENTAL FOR THE MOMENT
*/
typedef struct opj_jp2_index {
/** */
OPJ_INT32 not_used;
} opj_jp2_index_t;
#ifdef __cplusplus
extern "C" {
#endif
/*
( run in 0.449 second using v1.01-cache-2.11-cpan-5b529ec07f3 )